概要
pgAdmin 4のサーバーモードにおいて、ユーザーが所有するオブジェクト(サーバーグループ、サーバー、共有サーバー、バックグラウンドプロセス、デバッガモジュール)へのアクセス時に、リクエスト者のIDによるフィルタリングが実施されていませんでした。
認証済みユーザーがオブジェクトIDを推測するだけで、他ユーザーのプライベートサーバー・サーバーグループ・バックグラウンドプロセス・デバッガ関数引数にアクセスできる状態でした。さらに共有サーバー機能では以下の複数の問題が確認されています:
passexec_cmd・パスファイル・SSLキー等の認証情報漏洩passexec_cmd(接続確立時に実行されるシェルコマンド)への書き込みによるオーナーのプロセスコンテキストでの任意コード実行- オーナー専用フィールドへの非オーナーからの書き込みによるデータ汚染
修正はアクセス制御の集中化(新しいserver_accessモジュール)、UserScopedMixinによるユーザー所有モデルのスコープ化、非オーナーへのオーナー専用フィールドの非表示化、明示的なオーナー専用書き込みガードの追加によって対処されました。
CVSSベクトル
| 項目 | 値 |
|---|---|
| CVSSスコア | 9.9(Critical) |
| CWE | CWE-284(不適切なアクセス制御) |
| 攻撃元区分(AV) | ネットワーク |
| 攻撃条件の複雑さ(AC) | 低 |
| 必要な特権レベル(PR) | 低(認証済みユーザー) |
| ユーザー関与(UI) | 不要 |
| 機密性への影響(C) | 高 |
| 完全性への影響(I) | 高 |
| 可用性への影響(A) | 高 |
影響を受けるソフトウェア
| 製品 | ベンダー | 影響バージョン |
|---|---|---|
| pgAdmin 4 | pgAdmin Development Team | 9.15未満 |
サーバーモードでのみ再現します(デスクトップモードは対象外)。
修正バージョンと回避策
- 修正バージョン: pgAdmin 4 v9.15以降(2つのPRで修正 — PR#9830、PR#9835)
- 暫定対応: pgAdmin 4サーバーへのアクセスを信頼済みユーザーのみに制限し、最小限の権限のみを付与する
- pgAdmin 4の管理画面または公式サイトからv9.15以降をダウンロードしてアップデートしてください
関連リンク
データソース: NVD (NIST), GitHub
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
