第六课 实战petite.98及pecompact

                           第六课 实战petite.98及pecompact

 

    今天我们要讲的是PECompact和Petite。

 

    压缩壳讲到第三课了,大家应该对脱压缩壳方法应该有一定了解了,还是那句老话,压缩壳永远是压缩壳,不需要怕它。那接下来我们就脱PECompact和Petite。

 

一: 实例之PECompact壳

 

【1】 单步跟踪法

 

    1.用OD载入,如果有提示是否分析代码,就点“ 不分析代码!”

    2.F8单步向下跟踪调试,没有实现的向上的跳,向下的跳都可以步过,阻止实现的向上的跳。

3.遇到会跑飞的CALL(近CALL1000H左右)我们就F7步入。(当然我们也可以在跟踪的时候不可以去判断,只有当发生了卡死现象时我们再在他的上面设置断点以便重载找回)

注意:只有在OD中运行到OEP时用LorderPe和Import reconstrutor修复时才行,不然会出错(弱壳也可能不会出错)。还有跟的过程中可能会进入到系统领空是正常的。另:跑飞还有一种情况是卡死,这也需要F7步入。

还有至于是按Shift+F9还是按F9取决于为们的OD有没有设置忽略异常。

 

0101A6D7    8BC6            mov     eax, esi

0101A6D9    5A              pop     edx

0101A6DA    5E              pop     esi

0101A6DB    5F              pop     edi

0101A6DC    59              pop     ecx

0101A6DD    5B              pop     ebx

0101A6DE    5D              pop     ebp

0101A6DF  - FFE0            jmp     eax                              ;      pecompac.0100739D

0101A6E1    9D              popfd

0101A6E2    73 00           jnb     short 0101A6E4

 

这是该壳的出口特征(OEP入口特征)

 

TIME:10:06

 

【2】 ESP定律法(PECompact 2.5 Retail)

 

    1.F8单步跟踪调试在关键句的下一句,在OD寄存器窗口ESP突显为红色

    2.在OD命令行下输入(dd ESP突显红色的地址) 或者 (hr ESP突显红色的地址)

    3.下硬件访问断点

    4.F9运行,继续F8单步向下调试.

 

    Btw:脱次壳ESP定律不取消断点,Shift+F9运行到短点后继续F9运行(可能要多次),直到OEP附近,然后取消断点,再继续单步跟踪调试。

 

二: 实例之Petite壳(PEtite 2.x )

 

【1】ESP定律法

 

    1.F8单步跟踪调试在关键句(pushfw pushad,注意和以往不同了)的下一句(运行到push eax),在OD寄存器窗口ESP突显为红色

    2.在OD命令行下输入(dd ESP突显红色的地址) 或者 (hr ESP突显红色的地址)

    3.下硬件访问断点

4.Shift+F9运行(也不删除断点),Shift+F9运行到短点后继续F9运行(可能要多次), 直 到OEP附近,然后取消断点,再继续单步跟踪调试。

   Btw:中心目的找到关键句,pushfw pushad 对应 popad popfw。

注:修复时会有无效函数, 点击“显示无效函数”后,所有无效函数默认会全部被选中,右键跟踪级别1(或3,不能使2).再点击显示无效函数这时就没有无效函数了。

posted @ 2012-08-28 21:52  eldn  阅读(270)  评论(0编辑  收藏  举报