【问题标题】:How to bypass isDebuggerPresent with x64dbg如何使用 x64dbg 绕过 isDebuggerPresent
【发布时间】:2016-12-29 03:18:31
【问题描述】:

我在ollydbg中找到了如何绕过它的指南:

see here

但是对于 x64 应用程序如何做到这一点呢?

我发现了以下内容:

我必须如何操作它才能让它不检测到调试器?

【问题讨论】:

  • 使用命令dbh

标签: debugging reverse-engineering


【解决方案1】:

您可以按照指南中所述的相同方式进行操作(即通过修补 IsDebuggerPresent 的代码)。

或者你可以在“movzx eax, byte ptr ds:[rax+2]”指令处设置断点,当程序在断点处停止时,进入Dump面板中的RAX+2,然后改变字节从 1 到 0。

【讨论】:

  • 但是当我只是执行以下操作时:将此函数替换为 mov rax, 0 mov eax, 0 -> 仍在某处检测到调试器...
  • !!我在代码中发现了 CheckRemoteDebuggerPresent 的用法。我也必须关心它吗?
  • 是的,可能。有很多方法可以检查程序是否正在调试。阅读例如这个:antukh.com/blog/2015/01/19/malware-techniques-cheat-sheet
  • 所以我需要照顾所有这些可能的检查?
  • 一般来说,是的。您也可以尝试使用 x64dbg 的隐藏插件(TitanHide、ScyllaHide)。
猜你喜欢
  • 2012-05-06
  • 2014-07-11
  • 2018-11-14
  • 2021-09-23
  • 2018-09-19
  • 2012-05-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多