ルートパスワードを知っていると、現在システムにインストールされているプロセスの権限が高くなりますか?

ルートパスワードを知っていると、現在システムにインストールされているプロセスの権限が高くなりますか?

Unixファミリーシステム(macOs、Linux、Solarisなど)が悪意のある攻撃者によって開発されたプログラムをインターネットにインストールしたシナリオを考えてみましょう。

プログラムは、特権を高めるためにシステムのゼロデーの脆弱性を使用しません。すべての制限を含む管理者ではなく、一般ユーザーのコンテキストで実行されます。ユーザーが端末に「su」と入力し、パスワードの入力を記録するまで、バックグラウンドですべてのキーストロークを記録します。このプログラムは突然rootユーザーのパスワードをキャプチャしました。

私の質問は、このパスワードをキャプチャした後にプログラムがrootユーザーのコンテキストでそれ自身を再開できるのか、それとも実行中に特権を昇格させ、現在のユーザーが気づかないようにするのかということです。そのようなプログラムがそのようなタスクを実行できるようにするユーティリティは何ですか?私はカーネルのバグや脆弱性が悪用されない理想的なシナリオについて話しています。私は、既存のシステムユーティリティをもともと意図したとおりに使用するプログラムについて話しています。

ベストアンサー1

expectこれは、このプログラム(および同様のプログラム)が実行するように設計されています。suで実行しexpect、パスワードプロンプトを検出し、パスワード(キャプチャ)を送信してからコマンドを送信できるルートシェルを持つことができます。

例えば

#!/usr/bin/expect --

set mypasswd "imnottellingyou"

spawn "su"
expect "ssword"
send "$mypasswd\n"
expect "#"
interact

おすすめ記事