【发布时间】:2021-12-26 17:42:26
【问题描述】:
如果你在网上查一下Anti-Debug,你会发现很多信息。例如,在搜索中找到了 isDebuggerPresent 和 NtGlobalFlags。但是,我的进程只能通过在检测到它时终止自己的进程来保护自己免受调试器的影响。
我想知道如何首先防止调试器附加,或者如何识别和分离调试器进程。
【问题讨论】:
-
一个坚定的攻击者会绕道
IsDebuggerPresent寻找被调试的进程并且总是返回false。简而言之,如果攻击者拥有本地管理员权限(或可以获得它们),则无法阻止攻击。 -
这意味着我无法抗拒调试器。感谢您的回答。
-
可能,如果调试器不阻止你,确定你的进程是否被调试,确定的进程,它调试你的进程并分离调试器(如果我们说本地,用户模式调试器)。但当然 - 调试器可以阻止你这样做
-
我无法抗拒调试器。 - 可能会为调试器(调试您的进程的人)制造问题。那么一切都取决于他,取决于他的资格和经验
-
这是一个 XY 问题。我认为你需要的是一种进程加密机制。如果您希望您的流程不被黑客入侵。
标签: c++ windows debugging winapi anti-debugging