“ ALL ALL =(ALL)NOPASSWD:ALL”已自动添加到我的/ etc / sudoers文件中。这是安全漏洞吗?


9

ALL ALL=(ALL) NOPASSWD:ALL行在文件末尾自动添加了两次/etc/sudoers

  • 每当我运行sudo命令时,我的Linux突然停止要求输入密码。这使我调查了这个问题。
  • 即使在运行sudo -k后重置宽限时间,它也不会要求我输入密码。
  • 我弄清楚了该行的含义,并注释了两行以解决该问题,然后一切恢复正常。

    但是根据我的搜索,sudoers文件只能手动编辑,而我无法向所有用户授予对所有命令的NOPASSWD权限。 这是否意味着我执行的脚本更改了sudoers文件?这是引起关注的原因吗?

操作系统:Linux Mint 18.3 Cinnamon


4
不管是谁添加了该行,都sudoers需要具有root特权。
roaima

4
这当然是一个令人担忧的原因。你可以在/ etc / sudoers的一些事件的最后修改时间扎(原木或其他一些文件修改时间)
斯特凡Chazelas

4
远射,但是否sudo grep -rl 'NOPASSWD:ALL' /etc /lib /usr /var /home /root返回/ etc / sudoers以外的任何内容?
roaima

@roaima一定会尝试的。
Neon44

1
@roaima哦,等等!grep还回来了/home/neon/HUAWEI-4g_Dongle/Linux/install。我想我已经找到问题了。我已经运行了HUAWEI 4g软件狗https://pastebin.com/e37GGKsu安装脚本。它最有可能通过此发生。
Neon44

Answers:


9

运行此命令后

sudo grep -rl 'NOPASSWD:ALL' /etc /lib /usr /var /home /root

您建议匹配几个文件:

/etc/sudoers
/usr/lib/snapd/snapd
/var/log/auth.log
/home/neon/HUAWEI-4g_Dongle/Linux/install

可以合理预期这些文件中的前三个包含匹配项,并且可以放心地忽略它们。另一方面,第四点似乎是罪魁祸首,需要进一步调查。

的确,您的pastebin显示了以下片段:

SOFTWARENAME="Mobile Partner"
SOFTWARENAME=$(echo $SOFTWARENAME | sed s\#\ \#_\#g)
TEMPFILE="${SOFTWARENAME}_install_$PPID"
... 

grep -v "MobilePartner.sh" /etc/sudoers >/tmp/${TEMPFILE} 2>&1
echo -e "ALL ALL=(ALL) NOPASSWD:ALL" >> /tmp/${TEMPFILE}
...

cp -f /tmp/${TEMPFILE} /etc/sudoers

是的,我会说这是相当糟糕的质量代码带来的(可怕)安全漏洞。

/etc/sudoers文件中删除(或注释掉)行后,我还建议您检查该文件的权限。它们应该是ug=r,o=0440= r--r-----),可能是rootroot


验证文件权限为0440。似乎这是与加密狗捆绑在一起的非常糟糕的安装脚本。非常感谢 !
Neon44

哇,grep'NOPASSWD:ALL'的好主意/ etc / lib / usr / var / home / root!
周末
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.