-
-
[原创] 破解微信反二次打包dex文件校验
-
发表于:
2018-1-18 15:08
13213
-
需要java运行时环境
一: 先学习使用ShakaApktool
http://blog.csdn.net/guiguzi1110/article/details/44983169
二:反编译微信
微信下载地址 http://dldir1.qq.com/weixin/android/weixin661android1220_1.apk
用命令行 java -jar "ShakaApktool.jar" dweixin661android1220_1.apk (注意参数"ShakaApktool.jar" d )
三:注释掉文件校验代码
用文本搜索工具 搜索字符串 "extract dex waiting for verify lock cost %dms on file: %s"
向下搜索 Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z (这个是比较apk里的dex文件MD5值的因为二次编译以后dex文件的目的值会变)
会看到有一行 if-eqz v2, :cond_2 这个就是如果md5值不一样就执行cond_2 的代码;只要 把v2这个寄存器的值在比较之前设置为非零就可以了
我这边就 把 const v2, 0x19000 放到 if-eqz v2, :cond_2 这句前面就可以了
四 编译修改后的微信;
用命令行 java -jar "ShakaApktool.jar" b weixin661android1220_1 (注意参数"ShakaApktool.jar" b )
五:效果图
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课