美文网首页
反调试 Fake F8

反调试 Fake F8

作者: 欧皇ff | 来源:发表于2020-04-04 14:54 被阅读0次

欺骗单步步过调试

DTDebug 调试工具快捷键

快捷键 作用 注释
F7 单步步入 设置EFLAGS的TF位为1 调试CALL指令进入CALL内部
F8 单步步过 在指令下一行设置断点
F2 插入断点 修改当前内存的地址的值为 0xCC INT 3
call 0x005021D0
jmp 0x00502041

mov eax,1
mov ecx,2
mov edx,3
retn

一步一步运行至ret
然后进入jmp指令行


F7调试

EFL标志寄存器中有个TF位;如果TF置1,当前CPU就会进入单步执行模式。
F7就是设置EFL的TF位。


EFL F7调试中TF为的值

直接把call ···· ret 看做一行,直接跳转到jmp指令行


F8调试

反调试F8 就是破坏CALL指令的正常运行逻辑。
JMP PUSH POP
CALL 修改下一步执行地址EIP,CALL指令下一行指令地址入栈,ESP+4,当前堆栈保存下一行指令地址。
破坏ESP保存的地址,达到F8跟踪失败,F7还是可以正常追踪的。
以当前经验破坏F8调试,就是多个CALL指令嵌套,随机在一个CALL中使用修改正常的地址,其他都是用来消耗反调试人的耐心,以达到反调试的目的。

相关文章

  • 反调试 Fake F8

    欺骗单步步过调试 DTDebug 调试工具快捷键 快捷键作用注释F7单步步入设置EFLAGS的TF位为1 调试CA...

  • android studio mac快捷键

    1、调试 单步调试:fn + F8单步进入:fn + F7单步跳出:fn + F8 + shift单步进入源码:f...

  • debugger调试

    在需要调试的函数中添加debugger 按 F8 F10 F11进行调试代码 F8为跳到下一个断点,F10为执行...

  • ideaDebug调试时F8快捷键失效的解决办法

    在idea断点模式调试时,突然发现F8快捷键失效,原因是被其他软件的快捷键给占用了,导致调试时F8键不可用,解决办...

  • Pycharm学习

    调试: 点击Debug进入调试: F8:step over,在断点之间的语句上单步运行; F7:step into...

  • Android Studio 快捷键

    android studio调试 单步调试 F8,相当于eclipseF6 进入方法内部 F7 跳出函数,调到下一...

  • Xcode快捷键

    一、关于运行与调试 Command+ R 运行Command + . 停止 F6单步调试、F7跳入,F8继续,和...

  • IDEA调试技巧

    IDEA调试,除了常用的F8,F7之外,还有这些调试技巧 1.条件断点 1.1使用场景 调试进入循环时,希望达到某...

  • 微信小程序入门到实战(四)

    调试方法 单步调试是F10 跳到下一个断点是F8小程序的调试和一般的网页调试差不多,但是注意几点: 调试文件的选择...

  • 大型前端开发过程中的数据存放位置

    示例图 硬编码——>testdata——>model——>fake_api—>api 说明 前端项目在开发和调试中...

网友评论

      本文标题:反调试 Fake F8

      本文链接:https://www.haomeiwen.com/subject/uvkhphtx.html