Windows硬件断点-实现单步异常

触犯单步异常 改变的是当前Eflags 而不是触发异常的Eflags

  也就是

   PUSHF

      MOV EAX, DWORD PTR[ESP]

      OR EAX, 0x100

      MOV DWORD PTR [ESP], EAX
   POPF

     来实现单步异常(特别需要注意单步异常设置后下一条语句也会触发单步异常。如果不做处理。会造成死机 甚至蓝大妈)

     第二注意 只有触发了GD位的异常才能改变DR6寄存器。所以单步异常时需要将DR6置0

posted @ 2016-07-06 18:22  狂客  阅读(1082)  评论(0编辑  收藏  举报