在网上找几个unpackme来训练

FSG1.31的壳


先F12让程序暂停,然后使用SFX法

Ctrl+F2重启,然后F9!

SFX脱壳大法好~


这里就是OEP了,55 8B EC其实就是

在这里使用Ollydump就好~

脱壳成功了哇~

FSG1.31属于简单壳(和UPX一样),可以使用F8大法脱壳,但是循环的嵌套层数比UPX多也更烦,在用F8+F4绕出循环的时候经常会跳转回去,所以更要有耐心

比如这个retn,是从803E跳转到了8011,实际上是往前跳的(所以不能在803E按下F4,要在803F按下F4)

注意到这里标记红线的两个地方

8086处的jmp是往下跳转的

而底下809A的跳转是往前8085跳转的,所以这里还是一个很绕的循环

但是!8088和808A告诉了我们:0300是OEP

因为循环解密是有个计数器的,当byte ptr ds:[edi] == 0时,je就会判断为1~于是就成功跳转了

F8大法比SFX大法要麻烦一点,因为是人工手动分析,但是可以解决很多SFX解决不了的


第二个壳是FSG1.33的

和1.31的套路一模一样就不截图再重复了


第三个壳是FSG2.0的

2.0的不愧是2.0的,可以用SFX法找到OEP

但是用Ollydump来脱壳发现:

那就一定是IAT有问题了~(可惜现在还不会IAT的修复)

那就试试PETools+Import REC的CP吧
PETools:

选中,FULL DUMP

Import REC:


看到了吧~IAT这里都是否~说明都被转移了,到此FSG2.0我会的已经做完了


接下来:工具大法好

http://www.arpun.com/soft/9386.html

这是在网上找到的一个脱壳机~可以完美解决这个问题

选择壳特征脱壳~


恶意代码分析实战的Lab0103:

FSG1.0的壳,手动脱壳也是失败了,也是选择先用工具脱壳