我们在讲“移动互联网安全性测试技术”之前,先来了解下移动互联网安全测评服务!它的整个生命周期包含安全检测、安全评估、安全加固和APP发布渠道监测。
- 安全检测
对象:所有待上线的APP
目标:防止恶意软件流入应用市场
内容:对APP进行安全性检测,检测APP是否存在病毒、木马等恶意代码 - 安全评估
对象:对安全性要求较高的APP
目标:发现通过APP给业务带来的安全风险
内容:对APP进行安全性评测,评测APP和业务流程是否存在安全风险和漏洞 - 安全加固
对象:所有待上线的APP
目标:对APP进行二进制级别的保护,防止被非法修改,防止被插入恶意代码等
内容:对APP安装包进行安全加固和封装,防止被非法破解、篡改和盗版等 - APP发布渠道监测
对象:所有待上线的APP
目标:监测APP的被盗版和修改的现状情况等
内容:监测与APP相关的发布渠道,监测app被盗版和篡改的情况
接下来,我们再来看看移动互联网安全性测试有哪些技术手段?
- 传输安全
- 明文流量
- 不当的会话处理
- 正确验证SSL证书
- 编译器的保护
- 反破解保护
- PIE编译
- 用stack cookies编译
- 自动引用计数
- uiwebviews
- 数据验证(输入,输出)
- 分析UIWebView的实现
- 不安全的数据存储
- SQLlite数据库
- 文件缓存
- 检查属性列表文件
- 请检查日志文件
- Logging
- 自定义日志
- nslog报表
- 崩溃报告文件
- 二元分析
- 分解应用
- 检测的汇编代码保护混淆
- 检测防篡改保护
- 检测反调试保护
- 协议处理程序
- 客户端注入
- 第三方的库
最后,我们来了解下APP常见漏洞与风险:
- 静态破解
通过工具apktool、dex2jar、jd-gui、DDMS、签名工具,可以对任何一个未加密应用进行静态破解,窃取源码。 - 二次打包
通过静态破解获取源码,嵌入恶意病毒、广告等行为再利用工具打包、签名,形成二次打包应用。 - 本地储存数据窃取
通过获取root权限,对手机中应用储存的数据进行窃取、编辑、转存等恶意行为,直接威胁用户隐私。 - 界面截取
通过adb shell命令或第三方软件获取root权限,在手机界面截取用户填写的隐私信息,随后进行恶意行为。 - 输入法攻击
通过对系统输入法攻击,从而对用户填写的隐私信息进行截获、转存等恶意操作,窃取敏感信息。 - 协议抓取
通过设置代理或使用第三方抓包工具,对应用发送与接收的数据包进行截获、重发、编辑、转存等恶意操作。
特此声明:大家在学习实践过程中,请遵守相关互联网法律法规,不要做违法违规行为!