APP安全检测要检测哪些内容?
2021/09/18

本文跟大家分享一下移动安全的检测内容,根据移动端的一些特性,我们规划了以下内容,分为两大部分,包括前端的App和后端的Server。


安全测试工具


前端的检测内容包括:组件安全测试,如Andriod系统的四大组件Activity、Service、Content Provider、Broadcast Receiver等安卓特有的组件的安全特性。


访问控制有效性测试,包括权限控制,可以去查找一些有没有越权的问题,像纵向越权、横向越权。


应用发布安全测试,发布这个版本到生产环境,发布前有没有关闭一些调试信息?一些不需要的详细的日志有没有关闭?


业务安全测试,针对app一些具体的业务进行安全风险分析,业务的逻辑上有没有安全风险?流程上有没有一些安全问题?


代码安全测试,像我们一些开发方,拥有app或小程序的一些源代码,我们可以针对这些源代码进行安全检查。现在也有一些主流的安全漏扫工具,像Fortify。另外一种情况,没有源代码,只能拿着app去进行反编译,针对反编译后的源码进行一个安全分析。


Fortify SCA是一款业内排名靠前的静态应用程序安全性测试 (SAST) 产品,可分析源代码,检测安全漏洞,帮助开发人员更快更简单地识别问题并排定问题优先级,然后加以解决。扫描文章最底部二维码,可以申请免费试用。


通信安全检测,包括通信的完整性、加密性这块。


数据安全检测,数据的传输和存储,有没有明文地传输敏感数据?有没有明文地存储敏感数据?


会话安全检测,有没有会话固定的相关漏洞?会话有没有一些超时时间?


以上是前端App这块的检测内容,后面我们会再展开详细分析。后端的Server检测内容主要有身份认证测试,权限控制测试,数据安全测试,业务安全测试,接口安全测试,架构安全测试,安全审计测试这些方面。这里我们就不展开详细一一介绍了。针对server端的检测类似web系统或C/S系统的安全测试,可以参考PC端的安全检测进行。


针对以上这些检测内容,我们做了一个更细的分类。


数据安全

数据录入、数据传输、数据存储、数据访问与输出


访问控制

不合理用户授权、非法授权访问、权限限制绕过、通信安全、通信保密性、通信完整性


个人隐私信息保护

个人信息收集、个人信息保存、个人信息使用、个人信息共享、转让、公开披露


会话安全

会话一致性、会话超时、会话清除、会话并发连接会话持续性


代码安全

输入过滤、组件安全、逻辑缺陷、APK反编译、dex反汇编


业务安全

业务逻辑安全、业务数据篡改、业务权限漏洞、业务接口调用


应用发布安全

签名信息验证、调试接口检查、测试代码过滤、遗留敏感信息检查