From:霸哥磁力搜索apk 过签名校验:https://www.cnblogs.com/LuLuLuHao/p/12863978.html
霸哥磁力搜索app回编签名:https://www.ssfiction.com/archives/2293 https://www.cnblogs.com/LuLuLuHao
哔哩哔哩( IDA 分析 so ,函数参数分析 ):https://www.bilibili.com/video/BV1UE411A7rW?p=62
1. 打开AndroidKiller 将“霸哥磁力搜索”进行反编译
2.放进模拟器发现
出现这种情况有可能就是出现了签名校验,或者改错位置了。。。
一打开就出现崩溃,说明签名校验 在 入口点 或者 入口页面。OnCreate 方法
3.打开 “ddms” 查看报错原因
没发现什么可疑信息
4.发现 apk 在打开主界面前就崩了 用 jadx-jui 看看 apk 的 oncreate() 方法,查找线索
点进去查看
发现一大堆 不管它了 直接把方法注释掉看看
5.先搜索关键点 再注释掉 回编译看看效果
现在能进去了 但界面看起来怪怪的(说明qian()这个方法还是有效果的)再接着往下看
6. 看到run()方法 run不就是运行吗? 运行不起来八成是它搞的鬼 看到有个bug()方法很可疑
7.不管了 先把它注释掉 再说
8.发现越改越糟糕了
9.重新来
发现 bug 被 native 修饰 直接看 So
发现方法 getSignHashCode() 特别扎眼 点进去看一下
10. 一看杂乱无章 自己给他转换一下
(导入jni.h头文件 推测 getSignHashCode()方法参数 不被static修饰:env,obj;被static:env,class;)
签名三兄弟:getPackageManager、getPackageInfo、getPackageName、( singnatures )
11.一目了然 48行 这个exit(0)特别扎眼 直接把它nop掉试试
nop 掉
但是我们直接用 ida nop 是没用的 得要使用一个工具 “winhex”
12.然后保存 替换
13.完美