2

我做了一个调用 setuid(0) 和 execve("/bin/bash",NULL,NULL) 的程序。

然后我做了chown root:root a.out && chmod +s a.out

当我执行时,./a.out我得到一个 root shell。但是,当我这样做时,gdb a.out它会以普通用户身份启动该过程,并启动一个用户 shell。

那么...我可以调试一个 suided 根程序吗?

4

1 回答 1

6

只能以gdbroot 身份运行。(换句话说,没有。)

出于安全原因,不允许普通用户跟踪属于其他用户的进程,尤其是 root。

于 2011-07-01T00:04:06.420 回答