前面的文章中我们为大家介绍了APP安全测试主要测试的内容包括安全合规、客户端安全和敏感信息安全这三部分,本文我们针对APP安全合规性测试怎么做展开介绍。
上面是我截取的今年9月份网信办对APP或SDK的一个问题通报。在这份通报中较以往有一个比较大的变动,对SDK也进行了通报。这个变化对安全测试工程师来说是一个比较大的挑战。
我们自研的APP,测试起来相对会比较容易,调整和修改起来也会比较容易。如果我们的APP中集成了第三方的SDK,就会对我们的测试和问题修复带来极大的挑战。
所涉及的问题非常多,但大致在我们前面说的这几类的范围之内,过度索取权限、违规收集用户信息等。
上图我只是截取了通报的一小部分,实际上问题是非常多的,总结下来,比较重要的主要有以下三类:
隐私政策未明确收集信息
在APP中用户信息的收集是否和隐私政策同步,明确信息收集的范围和目的。
我们现在的APP中都会关联隐私政策,这个是合规性的要求。在测试的过程中,需要明确APP收集了哪些信息,测试验证这些信息在隐私政策中是否同步,是否有明确的收集目的。
强制过度频繁索取权限
App安装和运行时,向用户索取与当前服务场景无关的权限;在用户明确拒绝权限申请后,频繁弹窗、反复申请与当前服务场景无关权限的行为;未及时明确告知用户索取权限的目的和用途。
sdk中是否存在违法收集信息
在APP中集成的第三方sdk是否有收集用户信息,是否有在隐私政策明确收集的范围和目的。现在APP中都会集成非常多的SDK,这些SDK很多时候都会成为合规性问题的定时炸弹。
我们需要明确这些安全合规的要求,才能针对这些合规性政策进行安全测试。接下来我们就一起看一下,这几个合规性测试有哪些可以进行验证的点。
1、安装APP,手动验证测试拒绝给予app权限,是否存在不提示直接使用或频繁弹窗申请权限。
如果拒绝给予权限后,APP直接使用权限或频繁弹窗,就需要我们记录下来,将问题反馈给研发人员进行修复。
2、反编译在AndroidManifest.xml文件中查看申请的权限和获取的敏感信息是否有和隐私政策同步。
验证权限和弹窗触发场景,我们需要掌握APP申请了哪些权限,在测试的时候可以针对APK进行反编译,在 AndroidManifest.xml 文件中存储的都是权限的申请信息和相关隐私政策的一些信息。我们在测试的时候就需要对这些权限信息进行过滤和排查,是否用到了一些 audio 权限。如果有 audio 权限,我们需要特别注意,这些权限的使用是否符合合规性要求。是否收集了一些电话等个人信息,是否有频繁的获取,这些都是需要我们特别注意的,需要进行验证和确认。
3、第三方共享清单和app中的sdk的收集信息是否合理。
前面我们一起看了反编译的AndroidManifest.xml 文件,怎么确认我们使用的SDK里面是否同步。现在应用里面都要求将第三方共享清单列出来,我们可以将第三方共享清单和反编译后的文件一一对应,进行验证,看是否有遗漏和错误。
以上就是我们为大家介绍的APP安全合规性测试怎么做,后面的文章会继续为大家介绍客户端安全测试和敏感信息安全测试,欢迎大家继续关注。
(谢绝转载)