安装包-安全测试

主要说明以下内容:

1、能否反编译代码

2、安装包是否签名

3、完整性校验

4、权限设置检查

反编译代码:移动应用发布出去后最终用户获得的是一个程序安装包,我们需要关注的是用户能否从这个安装包中获取项目的源代码,从安全方面考虑,程序开发人员是否会在程序源代码中硬编码一些敏感信息,如密码等。常用的反编译方法是使用dex2jar工具并结合jd-gui工具(java的反编译工具)查看源代码。(一般是正式发布的时候才看,测试环境代码混淆了日志不好查看)

1、下载dex2jar和JD-GUI,在参考资料中添加了这两个工具的百度网盘下载地址供读者下载使用

2、找到我们准备测试用的apk,并将 后缀.apk改为.zip

3、将test.zip解压,并查看目录,找到classes.dex

4、并将这个文件拷至dex2jar工具存放目录下

5、打开控制台,使用cd指令进入到dex2jar工具存放的目录下,如图

6、进入到dex2jar目录下后,输入“dex2jar.bat classes.dex”指令运行 执行完毕,查看dex2jar目录,会发现生成了classes.dex.dex2jar.jar文件

7、上一步中生成的classes.dex.dex2jar.jar文件,可以通过JD-GUI工具直接打开查看jar文件中的代码

被混淆过的class反编译后的效果图(类文件名称以及里面的方法名称都会以a,b,c....之类的样式命名):

安装包是否签名:IOS系统不必太考虑这些问题,因为IOS每一个App发布出来都有一个正式的发布证书来签名,发布到App Store 时,App Store会做校验,保证APP是合法的开发者发布出来的。对于Android来说,发布的渠道多样,没有此类权威检查,我们需要验证下签名使用的Key是否正确,以防被第三方应用恶意覆盖安装,我们可以使用一下命令检查: jarsigner -verify -verbose -certs apk包路径 如果运行后,显示 jar已验证,说明签名校验成功

完整行校验:为确保安装在测试过程到发布过程中因为各种问题导致文件损坏,需要对安装包做完整性校验,通常做法是检查文件的MD5值,一般通过自动化测试校验.

关注下方软件测试二维码,获取更多免费学习视频和技术干货

iOS安装包安全测试是为了保证应用程序在用户设备上的安全性和稳定性。下面是一些常见的iOS安装包安全测试项目: 1. 恶意代码检测:通过对安装包进行恶意代码扫描和分析,以确保应用程序没有包含恶意代码,以防止对用户设备和数据的攻击。 2. 代码完整性检查:通过验证应用程序的代码完整性,以确认它们没有被篡改或修改,从而保证应用程序没有被恶意攻击者植入恶意代码或后门。 3. 权限验证:检查应用程序在安装和运行请求的权限是否合理和符合规范,以防止应用程序滥用用户设备的权限,例如未经允许地访问联系人、位置信息等。 4. 数据保护检查:检查应用程序对用户数据的保护措施,包括使用正确的加密算法、安全存储用户数据、合理处理敏感信息等,以确保用户数据的安全。 5. 漏洞扫描:通过对应用程序进行漏洞扫描,发现和修复安全漏洞,以防止黑客利用这些漏洞进行攻击,例如XSS跨站脚本、SQL注入等。 6. 安全通信检查:确保应用程序与服务器之间的通信采用安全的协议和加密算法,以防止通信过程中的信息泄露或中间人攻击。 7. 安全认证和授权:检查应用程序的认证和授权过程,以确认只有合法用户才能访问和使用应用程序的功能和数据。 通过进行这些安全测试,可以及发现和修复应用程序的安全问题,保护用户设备和数据的安全,确保用户能够安全地使用应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值