web-dev-qa-db-ja.com

「ALL ALL =(ALL)NOPASSWD:ALL」が/ etc / sudoersファイルに自動的に追加されました。これはセキュリティ違反ですか?

ALL ALL=(ALL) NOPASSWD:ALLだった自動で2回追加私の最後に/etc/sudoersファイル。

  • Linuxが突然、Sudoコマンドを実行するたびにパスワードの入力を求めなくなりました。これは私に問題を調査させました。
  • 実行後もSudo -kパスワードを要求しない猶予時間をリセットします。
  • 私はその行の意味を理解し、問題を修正するために2行をコメントアウトしました。問題は正常に戻りました。

    しかし、私の検索によると、sudoersファイルは手動で編集のみであり、すべてのユーザーにすべてのコマンドに対するNOPASSWD権限を与えることはできませんでした。 これは、実行したスクリプトがsudoersファイルを変更したことを意味するのでしょうか?これは問題の原因ですか?

OS:Linux Mint 18.3 Cinnamon

9
Neon44

このコマンドを実行した後

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

これらのファイルの最初の3つは一致が含まれていると合理的に予想されるため、無視しても問題ありません。一方、4番目は原因の可能性があり、さらに調査が必要です。

確かに、あなたの 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が所有しています。

9
roaima