第六课 实战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).再点击显示无效函数这时就没有无效函数了。