sudoeditを使用しないと、どのような悪いことが起こりますか?

sudoeditを使用しないと、どのような悪いことが起こりますか?

私達はsudoeditを使用することがより安全であることを知っています*。しかし、sudoersで以下を使用すると、どのような悪いことが起こりますか?

Cmnd_Alias FOO = /bin/ed, /usr/bin/ed, /usr/bin/vi
foouser LOCALHOST = NOPASSWD: NOEXEC: FOO

「fouser」をルートプロンプトにエスケープできますか? - 間違いなくとは別に今、彼は/etc/shadowファイルを編集し、カスタムpwdハッシュをルートに送り、約3秒でルートになることができます。

たぶんLD_PRELOADとedを使う魔法がありますか?正確にはどうですか?

*=sudo edはrootとして実行されます。ただし、sudoeditは指定されたユーザーとして実行され、編集されたファイルは編集の前後にコピーされます。

ベストアンサー1

「fouser」をルートプロンプトにエスケープできますか?

おそらくfoouserはすべてのシステムバイナリを開き、まったく異なるものとして「編集」できるようになり、foouserが想像できるあらゆる種類のセキュリティホールを残すことができます。たとえば、setuidバイナリに対してこれを行うと、passwdroot以外のユーザーがそれを使用して意図しない特権タスクを実行できるため、特別な可能性があります。

これに加えて、/etc/shadowファイルを編集してカスタムパスワードハッシュを配置できるようになりました。

あるいは、ハッシュを削除すると、rootとしてログインするためにパスワードは必要ありません。

おすすめ記事