od(3)实践

Win32程序调试技巧
本文详细介绍Win32程序的调试方法,包括程序起始地址的理解、硬件断点的使用、如何避开或处理软件加壳保护,以及常用调试命令如F4、F8、CTR+F9和ALT+F9的功能与应用场景。

程序起始地址:0x00401000

  • 在一般的WIN32程序中文件头偏移被放在文件0X3C处,在那我们通常可看到00010000,由于数据存储时是低位在前,高位在后的,所以翻转过来实际就是00000100

每个函数都被中括号清晰的标识出来。

当发现断点检测时,可避开扫描区域(计算出区域范围),也可暴力改写(填充nop)。

有些软件会加壳保护自己,让你无法直接使用od,所以,还需要一个检测壳的工具(peid)。

  • ep section显示.text表示没有壳。

 硬件断点

  • F4:运行到选定位置。作用就是直接运行到光标所在位置处暂停。
  • F8:也利用了一次性硬件断点不过是在断点下一行建立硬断,建立之后运行一次自行删除

返回上一层代码

  • CTR+F9:执行到返回。此命令在执行到一个 ret (返回指令)指令时暂停,常用于从系统领空返回到我们调试的程序领空。
  • ALT+F9:执行到用户代码。可用于从系统领空快速返回到我们调试的程序领空。

 

转载于:https://www.cnblogs.com/theinspiration/p/9607403.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值