手动脱WinUpack 壳实战

时间:2021-07-23 05:21:44

作者:Fly2015

吾爱破解培训第一课选修作业第6个练习演示样例程序。不得不反复那句话,没见过这样的壳,该壳是压缩壳的一种,相对于压缩壳,加密壳的难度要大一些。特别是IAT表的修复问题上。

首先分别使用DIE和Exeinfo PE对该加壳程序进行查壳的处理。

手动脱WinUpack 壳实战

手动脱WinUpack 壳实战

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

OD加载加WinUpack 壳的程序进行动态调试分析。加壳程序入口点反汇编快照。

手动脱WinUpack 壳实战

想都不用想,看到PUSHAD直接ESP定律脱壳F8单步一步,ESP寄存器右键设置硬件写入断点。

F9执行程序,程序自然的断在设置的硬件断点处,如图。

手动脱WinUpack 壳实战

有点惊呆了。硬件断点断下来的地方004739BC处JMP指令的跳转地址0041DDAC就是原程序的真实OEP的VA,F7单步直接跟过去,熟悉的界面出现了。

手动脱WinUpack 壳实战

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

Ctrl+A分析地址0041DDAC处的内存数据,瞬间就豁然开朗了非常多。

手动脱WinUpack 壳实战

OK,如今就能够使用OD的插件OllyDump或者Scylla_x86进行程序的内存的Dump和IAT表的修复。

可是要说明的是使用Load PE结合ImportREC直接脱壳有点问题,没有细看。

以下执行一下脱壳后的程序,证明脱壳成功。

手动脱WinUpack 壳实战

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

手动脱WinUpack 壳的分析文档和脱壳后程序的下载地址:http://download.csdn.net/detail/qq1084283172/8900675.