基础脱壳教程 2 : 手脱 ASPACK 壳

6种方法脱

方法1:单步跟踪

首先我们单步, 然后发现程序运行起来了

也就是我们所说的 "跑飞了"

这时候我们应该用 F7 跟进去, 看看 call 里面具体有什么内容

一直单步, 然后找到了 popad, 说明离真正的 OEP 不远了

然后单步发现有个跳转, 然后我们就跳转到了 OEP

方法2:ESP定律

ESP 定律就是在关键句的下一句 ESP 处下断.

方法3:一步直达

适合大部分的 UPX 壳和 ASPACK 壳

查找命令 popad

发现不是我们想要的, 于是我们接着查找

或者直接用下个 Ctrl+L

找到之后我们可以直接 F4

然后我们就跳到 OEP

方法4:2次内存镜像

Alt M 找程序段第一个 .rsrc

方法5:模拟跟踪

这个方法和方法 6 的共同点是都是让 OD 自动去查找程序的 OEP

找到内存 M,

找到包含 SFX, imports 的这一行

然后命令行直接输入 :

tc eip<xxxxxx (地址)

然后发现 OD 左上角显示 "跟踪", 这说明 OD 已经在自动跟踪了, 等一会就自动跳到 OEP 了

方法6:SFX 模拟跟踪

"选项">"调试设置">"SFX"

然后我们选择 "块方式跟踪", 就是第二个, 当然有的要选第三个, 然后点确定, 重载一下

然后 OD 自动跳到了 OEP

一般还是推荐自己手动查找 OEP