android 安全性测试,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)同时会话:应用对同时会话会有通知功能;

(5)注销机制:客户端注销后,需要验证任何的来自该用户身份验证的接口调用都不能调用成功

5.数据通信安全

(1)关键数据是否散列或加密:敏感信息在传输前需要进行散列或加密。

(2)关键连接是否使用安全通信:在获知接口设计后需要评估其中内容是否包含敏感信息。

(3)是否对数字证书合法性进行验证:fiddle工具模拟中间人攻击方法

(4)是否验证数据合法性

开发:对数据进行数字签名并在客户端进行相关校验

测试:可模拟后台返回进行相关测试工作

(5)组件安全测试(android被外部应用恶意调用)测试:drozer工具

6.环境相关测试

(1)干扰测试:a收到电话 b收到短信(考虑通知栏消息是否覆盖掉界面上信息) c收到通知栏消息 d无电低电量提示框弹出 e第三方安全软件告警框 弹出

(2)权限测试:开发在提测时提供一个需要的权限列表

(3)边界情况:a可用存储空间过少 b没有SD卡/双SD卡 c飞行模式 d系统时间有误 e第三方依赖

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值