原理:它不仅可以探测系统其他进程是否被调试,通过传递自身进程句柄还可以探测自身是否被调试。
这个函数的核心代码只有一句话,就是对NtQueryInformationProcess的调用,通过NtQueryInformationProcess(ProcessDebugPort)实现。
检测函数样例:
BOOL CheckDebug()
{
BOOL ret;
CheckRemoteDebuggerPresent(GetCurrentProcess(), &ret);
return ret;
}
欢迎关注我的微博:大雄_RE。专注软件逆向,分享最新的好文章、好工具,追踪行业大佬的研究成果。