Android环境下APP完整性检查

APK应用完整性概述

APK应用完整性即移动客户端程序安装后,在每次启动时都会对自身文件进行完整性进行校验。防止攻击者通过反编译的方法在客户端程序中植入自己的木马,客户端程序如果没有自校验机制的话,攻击者可能会通过篡改客户端程序窃取手机用户的隐私信息。

APK应用完整性检查

1、使用Apktools反编译APK文件

反编译后的结果

2、修改编译后的文件

这里可以选择修改smali文件或者修改图片内容,这里选择修改smail文件

修改的策略:

a、修改图片(可以替换图片、修改图片内容,但是要保持后缀名相同)
b、修改Smail文件(添加Smail代码,例如静态变量、函数等等,或者修改原有的smail代码,但是要注意修改的内容)

3、重新打包

注:如果此处打包不成功,说明存在完整性校验,如果打包完成则需要跟进一步的测试来确定是否真的存在完整性问题。

4、签名

本地密钥库的生成以及签名的具体命令可以参考:https://blog.youkuaiyun.com/Fly_hps/article/details/81366352
本地密钥库生成参考:https://blog.youkuaiyun.com/Fly_hps/article/details/83583323
APK签名完成:https://blog.youkuaiyun.com/Fly_hps/article/details/83583717

5、完整性验证

在Android模拟器或者测试机上面安装该APP,看是否可以成功安装,如果可以成功安装则说明存在“完整性校验问题”,如果不能安装成功,则说明不存在“完整性问题”。

至此,APP的完整性测试完成!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FLy_鹏程万里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值