我们接着上一篇 ”简单脱壳教程笔记(2)---手脱UPX壳(1)“继续。我们说了UPX我们可以使用四种方式,上一篇已经详细的讲解了单步跟踪法,接下来,我们讲解其他方式。
方法2:ESP定律法
ESP是我们的是一个寄存器,当程序使用pushad命令入栈的时候,只会让esp突变,根据堆栈平衡的原则,我们就可以找到OEP了。操作:
1、找到关键句的下一句,将程序运行到此处,我们此处的关键代码就是pushad,将程序执行到下一句,就会发现ESP突变。
2、然后在命令行窗口中使用命令进行设置断点
可以在ESP上右键,选择在数据窗口中跟随,也可以使用dd 或 hr
dd XXXXX 转存在堆栈格式
hr XXXXX 访问时进行硬件中断