作者:Fly2015
吾爱破解培训第一课选修作业第6个练习演示样例程序。不得不反复那句话,没见过这样的壳,该壳是压缩壳的一种,相对于压缩壳,加密壳的难度要大一些。特别是IAT表的修复问题上。
首先分别使用DIE和Exeinfo PE对该加壳程序进行查壳的处理。
OD加载加WinUpack 壳的程序进行动态调试分析。加壳程序入口点反汇编快照。
想都不用想,看到PUSHAD直接ESP定律脱壳F8单步一步,ESP寄存器右键设置硬件写入断点。
F9执行程序,程序自然的断在设置的硬件断点处,如图。
有点惊呆了。硬件断点断下来的地方004739BC处JMP指令的跳转地址0041DDAC就是原程序的真实OEP的VA,F7单步直接跟过去,熟悉的界面出现了。
Ctrl+A分析地址0041DDAC处的内存数据,瞬间就豁然开朗了非常多。
OK,如今就能够使用OD的插件OllyDump或者Scylla_x86进行程序的内存的Dump和IAT表的修复。
可是要说明的是使用Load PE结合ImportREC直接脱壳有点问题,没有细看。
以下执行一下脱壳后的程序,证明脱壳成功。
手动脱WinUpack 壳的分析文档和脱壳后程序的下载地址:http://download.csdn.net/detail/qq1084283172/8900675.