判断程序调用了native层函数的一点思路
今天又一次温习了鸭子大神的《教我兄弟学Android逆向08 IDA爆破签名验证》,地址:https://www.52pojie.cn/thread-732955-1-1.html
看到有网友询问如何判断知道程序调用了native层函数check?大神的解释很简单:通过分析java层知道。但是没有说
分析哪里的java源程序。可能很多新人朋友就找不到。我今天在用AS调试时,发现一种方法。分享出来。个人观点,
大神多指点哈,谢谢哈。
安装例子中提供的黑宝宝。
打开AS。进入调试模式。方法以前写的帖子里有,这里不多说,注意端口别设置错了,注意adb shell命令的参数别错
了即可。
以前说过,onclick是点击事件,所以找到后,在开头处下个断点。
点击我们的小虫子开始调试。
程序自动运行。
随便输入,点击登录,可以看到程序已经被断下来了。
设置好要监控的数据,我直接就从0到9都监控了。
一次次按下F8,慢慢走。可以看到我们输入的数据都显示出来了。继续走。
看到显示“登录失败”字样了。v1返回值直接显示失败。
那就看看哪里调用了check。在这里是demo2/jni/com/myapplication/myJNI。
我们在ak中打开。
查看源码。很明显了。可以判定调用了jnitest。
然后根据鸭子大神的教学用IDA修改so即可。
大佬牛逼 现在只有极少数so改跳转能过验证的,真的很少…… 那么问题来了check你从哪看到的:lol asd5478 发表于 2020-4-18 22:13
那么问题来了check你从哪看到的
看图吧。。。
417788939 发表于 2020-4-18 21:21
现在只有极少数so改跳转能过验证的,真的很少……
确实是.日常中非常少,今天这个是我看鸭子帖子时瞎摆弄出来的。
页:
[1]