安卓逆向-绕过签名验证
使用AndroidKiller进行重编译该软件

发现签名失败
搜索关键字:signatures

找到该文件函数点:qian()

反编译观察java代码:

可以看到在if里面进行了一判断,判断sing值是否正确,若不是,则Toast.makeText强行爆出错误
所以我们可以尝试将报错弹窗的代码注释掉:


可惜还是不行
我们继续向上翻:

看到onCreate函数:
发现调用了qian函数,但是我们进行了注释,所以不会有影响
继续向下看

这里发现也有报错弹窗代码,并且调用了bug函数:
所以我们将onCreate函数里的Toast.makeText也给注释掉


可惜还是不行:
于是更进bug函数看看情况:

发现是so层的代码
用压缩包打开apk

找到so文件

拖到ida里面,点击exports搜索java

按下F5转换成java代码

发现只有一个函数,更进观察:

导入java的头文件jni.h,进行修改


分析代码:

可以看到在if中最后会进行值的验证,如果不相等直接exit()
按下TAB键转换成汇编:

找到对应的代码,内存地址为:D0E
用winhex打开:


和ida里的hex对比一致即可:

我们讲exit行的代码全部置空:

最后保存,替换文件即可


浙公网安备 33010602011771号