破解入门(六)-----实战“内存镜像法”脱壳

内存镜像法的步骤

1)用OD打开软件

2)点击选项——调试选项——异常,把里面的忽略全部√上。CTRL+F2重载下程序

3)按ALT+M,打开内存镜象,找到程序的第一个.rsrc.F2下断点,然后按SHIFT+F9行到断点,接着再按ALT+M,打开内存镜象,找到程序的第一个.rsrc.上面的代码段.text(或者CODE)(也就是00401000处),按F2下断点。然后按SHIFT+F9(或者是在没异常情况下按F9),直接到达程序OEP

实战

1查壳

PEID查壳的结果如下图,可以看出程序加了ASPack2.12的壳

破解入门(六)-----实战“内存镜像法”脱壳

2寻找OEP

(1)用OD载入该程序

破解入门(六)-----实战“内存镜像法”脱壳

(2)依次选择OD选项(T)下的调试设置(D)子选择,弹出如下对话框,切到异常选项卡,将忽略下的子项全部勾上

破解入门(六)-----实战“内存镜像法”脱壳

(3)Ctrl+F2重新载入要脱壳的程序,Alt+M打开内存镜像,找到程序的第一个.rsrc. F2下断点,按下F9运行程序

破解入门(六)-----实战“内存镜像法”脱壳

(3)再按ALT+M,打开内存镜象,找到程序的第一个代码段.rsrc.上面的.text,按F2下断点, 按下F9运行程序

破解入门(六)-----实战“内存镜像法”脱壳

(3)直接到达OEP

破解入门(六)-----实战“内存镜像法”脱壳

注:有时候在给软件脱壳,千心万苦找到了OEP,却发现不是常见的“pushebp”,而是出 现如下图这种情况,其实这是OD将这段代码当做数据了没有进行反汇编识别,解决方 法是,选中一行右键选择“分析”菜单,选择“分析”下的“分析代码”,OEP就会出 现在眼前了

3脱壳

可以使用OD自带插件,也可以用LordPE,方法和前面"单步跟踪法"中使用方法一样

4修复

可以使用ImportFix,方法和前面"单步跟踪法"中使用方法一样

你可能感兴趣的:(内存)