UPX单步脱壳

工具

吾爱破解下载的ollydgb 加上插件 ollydump手动脱壳

工具常用命令

  • F2:设置断点。只要在光标定位的位置按F2键即可,再按一次F2键则会删除断点。
  • F8:单步跳过。 每按一次这个键执行一条反汇编窗口中的一条指令,遇到 CALL 等子程序不进入其代码。
  • F7:单步步入。 功能同单步步过(F8)类似,区别是遇到 CALL 等子程序时会进入其中,进入后首先会停留在子程序的第一条指令上。
  • F4:运行到选定位置。 作用就是直接运行到光标所在位置处暂停。
  • F9:运行。 按下这个键如果没有设置相应断点的话,被调试的程序将直接开始运行。
  • CTR + F9:执行到返回。 此命令在执行到一个 ret (返回指令)指令时暂停,常用于从系统领空返回到我们调试的程序领空。
  • ALT + F9:执行到用户代码。 可用于从系统领空快速返回到我们调试的程序领空。

1、单步脱壳法

注意:如果遇到程序跑飞的情况,需要F7进入程序内部

1、使用 F8 或者点击 小红框处的按钮进行下一步

2、当执行到大红框处时,直接F8,因为这是向下执行的跳转

在这里插入图片描述

3、当执行到向上跳转时(红框圈中的这种情况时,里面有一个小箭头向上,表示向上跳转),使用鼠标或者下箭头选中它的下一行,点击F4 或者 (F2断点,然后 F9)
请添加图片描述

4、当碰到这种向上跳转的下一行也是跳转指令或者nop,就再往下一行,然后使用F4
请添加图片描述

5、向上跳转下面跟一个链接再跟一个nop,就在下一行,到mov,然后点击F4
请添加图片描述

6、当碰到 出栈指令以及下面跟的远距离跳转表示快要到真正的程序入口了
请添加图片描述
7、执行到

push ebp
mov ebp, esp

时,表示到达了真正的程序入口
请添加图片描述
8、开始脱壳, 鼠标右击,然后点击 用ollDump脱壳调试进程
请添加图片描述
9、将新的入口地址放入里面,然后点击脱壳,选择脱壳后的程序保存位置即可
请添加图片描述

2、ESP定律

1、进来之后先执行完pushad、然后获取右边的ESP的值,然后再下方的command中输入

dd <ESP的值>

在这里插入图片描述
在Address这一栏 右击,然后选择 Breakpoint -> Hardware, on access -> word
在这里插入图片描述
2、设置完断点后,直接F9或者点击红框中的按钮,然后 debug -> hardware breakpoints 将断点删掉
在这里插入图片描述
3、向单步脱壳法中的步骤执行,一直F8,发现到 jnz short re_sign.00435A3A 是向上跳转,选择下一行,点击F4,然后一直F8到,发现执行完 jmp之后直接跳转到了 OEP
在这里插入图片描述
4、脱壳
执行到OEP之后,Plugins -> OllyDump -> 脱壳在当前调试的进程 或者
鼠标右击 -> 用OllyDump脱壳调试进程
在这里插入图片描述
将入口点地址修改为 OEP的地址,点击脱壳
在这里插入图片描述

问题

脱壳后发现不能运行

可以去学习修复导入表 或者使用工具 UpxUnpacker.exe脱壳

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值