background image
Android app 安全性能测试
1.安装包测试
(1)能否反编译代码(源代码泄露问题):
开发:对代码进行混淆;测试:使用反编译工具进行查看源代码,是否进行代码
混淆,是否包括了显而易见的敏感信息
(2)安装包是否签名(ios 重 app 有正式的发布证书签名,不必考虑):需要在发
布前验证一下签名使用的 key 是否正确,以防被恶意第三方应用覆盖安装
(3)完整性校验:检查文件的 md5 值
(4)权限设置检查(增加新权限需要进行评估):android 检查 manifest 文件读
取应用所需的全部权限
2.敏感信息测试
(1)数据库是否存储敏感信息:需要对各个数据库字段含义进行了解,并评估
其中可能的安全问题;在跑完一个包含数据库操作的测试用例,我们可直接查看
数据库里的数据,观察是否有敏感信息需要在用户进行注销操作后删除,若师是
cookie 类数据,建议设置合理的过期时间。
(2)日志中是否存在敏感信息:若发布版本中包含日志应用,在测试需要关注
日志中是否包含敏感信息。
(3)配置文件是否存在敏感信息(与日志相似)
3.软键盘劫持:金融 app 登陆界面的用户名密码输入框,看是否输入支持第三方
输入法。对于非常敏感的输入,一般建议使用应用内的软键盘或至少提供用户这
一选项;
4.账户安全(用户账户的安全)
(1)密码是否明文存储:在后台数据库:在评审和测试中需要关注密码的存储
(2)密码传输是否加密:需要查看密码是否被明文传输
(3)账户锁定策略:对于用户输入错误密码次数过多的情况,一些应用将会临
时锁定;后台对每个账户做次数限制可能会引起所有账号都被策略锁定。
(4)同时会话:应用对同时会话会有通知功能;