OD常用断点

OD常用断点

INT 3断点

原理: 当执行一个INT 3断点时,该地址处的内容被调试器用INT 3 指令替换,此时OD将INT 3隐藏,显示中断前的指令

INT 3机器码为0xCC
004013A5 CC D0404000
68被替换为CC

INT3断点可设置无限个,但改变了程序机器码,容易被检测,如检测API首地址是否为0xCC。绕过方式,将断点设在函数内部或末尾。

F2或命令行 bp设置

硬件断点

原理
与DRx调试寄存器有关

Dr0~3用于设置硬件断点,即在调试器中经常使用的bpm断点,由于只有4个断点寄存器,所以最多只能设置4个bpm断点。Dr7是一些控制位,用于控制断点的方式,Dr6用于显示是哪些引起断点的原因。

硬件断点不会将指令首字节修改为CC

菜单Breakpoint > hardware,on execution 或命令行 “HE 地址”设置

内存断点

原理: 对所设的地址赋予不可访问/不可写入属性,当访问或写入时会产生异常,OD截获异常后比较是否是断点地址,如果是就中断。

只能下一个内存断点
Breakpoint > memory, on write/access设置,F9运行

硬件访问/写入断点在触

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值