手动打造apk利用ANDROID-8219321漏洞(Master Key)绕过android签名校验


测试apk:

安卓读书
Ver:3.8.28(1236)
Package:com.jiasoft.swreader


下载地址:

http://gdown.baidu.com/data/wisegame/baeae6c8115d22fa/anzhuodushu_1236.apk


分析过程:

反编译目标apk,查看AndroidManifest.xml:

<application android:label="@string/app_name" android:icon="@drawable/icon" android:name=".MyApplication">


就在MyApplication的smali代码的OnCreate入口处添加打印log信息的代码:


    #debug by sing
    const-string v1, "TAG"
    const-string v2, "log by sing"
    invoke-static {v1,v2} ,Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
    #debug by sing


具体效果如图:



回编译成apk2,证明修改有效,安装并运行查看log信息输出:


说明修改成功。


注意下面操作:

把apk2包中的classes.dex文件添加到原目标apk包的原classes.dex的前面,使得最终生成的包为apk3,压缩包结构为:



重新安装修改后的apk3,运行后能够正常输出log信息:

运行界面正常:


如何利用及危害:

只要把目标classes.dex复制一份并修改,按照上述方法构造apk,即可绕过签名。


应用程序如何保护自身:

自己代码内部做签名校验、Hash值校验等。



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

asmcvc

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

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

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

打赏作者

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

抵扣说明:

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

余额充值