安卓逆向分析笔记---004
本帖最后由 什么都只会一点 于 2019-3-15 22:57 编辑这次是签名验证,这跨度也太大了叭,尝试一下
【所需工具】ApkIDE
【用例下载链接】链接:https://pan.baidu.com/s/1CkLCSsE2WK7KnAUGdne2vg提取码:u1xr
【开始操作】
同样的,将APK拖入ApkIDE里面,我们知道,程序运行的时候首先就会进行签名验证,所以签名验证信息一般在第一启动类,我打开AndroidManifest.xml文件
根据路径我找到了对应的smali文件,点击查看Java源码,出问题了
出现的Java源码全是注释,找人问了下,别人说是转换失败了,我用手机MT管理器查看源码转换成功了,所以这张图片是手机的
可以看到,上面全是一些算法(可以忽略),第60行有个if判断,判断的值应该是最终的结果,我们只要修改这里应该就可以进入APP了,转到smali文件这边,找到这里
修改这里的判断使它直接向下走,安装APP,还是闪退,emmmmm再去看看Java源码,emmmmmm,没找到地方,算了,来点爆破修改,将26行后面的全删掉,直接return,说做就做
可以看到从这行开始,刚好到setContentView
将setContentView后面全删掉,自己输入return-void和.end method,手机试验一下,可以进入界面,去除签名验证成功!
总结:找不到签名验证修改的关键点可以将整个功能都删掉
没有找到修改的关键点,只能用这种粗暴的方式解决问题了,很遗憾!
-----------------------------------------------------------------------------------------------
安卓逆向分析笔记---005:https://www.52pojie.cn/thread-899796-1-1.html charm01 发表于 2019-3-13 20:49
删了算法,功能会受影响吗
这个不能明确的说,主要还是看软件,不同的软件结构不一样,改法也就有简单有难,有些软件改了不受影响,有些软件则不行,可能会在其他地方调用到你删除的地方,然后就会影响功能。 dreamlivemeng 发表于 2019-3-15 18:29
怎么再次签名运行呢?
我用的手机mt管理器改的,电脑工具方便分析,找到关键地方了,我就换手机直接改那里,然后用mt管理器签名的 感谢分享,支持一下
感谢分享,支持一下 支持一下,感谢分享。。 刚好有需求,感谢分享。。
学到了,感谢分享 以前只要出现的Java源码是注释時,我都以為是作者的保護方法,原來可用 MT 玩開來,
謝謝樓主的教學。 学习了楼主 谢谢分享
学习了楼主