pgAdmin 4のサーバーモードにおいて、SQLエディタ関連の2つのエンドポイントに認証デコレーターが欠如している問題がある。これにより、認証されていない状態でも特定の処理が実行可能となる。本脆弱性は、信頼されていないデータの逆シリアル化(CWE-502)と認証の欠如(CWE-306)に起因する。攻撃者がFlaskのSECRET_KEYを所有し、かつセッションディレクトリへの書き込み権限を持つといった高度な前提条件を満たした場合、リモートコード実行が可能となり、pgAdminを実行するアカウントの権限で任意のコードが実行される恐れがある。
対象ソフト
pgAdminは、PostgreSQLデータベースを管理・操作するためのオープンソースのGUIツールであり、開発者やDB管理者がサーバー環境で広く利用している。
影響
攻撃が成功した場合、pgAdminプロセスおよびそれを実行するOSアカウントの権限で任意のコードが実行され、システムが乗っ取られる可能性がある。
対応策
pgAdmin 4をバージョン9.16以降へアップデートすること。修正では、該当するエンドポイントに認証チェック(@pga_login_required)が追加されている。