lab18-01

第一个是upx加密

恶意代码分析实战 Lab18

这里我们手动脱壳,upx壳挺简单的,只要找到oep就行

注意到ollydbg进去的pushad,一般在popad后就会跳转到正确oep,所以在pushad后esp的地址设个硬件访问断点,按f9就能快速到达popad

恶意代码分析实战 Lab18

最后的跳转jmp后地址就是正确oep了

直接用ollydbg脱壳

恶意代码分析实战 Lab18

直接就脱壳成功了

恶意代码分析实战 Lab18

至于判断是之前的那个恶意代码也不难IDA打开看看就能大概记起来

他是lab14-01,答案说upx -d会失败,,反正我是手动脱壳的


lab18-02

FSG加壳,定位到ope即可

恶意代码分析实战 Lab18

这里快点选择下面插件可以快速到达程序oep

恶意代码分析实战 Lab18

定位到这里,选择删除分析,就可以

恶意代码分析实战 Lab18

还是选择ollydbg插件直接脱壳,成功.这是lab07-02


lab18-03

PECompact加壳

恶意代码分析实战 Lab18

要找到oep运行到此次,然后单步步入,

恶意代码分析实战 Lab18

跳到这里,在选择插件找到oep

恶意代码分析实战 Lab18

oep入口

恶意代码分析实战 Lab18

之后一样的操作即可脱壳成功,也可以像课本使用如第一个程序一样的方法 源程序是lab09-02

恶意代码分析实战 Lab18


lab18-04

ASPack加壳

恶意代码分析实战 Lab18

还是用pushad设硬件断点的方法

恶意代码分析实战 Lab18

程序入口

恶意代码分析实战 Lab18

后面操作一样,这是lab09-01


lab18-05

最后一个虽然显示为upx但是,总觉得异常

恶意代码分析实战 Lab18

od打开,果然和一般的upx不一样.我们试一下使用插件失败

所以再使用一次插件,你会发现程序入口点找到了

恶意代码分析实战 Lab18

脱壳就好,然而程序跑不起来因为还需要修复导入函数

这里我使用scylla来修复导入函数表

如下图,附加进程,然后自动查找IAT,然后获取输入表,最后修复转储后的文件(就是之前dump下来的文件),然后程序就能正常运行了

还要记得修复oep为401190

恶意代码分析实战 Lab18

脱壳成功,IDA查看代码会发现程序和lab07-01一模一样

分析结束

相关文章: