仮想端末にrootパスワードを入力すると、Xの他のプログラムは私のrootパスワードをキャプチャできますか?

仮想端末にrootパスワードを入力すると、Xの他のプログラムは私のrootパスワードをキャプチャできますか?

通常、私はクローズドソースアプリケーションを信頼していないため、Linuxシステムにオープンソースプログラムのみをインストールします。私は最近大学プロジェクトにDropboxを使用する必要がありました。私は別のLinuxアカウントを作成しました。働くそして走る(例えば働く) インストールは必要ありません。Pythonスクリプトを介して。さらに、スクリプトはシステムトレイにDropboxの特定の機能のGUIを提供するシンボルを生成します。

ある日、メンテナンスが必要なので、仮想端末(KDEではkonsole)を開き、rootパスワードを入力しました。

Dropboxアプリは私のルートパスワードをキャプチャできますか?

私はFedora 20とKDE 4.14.3を使用しています。

答え1

短い答え:はい。

「以前」では、他のXアプリケーションがその入力を読み取ることを効果的に防ぐために、特定の入力をキャッチすることが可能でした。今日までもこんなことが可能ですが、XI2プロトコル仕様これはこれ以上実行できないことを示しているようです(2220行目の元のイベントの説明を参照)。したがって、Xの直下では安全ではなくなります。少なくとも一般的な簡単な設定ではそうではありません。以下の議論も参照してください。私の答え到着デーモンがパスワードを求めるメッセージを表示する方法(Xsession、keyloggersafe)そしてAskUbuntu Q&Aはそこに参照されています。。言うまでもなく、実際にこれを行う端末はありません。これが、OpenSSHやGnuPGなどのアプリケーションがキーボードをキャッチできる独自のUIヘルパーを提供する理由です(上記のように、最近はあまり役に立ちません)。

しかし、できることは、ネストされたXサーバーなどの他のXサーバーでアプリケーションを実行することです。XephyrまたはXnestまたはVNCなどに基づいてXvnc。 Waylandプロトコルは、盗聴に対するいくつかの保護も提供する必要があります。

これに加えて、アプリケーションはシステムのパッチされていないセキュリティホールを使用して昇格した権限を取得しようとします。または、システムパスの前にsuandラッパーを入れてパスワードを傍受するなどの簡単な操作を実行してください(コメントをありがとうJoshuaに感謝します)。sudo

関連情報