sudoとgksudoは安全ですか?

sudoとgksudoは安全ですか?

sudo端末でコマンドを実行するか、私が使用している管理アプリケーションを実行した後、gksudoしばらく(約5分)パスワードを再度要求しないことを確認しました。

今、私が使用しているプログラムの1つ(rootとして実行されていない)にゼロデーの脆弱性(Webブラウザやプラグインなど)があるとしましょう。攻撃者は私に代わってランダムなコードを実行しました。

パスワードの有効期限が切れ、自分のシステムを制御する前に、攻撃者がパスワードプロンプトを実行またはsudo実行しない可能性がありますか?gksudo

答え1

はい、ユーザーとしてコードを実行している攻撃者は、ユーザーが直接行うことができるすべてのタスクを実行できます。もし sudo を実行していると思う場合、実際には root パスワードを自動的に記録する攻撃者のプログラムを実行するようにシェルプロセスを変更することもできます。

Ptys/ttys 引用いいえここの他の回答とは異なり、同じユーザーが所有するセキュリティです。

答え2

いいえ、できません。

sudoはtty名(またはpty)でアクセストークンを維持し、ブラウザとターミナルエミュレータは異なるptyで実行されるため、同じトークンを使用しません。

これを見つける簡単な方法は、ある端末でsudoを実行してから別の端末で再実行することです。これにより、パスワードを再入力するように求められます(/var/db/sudoを参照)。

答え3

「攻撃者がパスワードプロンプトなしでsudoまたはgksudoを実行し、パスワードが期限切れになる前に自分のシステムを管理できますか?」

はい。

最も単純な攻撃はインタラクティブシェルで発生し、キーボードから出ると画面がロックされません。

気になるならラインを変えてみてください

Defaults        timestamp_timeout=90

あなたの場合、/etc/sudoersタイムアウトは5分に変更されました。

関連情報