恶意代码分析实战 — Lab 18-01

首先PEID查壳,hardcore scan查到是upx壳

从EP Section也可以看到upx壳

OD载入程序,入口地址为0x409dc0,第一条命令为pushad

手动查壳需要单步运行,跳过所有向上的跳转,知道一个jmp大的地址跳转

在地址0x409f43找到一个jmp 0040154f指令,并且下边的数据都是0x0000

跳转后发现此处被分析为数据,Ctrl+A分析变为代码

初始入栈操作,看起来像是正常的代码了

使用IDA Pro载入程序后,首先看到加壳后的程序非常复杂

对于比较大的jmp跳转,idapro显示分析失败,并标记为红色代码。并且此代码块只有入口没有出口

OD中,右键Dump debugged process,取消掉Rebuild Import,记住OEP地址为154F

使用工具Import REConstructor,将OD中的实验程序载入,修改OEP地址为154F,然后点击IAT AutoSearch,此时会跳出一个对话框 Found something

点击确定后选择Get Imports,获取的导入表显示在Import Functions Found框中

都为valid:Yes,如果有问题可以show invalid查看

没问题后点击Fix Dump,然后覆盖掉刚才dump出来的exe程序,会在程序名后自动加上一个下划线重命名

Dump出的程序直接运行会报错

修复后的程序可以正常运行,PEID查壳也ok,Section部分依然存在upx2

您可能还喜欢...