CVE-2023-5869: Unpatched PostgreSQL Servers at Risk of Arbitrary Code Execution Attacks
2023/11/14 SecurityOnline — PostgreSQL Global Development Group が、3件のセキュリティ脆弱性の修正を含む、PostgreSQL 16.1/15.5/14.10/13.13/12.17/11.22 をリリースした。これらの脆弱性の悪用に成功した攻撃者は、侵害したシステムの制御や、機密データの窃取を可能すると思われる。
CVE-2023-5868: アクリゲーション関数おけるメモリ開示
メモリ開示の脆弱性 CVE-2023-5868 の悪用に成功した攻撃者は、PostgreSQL サーバから機密データを読み取る可能性を持つ。この脆弱性の CVSS 値は 4.3 だが、Critical と評価されている。
この脆弱性は、PostgreSQL が特定のアグロイノベーション関数を処理するさいの欠陥に起因するものだ。アクリゲーション関数が “unknown” 型の引数で呼び出されると、PostgreSQL は引数をメモリに格納する。その際に、割り当てられたバッファよりも引数が長い場合において、PostgreSQL はバッファに隣接するメモリを上書きしてしまう。それにより、攻撃者が PostgreSQL サーバから機密データを読み取る可能性が生じる。
CVE-2023-5869: 配列変更におけるバッファオーバラン
バッファ・オーバーランの脆弱性 CVE-2023-5869 の悪用に成功した攻撃者は、PostgreSQL サーバ上で任意のコードを実行する可能性を持つ。この脆弱性の CVSS 値は 8.8 であり Critical と評価されている。
この脆弱性は、PostgreSQL で配列の変更が処理される際の、不適切な方法に起因する。特別に細工した配列変更クエリを攻撃者が提供できれば、PostgreSQL 上の配列に隣接するメモリが上書きされる。それにより攻撃者は、PostgreSQL サーバ上で任意のコードを実行する可能性を持つ。
CVE-2023-5870: pg_signal_backend の不適切なシグナル送信
ロールバイパスの脆弱性 CVE-2023-5870 の悪用に成功した攻撃者は、特定のスーパーユーザー・プロセスに対してシグナルを送る可能性を持つ。この脆弱性の CVSS は 2.2 であり、Medium と評価されている。
この脆弱性は、PostgreSQL が pg_signal_backend ロールを処理する際の欠陥に起因している。pg_signal_backend ロールはバックグラウンド・ワーカーへのシグナリングに制限されているはずのものだ。しかし、この脆弱性は pg_signal_backend ロールに対して、特定のスーパーユーザー・プロセスにシグナルを送ることを許している。それにより攻撃者は、PostgreSQL サーバの動作を妨害できる。
自分自身を守るために何ができるか?
これらの脆弱性から身を守る最善の方法は、PostgreSQL 16.1 以降にアップデートすることだ。最新版の PostgreSQL を Web サイトからダウンロードしてほしい。
PostgreSQL の脆弱性ですが、CVE-2023-5869/CVE-2023-5869 は Critical 評価となっています。今年に入ってからは、2023/01/09 の「Kinsing による Kubernetes 攻撃:PostgreSQL のミスコンフィグを狙っている」があるだけで、安定感がありますね。よろしければ、PostgreSQL で検索も、ご利用ください。


You must be logged in to post a comment.