浅谈安卓逆向月报(1)- 抖音 - ida - native层F5伪代码堆栈平衡修复

这章主要聊聊如何修复可以F5伪代码

以最新的抖音840的so为例,这边仅仅说下如何修复F5,解决“positive sp value has been found”错误提示。

后续的我也没深入跟进,写这篇文章仅为方便自己日后查阅。

首先inline_hook确定RegisterNatives函数地址

 

浅谈安卓逆向月报(1)- 抖音 - ida - native层F5伪代码堆栈平衡修复_第1张图片

leviathan地址为0x4e1c1

IDA 按F5会提示“4E24E positive sp value has been found”

浅谈安卓逆向月报(1)- 抖音 - ida - native层F5伪代码堆栈平衡修复_第2张图片

我们找到4E24E处 

浅谈安卓逆向月报(1)- 抖音 - ida - native层F5伪代码堆栈平衡修复_第3张图片

打开工具栏的options->general

浅谈安卓逆向月报(1)- 抖音 - ida - native层F5伪代码堆栈平衡修复_第4张图片

勾上stack pointer,这时候如图所示:

浅谈安卓逆向月报(1)- 抖音 - ida - native层F5伪代码堆栈平衡修复_第5张图片

找到负数上面一个,选中按ATL+K,改为跟负数一样的值

浅谈安卓逆向月报(1)- 抖音 - ida - native层F5伪代码堆栈平衡修复_第6张图片

再按F5

浅谈安卓逆向月报(1)- 抖音 - ida - native层F5伪代码堆栈平衡修复_第7张图片

伪代码出来了。

不过讲真我没跟进去,这个看了就头疼,参数驴头不对马嘴,真要花大精力,最后还有一个jumpout,看了就不想研究。今天刚搞定了低版数美设备ID,过阵子浅谈一下。

android逆向交流QQ群:290081995,这个行业比较封闭,让我们共同进步。转载请保留版权。

你可能感兴趣的:(汇编,android)