脱壳教程第一课

upx

首先查壳

手脱

了解是upx直接od打开,直接往下面翻,或者用esp法直接找到popad跳转

看到先call再jmp确认为OEP入口点

直接od脱壳可运行直接不用管了

NsPack

ESP

首先查壳

发现为北斗Nspack可以同上用手脱,或者采用ESP壳,在pushfd之后发现ESP改变,我们选择数据窗口中跟随,然后在数据窗口中选择断点,硬件访问,Word然后直接f9到达出栈位置




然后继续执行直到进入OEP,发现乱码,crtl+a进行分析,发现方法OEP特征


脱壳完毕可执行

FSG

FSG特殊的IAT修复以及查找

手动在过程中我们发现这样一个跳转
在下面的XOR处我们便会跳出函数,直接跑飞函数,但是在这之前有一个大循环,导致我们在一个判断函数之间跳转

我们直接f4执行到此处,进入,发现OPE

OPE在多次查阅之后发现
脱壳后发现问题

在当前的exe程序中无法定位IAT入口点,我们用Import REC修复,在OEP入口点的call函数中我们f7进入查看

发现这些红字调用,我们了解到这是对dll中一些函数的调用,右键一个调用call函数,在数据窗口中打开,选择内存地址,并在数据窗户口中选择长型地址来帮助我们查看

找到这个数据窗口的上下界,计算差值,,按图中填入数值,了解我们的基地址是400000,大小写差值也可以写1000,之后选择无效函数删除,直接导入


修理完成

PECompact

查壳

手脱技巧,在打开这个文件时,发现有大量的无效函数,我们选择分析之后直接执行,在PEC壳中有一个重要函数,ZxContinue,在发现这个函数时我们便可以进入,快速发现OEP

也可以看我博客中的另外一个关于PECompact的壳

ASProtect

查壳

直接手托一路动就行,注意先分析一下,另外的方法看我的另一篇博客

Upack

直接ESP即可脱壳

yoda

这个也可以ESP


脱壳教程第一课
https://fogpost.top/2024/09/18/脱壳教程第一课/
作者
fogpost
发布于
2024年9月18日
许可协议