0%

脱壳学习

ESP定律

初学脱壳,之前学习了反汇编的知识,开始学习脱壳

最初接触的脱壳比较好用的就是ESP定律脱壳,方法比较简单,在ESP的值改变的时候给ESP下硬件的一个断点,比较方便的是:
ESP断点
我们点击运行,之后他一一般会断下,之后就会看到一些跳转,这些跳转中比较重要的是jmp跳转,jmp跳转之后我们但不跟过去,一般就是可以跳到我们的OEP位置
ESP断点
这个时候可能会有向上的跳转,我们不分析太细节的话呢,我们直接在jmp上下断点,运行,让他直接到jmp,之后就会跳到OEP,主要要关注的是否是跨区段的跳转,如果是跨区段的跳转,并且跳转的结束位置是我们的代码区块,那么一般就到我们真正的OEP,但是可能出现OD将这段代码误认为ASCII码,所以我们需要删除分析或者分析代码,效果图如下:
ESP断点

Dump出脱壳文件

这里可以简单的使用OD带的插件,如果不行的话呢用import REC,再不行我们就手动修改IAT使用loadPE,这里这个小程序我们使用OD的插件就可以了,具体操作如下:
ESP断点
这里注意,如果我们插件不行的话呢,我们需要取消勾选重建输入表,目的是为了我们能够在其他工具中重新建表,这样子生成的文件我们就能够方便调试了。