我正在尝试创建一个即使“kill -9”也无法杀死的进程,这在攻防模式 CTF 中很有用,我试过这个https://unix.stackexchange.com/questions/134888/simulate -an-unkillable-process-in-d-state但它似乎在 2.6.25 http://www.ibm.com/developerworks/library/l-task-killable/之后在内核中修复了所以我想知道是否有任何方法在linux中创建一个无root权限的不可杀死的进程?谢谢你。(第一次在stackoverflow中提问……我有点紧张……)
问问题
1737 次
2 回答
2
绝对不可能,这种可能性不仅是一个错误,而且是一个重要的漏洞。
于 2014-10-21T08:19:46.417 回答
0
理论上root可以杀死任何进程。所有其他进程只能由其所有者杀死。如果您不希望进程被杀死,请创建一个具有不可能密码的用户(没有人需要记住),然后让 root 使用以下内容启动进程:(不会要求 root 提供密码,但“su”将更改为该用户)
su newacct ksh -c "/home/newacct/bin/theProcessToStart.ksh and its parameters"
su - newacct ksh -c "/home/newacct/bin/theProcessToStart.ksh and its parameters"
破折号表示您应该执行该用户的 .profile 。这取决于您是否愿意。(您不必执行脚本,但我假设您可能在此示例中执行。)
这样,除了 root 之外没有人可以杀死这个进程,因为没有人可以成为那个用户。
你可能想用谷歌搜索如何在 /etc/shadow 中制作不可解密的密码。这很简单。
于 2014-10-23T21:39:06.937 回答