sudo-sudo之后的错误:必须是setuid root“
在同事的计算机上,每次我使用sudo命令时,都会收到此错误:
sudo: must be setuid root
我尝试了互联网上提到的各种各样的东西,比如从live cd更改权限到4755,但即使是来自live-cd的这个命令
sudo chmod 4755 /media/device/usr/bin/sudo
给出了同样的错误。
编辑:同事告诉我,他执行了这个命令,天知道为什么:/
sudo chmod -R 777 /
或sudo chmod -R 777
他不确定。
-
重新启动计算机,选择恢复控制台并键入以下命令
chown root:root /usr/bin/sudo
chmod 4755 /usr/bin/sudo
-
重新启动机器。
-
另请查看此链接以修复损坏的sudo。
执行sudo chmod -R 777 /
我建议从头开始紧急重新安装整个系统。 该命令打开了太多安全漏洞,因为系统上的任何文件都可以被任何用户读取( 并且可写! ),包括/etc/shadow
, /etc/hosts
,甚至/usr/bin/sudo
和/bin/ls
自己吧! 您的系统可能看起来像一个漏勺 – 使用它的每一分钟都意味着灾难性的风险和损失,尤其是在连接到互联网时。 而对sudo
固定权限根本不会做任何事情。
还要考虑这个问题 。
一旦你修复了sudo
的权限,然后使用sudo
和相同的方法来递归修复/etc
上的权限(相同的-R
参数,用于首先搞乱整个系统,只在chown
和chmod
命令上) , /boot
, /sbin
, /bin
, /dev
, /proc
, /sys
和/usr
。 这应该至少可以缓解安全问题到系统可用的程度。
然后,如果攻击者获得对您系统的控制权(如果您在修复这些权限时完全连接到Internet,那么完全重新安装将会更容易),因为将该控制权重新取回将非常困难除此以外。