Root
為什麼 whoami 總是返回“root”?
黑客攻擊後,專用伺服器總是在命令之後返回“root”
whoami
。即使在sudo su myUser
>whoami
返回“root”之後。
myUser
伺服器上存在,因為關於這個問題passwd myUser
返回Changing password for myUser.
此外,在伺服器上安裝軟體包時,權限始終設置為
root:myUser
.哪些路徑可能導致
whoami
始終返回“根”?
原因可能是
whoami
二進製文件是 setuidroot
。你可以用stat $(which whoami)
. 在我的系統上,它看起來像這樣:File: /usr/bin/whoami Size: 30904 Blocks: 64 IO Block: 4096 regular file Device: 1bh/27d Inode: 13918180 Links: 1 Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
如果它啟用了 setuid,它看起來像這樣:
File: /usr/bin/whoami Size: 30904 Blocks: 64 IO Block: 4096 regular file Device: 1bh/27d Inode: 13918180 Links: 1 Access: (6755/-rwsr-sr-x) Uid: ( 0/ root) Gid: ( 0/ root)
這個位的效果是二進製文件作為它的所有者執行 - 而不是作為啟動它的使用者。
您可以通過執行來禁用此設置
sudo chmod -s $(which whoami)
。(但是,是的,正如許多人已經在評論中寫的那樣,您可能應該完全重新安裝機器。)