GNOME RDP の脆弱性 CVE-2024-5148 がFIX:セッションへのアクセスにいたる恐れ

CVE-2024-5148: GNOME Remote Desktop Vulnerability Exposes Sensitive Information

2024/05/24 SecurityOnline — GNOME Remote Desktop バージョン 46.0/46.1 に存在する深刻な脆弱性 CVE-2024-5148 により、機密情報が暴露され、リモート・デスクトップ・セッションへの不正アクセスを許す可能性があることを、セキュリティ研究者 Matthias Gerstner が発見した。


GNOME Remote Desktop は、VNC や RDP (Microsoft Remote Desktop) プロトコルを介して、グラフィカルなユーザー・セッションへのリモート・アクセスを提供する。バージョン 46 以前では、既存のグラフィカル・ユーザー・セッション内でのみ使用されていが、バージョン 46 からはシステム・デーモンが導入され、GNOME Display Manager (GDM) を介したリモート・グラフィカル・セッションが可能になっている。このデーモンは、ユーザーごとの “gnome-remote-desktop” の下で実行され、D-Bus インターフェイスを介して GDM と対話する。


この脆弱性は、認証されていない D-Bus インターフェイスに起因しており、あらゆるローカル・ユーザーに対して、SSL の秘密鍵やシステム認証情報の傍受を許し、ハンドオーバー状態の RDP クライアントのソケット接続の取得も許してしまう。それにより、以下の可能性が生じてしまう。

ローカル秘密鍵の漏洩

システム・デーモンは、公開 SSL 証明書と対応する秘密鍵を、”/var/lib/gnome-remote-desktop/.local/share/gnome-remote-desktop/certificates” にアクセス制限付きで保存する。ただし、ローカル・ユーザーであれば誰でもが、StartHandover D-Bus 関数経由で SSL 秘密鍵を傍受できる。この不正アクセスにより、システム上の RDP 接続の完全性とプライバシーが侵害される。

システム認証情報の漏洩

ローカル攻撃者は、認証されていない GetSystemCredentials() D-Bus メソッドを呼び出すことで、共有システムの認証情報を平文で取得できる。この認証情報を悪用する攻撃者は、RDP 経由でディスプレイ・マネージャに接続できるようになり、自動ログインなどの機能が有効になっている場合には、セッションへのアクセスも可能にする恐れがある。

ソケット接続ハイジャック

Handover.TakeClient() D-Bus メソッドにより、任意のローカル・ユーザーがハンドオーバー状態における RDP クライアントのファイル記述子を取得できるようになる。その結果として、サービス拒否 (DoS) 攻撃や、細工された RDP セッションのセットアップにつながる可能性が生じる。

脆弱性 CVE-2024-5148 の影響は深刻であり、影響を受けるシステム上の RDP 接続の完全性とプライバシーを侵害する可能性が生じる。GNOME Remote Desktop バージョン 46.0/46.1 を使用しているユーザーに強く推奨されるのは、バージョン 46.2 以降へと直ちにアップデートすることだ。このバージョン 46.2 におけるバグ修正により、ハンド・オーバー・インターフェースへのアクセスが許可されたユーザーに制限され、不正アクセスのリスクが軽減される。