Fik*_*dal 7 command-line sudo 14.04
每当我sudo在终端中运行命令时,就会发生这种情况:
arun@arun-GP70-2OD:~$ sudo apt-get update
sudo: /etc/sudoers.d/README is world writable
sudo: /var/lib/sudo writable by non-owner (040777), should be mode 0700
[sudo] password for arun:
Run Code Online (Sandbox Code Playgroud)
这些sudo命令仍然有效(我认为是这样,尽管我测试过的唯一一个是sudo apt-get)。
在我被要求输入密码之前,这些奇怪的消息是什么?这里有什么大问题吗?我应该为此做些什么吗?或者我可以就这样继续使用我的系统吗?
hee*_*ayl 19
这些消息是不言自明的。
按照设计,sudo相关文件和库应该只能由root.
该目录/var/lib/sudo包含个人用户的sudo相关数据,如果非 root 用户有足够的权限,可以很容易地读取/修改这些数据,这当然是一个安全问题。
该文件/etc/sudoers.d/README包含有关sudo. 想象一个流氓用户编辑该文件并添加虚假信息(然后您遵循该信息)。
因此,简而言之,修复权限:
sudo chmod 0400 /etc/sudoers.d/README
sudo chmod -R 0700 /var/lib/sudo ## Recursively
Run Code Online (Sandbox Code Playgroud)
当然,请确保所有者是root(和组root)。