来写一下基础的脱壳
题材来自于52pj
所用工具:
PEID(查)、OD(脱)
通过peid查到是upx的壳
拖入od
花花绿绿好头晕啊
接下来将以四种方法来脱壳
1.单步跟踪
按F8 一步一步的单步进入到JMP
继续F8发现跳过了下面的JNZ
接下来我们要做的就是在跳转回去的地方下断点即可:
这里用快捷键F4
可以看到005790A9是一条向上跳转的jb
所以在他的下一个指令下断点
然后继续分析
继续F8到0057910E可以看到是一条向上跳转的jb
所以在下一条f4
一直到下面的跳转
只要不出意外就在跳转回去的下一条指令F4即可
注意
如果在F8中遇到了
这种颜色的箭头,则代表不会跳转
正常会跳转的箭头是红色的!
继续找到了popad
在调试过程中遇到了向上的jmp类指令就在下面一个打f4 如果下面一个是call或者是jmp指令就再往下一个
一直到了popad 是出栈的意思
观察其下一个jmp
这条指令是005791EF 而跳转到的是0047730C
发生了较大跨度的跳转
一般就是跳到了OEP (程序入口点)
找到了push ebp
也就是程序的入口
选择方式1
进行脱壳
查壳
发现脱壳成功!
下一篇文章讲解其余的方法