随着科技的发展,现在移动APP的功能也越来越多、越来越强大。各种各样智能APP为我们工作和生活带来便捷的同时也存在着很多安全性风险。小编特别邀请我们赛博团队信息安全赛博南大神,为大家带来APP安全评估系列技术干货~本系列涵盖多个专题,今天就与大家分享专题一:APP安全评估系列之敏感数据暴露
明文传输用户名、密码和验证码等敏感信息
** 整改优先级:高 **
问题描述:
用户登录过程中,在与服务器端交互时明文传输用户名、密码或者验证码等,可导致用户敏感信息泄露。
检查方法和步骤:
1. 对模拟器进行设置:从Setting开始设置依次选择more —Mobile networks —Access Point Names—TelKila —Proxy:修改IP地址为虚拟机的IP地址。
2. BurpSuite设置:
在Proxy选项页里的Options中进行设置,在Proxy Listeners中增加虚拟机IP地址的8080端口
3. 利用BurpSuite对被测应用进行监听:
确保Burp Suite上的“intercept is on(监听是打开的)”,然后点击登陆。登陆请求将被Burp Suite监听拦截到
检查工具:
BurpSuite等抓包分析工具
整改建议:
在被测应用与服务器交互过程中,对用户名、密码和验证码等敏感信息进行加密传输。
不安全的本地存储
** 整改优先级:高 **
问题描述:
安卓开发者使用多种方法将数据存储在安卓应用中,而存储在本地的数据文件如果未加密,易造成敏感信息泄漏。
检查方法和步骤:
1. Shared Preferences是用key-value来存储私有的原始数据的xml文件:
数据类型有布尔型,浮点型,整形,长整型和字符串。
通常情况下存储的路径为:
直接打开查看是否有敏感数据。
2. SQLite数据库是轻量级基于文件的数据库:
这些文件通常以db或者sqlite结尾。安卓默认提供了大量SQLite支持。
应用的数据库一般存储在下面的地方:
可以使用SQLite数据库直接打开查看是否有敏感数据。
3. 检查SD卡目录中是否存在敏感数据
检查工具:SQLite数据库
整改建议:对存储在本地的数据文件进行加密
泄漏后台服务器地址,导致服务器可控
** 整改优先级:高 **
问题描述:
在使用BurpSuite等工具对应用进行监听的过程中,发现后台服务器地址。对后台服务器进行测试,若后台服务器存在漏洞,则可控制后台服务器。
检查方法和步骤:
1. 利用BurpSuite对被测应用进行监听。确保Burp Suite上的“intercept is on(监听是打开的)”。对监听到的数据包进行查看,是否有后台服务器地址。
2.如果发现后台服务器地址,则对其进行安全测试,检查其是否存在SQL注入、struts2等后台服务器漏洞。
检查工具:
BurpSuite、SQL注入检查工具、struts2漏洞检查工具
整改建议:
对后台服务器进行安全加固, 后台服务器需要按照中国移动相关安全规定进行配置,注意口令强度,后台配置页面原则上不能由公网随意访问等
边信道信息泄漏
**整改优先级:中**
问题描述:
当APP处理用户或其它数据源输入的数据时,可能会把数据放在不安全的位置,容易导致边信道被攻击者利用造成信息泄露。
检查方法和步骤:
1. Android提供的日志功能是一个会造成信息泄露的地方,日志一般是开发者在开发期间调试使用的。查看日志的方式有两种:
a. 使用Eclipse:在Logcat选项卡中看到应用运行期间输出的所有日志信息,其中可能就会有一些敏感信息。
b. 使用adb:使用命令# adb logcat在终端中打印出所有的日志。通过logcat的选项来过滤感兴趣的内容。或者通过命令#adb logcat > output.txt,将日志保存到电脑本地,以便后期进一步分析。
URL缓存和浏览器Cookie对象:
基于web的应用程序会产生URL,cookie和缓存等泄露,允许攻击者劫持用户的会话。这样的缓存可能存在日志,流量历史,浏览缓存等多种形式。使用命令#adb logcat|grep “cookie”可以从logcat的输出中过滤出诸如cookies等敏感信息。
检查工具:
Eclipse、ADB
整改建议:
a. 在日志中对于密码等敏感信息进行加密存储。
b. 对敏感信息的缓存进行加密。
看完赛博南大神的分享是不是对于APP安全评估有了新的见解呢~若您还觉得意犹未尽,我们还为您准备了APP安全评估系列之鉴权机制缺陷、钓鱼劫持风险等专题,我们将在近期通过赛博星人公众号推出,请持续关注我们呦~
小编/赛博南,赛博克里斯,赛博慧
本文始发于微信公众号(赛博星人):【技术】APP安全评估基础篇——敏感数据暴露
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论