动画性质: 无声演示
录制工具: 屏幕录象专家
游戏外挂:
VIP 会员:
动画评级:
动画介绍:教程中所使用到的工具:
1.OllyDBG
2.PEiD v0.94
我们先查壳,
脱壳前:PECompact 1.68 - 1.84 -> Jeremy Collake
OD载入
方法一:单步法(忽略所有异常)
0040C000 P> /EB 06 jmp short PECompac.0040C008 //停在这,继续F8
0040C002 |68 CC100000 push 10CC
0040C007 |C3 retn
0040C008 9C pushfd
0040C009 60 pushad
0040C00A E8 02000000 call PECompac.0040C011 //F7过
。。。。。。。。。。
0040D251 /0F84 9B000000 je PECompac.0040D2F2 //enter
。。。。。。。。。。
打开程序后单步跟踪F8,跳到第一个CALL后按F7,之后继续跟踪。然后单步跟踪F8到
0040D251 je 0040D2F2 之后右键 跟随Enter 跟随到了之后F2下断,F9运行,然后F2取消断。
继续跟踪,跳到JE 大跳转之后右键 跟随Enter 跟随到了之后 F2下断,F9运行,然后F2取消断。
继续跟踪,跳到JE 大跳转之后 右键 跟随Enter 跟随到了之后 F2下断,F9运行,然后F2取消断。
继续跟踪,跳到JE 大跳转之后 右键 跟随Enter 跟随到了之后 F2下断,F9运行,然后F2取消断。
这样就差不多到了程序的出口点了。我们来跟踪,ok,大家应该知道了吧,
004010CC 55 PUSH EBP
004010CD 8BEC MOV EBP,ESP
到了程序的出口点,我们来脱壳看下,查一下壳·
脱壳后:Microsoft Visual C++ 6.0 SPx Method 1 我们看看能不能打开 ,可以打开。
-----------------------------------------------------------------------------
下面给大家讲第二种方法 ESP定律法
方法二:ESP定律(忽略所有异常)
下面我有写详细的步骤,大家可以自己看,直接操作吧,这样更容易理解,
0040C000 P> /EB 06 jmp short PECompac.0040C008 //停在这,继续F8
0040C002 |68 CC100000 push 10CC
0040C007 |C3 retn
0040C008 9C pushfd
0040C009 60 pushad //ESP,突现,0012ffc0
0040C00A E8 02000000 call PECompac.0040C011
下命令行 hr 0012ffc0 回车,F9运行
0040D550 50 push eax //到这里了,继续F8(记得取消硬件断点^_^)
0040D551 68 CC104000 push PECompac.004010CC
0040D556 C2 0400 retn 4 //返回来到OEP
。。。。。。。。。。。。。。。
004010CC 55 push ebp 在这里dump就可以了
004010CD 8BEC mov ebp,esp
004010CF 83EC 44 sub esp,44
很容易就到了OEP了~~
-----------------------------------------
载入程序后单步跟踪到第一个CALL 然后选择右边的寄存器 ESP 右键 数据窗口跟随,
之后到左下角,右键断点,硬盘访问断点,字或word,之后F9运行 ,然后点顶部的调试,
硬件断点,删除断点,之后继续跟踪就到了出口点就可以脱壳了。我们来跟踪一下看看。
004010CC 55 PUSH EBP
004010CD 8BEC MOV EBP,ESP
到了程序的出口点,我们来脱壳, 可以打开,再来查一下壳,看看我们是否已经成功脱壳。
Microsoft Visual C++ 6.0 SPx Method 1 已经脱壳了。ESP照样脱,好了 教程就先讲到这里。