Awa*_*ais -1 c linux debugging ptrace process
以前习惯使用像gdb等工具进行调试,我对它们的实现知之甚少.我试图在我的程序中实现一个反调试技术,但对调试知之甚少,我需要一些帮助.我从http://www.julioauto.com/rants/anti_ptrace.htm看到了以下代码
void anti_ptrace(void)
{
pid_t child;
if(getenv("LD_PRELOAD"))
while(1);
child = fork();
if (child)
wait(NULL);
else
{
pid_t parent = getppid();
if (ptrace(PTRACE_ATTACH, parent, 0, 0) < 0)
while(1);
sleep(1);
ptrace(PTRACE_DETACH, parent, 0, 0);
exit(0);
}
}
Run Code Online (Sandbox Code Playgroud)
我想对你的专家有关于上述代码有多成功以及优缺点的专家意见?
任何帮助,将不胜感激.