Android移动安全大纲

686 阅读3分钟

前言

当我们把自己的成果交给三方专业检测机构时,结果可能并不是那么的乐观,报告会告诉我们一些奇奇怪怪的漏洞。此系列文章,将会从一份检测报告,从0解决检测的漏洞问题。

此系列文章你将获得以下技能:

  • 安全检测报告构成
  • 源代码安全
  • 应用自身安全
  • 算法使用安全
  • 网络通讯安全
  • 数据交互安全
  • 数据存储安全
  • 组件安全
  • 恶意攻击防范能力
  • 应用运行其他可执行程序
  • 本地端口开发越权
  • so未使用地址空间
  • so未使用编译器堆栈保护
  • 应用root设备运行
  • 寄生推SDK云控
  • ZipperDown
  • 截屏攻击

移动安全检测主要分为:

  • 基本信息检测
  • 移动应用恶意行为检测
  • 移动应用安全规范检测
  • 移动应用漏洞和风险防范检测

我们主要对后俩者重点处理,前俩种简单了解。

一.基本信息检测

1.1 基本信息

企业微信截图_48666462-1403-4d82-9b6b-70d4e4697041.png

检测结果统计:

企业微信截图_c43fca01-5838-4a21-84a6-6df6fcd7345c.png

检测风险项占比:

企业微信截图_461be920-f534-4fee-80e1-383f3f826812.png

可以看到检测的风险类型比较多,而且危险指数也比较高。

1.2 加固壳识别

由于Android平台是基于java开发,所以导致Android应用很容易被反编译 ,进行二次打包成盗版。所以对应用进行加固是当前最有效的保护方案, 而现在加固厂商很多,加固的方案参差不齐,个别加固方案无法有效的防 止反编译工具的破解,甚至推掉加固壳拿到真实代码。现阶段比较可靠的 加固厂商有如下几家:娜迦安全加固、启明安全加固、绿盟安全加固、奇 虎360加固、阿里聚安全加固、腾讯乐固、梆梆安全加固、爱加密加固、百 度应用加固等。

由于各厂商通用的免费版本加固方案强度均比较低,很容易被脱壳破解, 无法有效防止应用被反编译脱壳破解,所以建议使用各厂商企业版定制加固方 案。

1.3 权限信息检测

此项检测会告诉developer程序中申请了哪些权限、并且会对权限进行描述、显示危害及危险等级、定位到具体使用此权限的位置,比较傻瓜式,所以developer可以根据报告重新审视是否有引入不必要的权限。

企业微信截图_8ebd3837-2882-4a41-8374-5147a79aead4.png

1.4 第三方SDK检测

对项目中引用的SDK进行分析、描述,developer可检查是否必要。

企业微信截图_fe442675-5c27-4bbf-8105-79319eca59a0.png

二.敏感词汇、函数

Android应用、第三方库AAR包、第三方库JAR包的代码中含有黄赌毒、暴 力、宗教、政治、人权等敏感词汇,会给应用拥有者带来法律责任,对其 声誉造成严重负面影响。

Android应用、第三方库AAR包、第三方库JAR包的代码中调用了包含敏感 行为的函数,包括发送短信、发送地理位置、拨打电话等,可能会导致用 户隐私数据泄露等风险。

总结

此篇文章列举了项目里的漏洞种类,并介绍了一些检测中的项目。接下来我们将会对具体的漏洞进行修复。