PostgreSQLグローバルデベロップメントグループは11月14日(現地時間)、オープンソースのリレーショナルデータベース管理システム「PostgreSQL」の最新版となるバージョン17.1、16.5、15.9、14.14、13.17、および12.21をリリースした。

このリリースには緊急度の高い脆弱性「CVE-2024-10979」に対する修正が含まれている。この脆弱性を悪用されると、攻撃者によって標的となったシステム上で任意のコードを実行される危険性があるという。

  • PostgreSQL: CVE-2024-10979: PostgreSQL PL/Perl environment variable changes execute arbitrary code

    PostgreSQL: CVE-2024-10979: PostgreSQL PL/Perl environment variable changes execute arbitrary code

環境変数の書き換えによるさまざまな攻撃が可能

CVE-2024-10979として追跡されているこの脆弱性は、PostgreSQL PL/Perlにおける不適切な環境変数の制御によって、権限のないデータベースユーザーが機密性の高いプロセス環境変数を変更できるというもの。

OSの環境変数には、プログラムが実行時に使用するオプションや、ソフトウェアのインストールパスなど、さまざまな情報が格納されている。 もし外部から環境変数を自由に書き換えることができるとすれば、PATH環境変数を変更して任意のプログラムを起動したり、悪意のあるクエリを実行して機密性の高い情報を盗み出したりと、さまざまな攻撃が可能となる。

CVE-2024-10979に関する情報は次のページにまとめられているが、ユーザーが修正プログラムを適用するのを待つため、現時点でその詳細は明らかにされていない。

この脆弱性の影響を受けるのは、PostgreSQL 17.0以前、16.4以前、15.8以前、14.13以前、13.16以前、12.20以前の各バージョンで、それぞれ11月14日にリリースされた最新版にアップデートすることで影響を回避できる。CVSS v3のベーススコアは8.8と評価されており、影響度が大きいため早急にアップデートすることが推奨される。

修正されたその他の脆弱性

今回のアップデートでは、CVE-2024-10979に加え、次の3件の脆弱性が修正されている。

  • CVE-2024-10976:再利用されたクエリで、意図した行とは異なる行を表示または変更できる可能性がある
  • CVE-2024-10977:中間の攻撃者が、暗号化ネゴシエーションが完了する前に偽のサーバ エラーメッセージを挿入できる可能性がある
  • CVE-2024-10978:権限の低いアプリケーションユーザーが意図した行とは異なる行を表示または変更できる可能性がある

今回のリリースには、これら以外にもさまざまな既知の問題の修正が含まれている。変更内容の詳細は、以下の各バージョンのリリースノートを参照いただきたい。