PostgreSQL の深刻な 11 件の脆弱性が修正:任意のコード実行や SQLi の恐れ

Critical PostgreSQL Vulnerabilities Enables Code Execution and SQL Injections

2026/05/19 CyberSecurityNews — PostgreSQL Global Development Group が公開したのは、11 件の脆弱性に対する修正の情報である。すべてのサポート対象ブランチ向けに、PostgreSQL の 18.4/17.10/16.14/15.18/14.23 が、セキュリティ/メンテナンス・アップデートとしてリリースされた。 

これらのマイナー・バージョンでは、新たに発見された任意コード実行や SQL インジェクションなどの 11 件の脆弱性に加え、過去数ヶ月間に報告された 60 件以上のバグが修正されている。そのため、本番環境のデータベースにとって優先度の高いアップデートとなっている。

バージョン 14〜18 の全サポート対象ブランチが、少なくとも一部の問題の影響を受けることから、最新のメジャー・バージョンを実行しているだけではリスクを排除できない。 

そのため、管理者は迅速に PostgreSQL を停止して、バイナリを更新することでインプレース・アップグレードを実施すべきである。なお、この作業において dump/restore/pg_upgrade は不要である。

PostgreSQL の脆弱性
refint モジュールを介したコード実行

最も深刻な脆弱性 CVE-2026-6637 は、参照整合性を強制する refint モジュールに存在する。低権限のデータベース・ユーザーであっても、この脆弱性を悪用してスタックバッファ・オーバーフローを引き起こし、PostgreSQL を実行している OS アカウント権限での任意のコード実行が可能となる。この問題は、データベース・レベルの侵害から、サーバ全体の完全侵害へと直結する。

別の攻撃シナリオとして、アプリケーションがユーザー制御カラムを refint-cascade のプライマリ・キーとして公開し、更新を許可している場合が挙げられる。この場合、細工されたプライマリ・キー更新により SQL インジェクションが発生し、更新ロールの権限で任意の SQL が実行可能となる。

VulnerabilityImpact
CVE-2026-6472Privilege bypass and arbitrary SQL execution
CVE-2026-6473Potential RCE and memory corruption
CVE-2026-6474Server memory information leak
CVE-2026-6475Arbitrary file overwrite vulnerability
CVE-2026-6476SQL injection with superuser execution
CVE-2026-6477Client-side code execution risk
CVE-2026-6478MD5 credential timing leak
CVE-2026-6479SSL/GSS denial-of-service flaw
CVE-2026-6575Limited memory disclosure issue
CVE-2026-6637Stack overflow and SQL injection
CVE-2026-6638SQL injection in logical replication
レプリケーション・コンポーネントにおける SQL インジェクション

論理レプリケーション機能には、権限昇格において悪用が可能な、複数の SQL インジェクション経路が存在する。脆弱性 CVE-2026-6476 は pg_createsubscriber に影響を及ぼし、pg_create_subscription 権限を持つ攻撃者に SQL インジェクションの機会を与える。それにより、pg_createsubscriber 実行時に、スーパー・ユーザー権限による SQL 実行が可能となる。 

その一方で、CVE-2026-6638 は ALTER SUBSCRIPTION … REFRESH PUBLICATION に存在し、サブスクライバー側のテーブル作成者に対して、細工したテーブル名の悪用を許す。それにより、次回の REFRESH PUBLICATION 実行時に、パブリケーション側の認証情報を用いた任意 SQL 実行が可能となる。

これらの脆弱性が、主に影響を及ぼす範囲は、論理レプリケーションを使用している PostgreSQL 16〜18 環境となる。

その他の深刻なメモリおよびクライアント側の問題

複数の脆弱性が、メモリ安全性/DoS/クライアント・ツールに影響する。

脆弱性 CVE-2026-6473 は整数オーバーフローに起因する問題であり、メモリ割り当て不足や境界外書き込みを引き起こし、細工された入力によりセグメンテーション・フォルトを発生させる。 

ほかにも、CVE-2026-6477 は libpq クライアント・ライブラリに影響を及ぼす。lo_export()/lo_read() などの大規模オブジェクト関数において、PQfn が安全でない方法で使用されることで、サーバ側スーパー・ユーザーが psql や pg_dump などのクライアント・ツールに対して巨大レスポンスを送信することが可能となる。それにより、スタック・メモリが書き換えられ、クライアント側でコード実行が引き起こされる恐れがある。 

また、脆弱性 CVE-2026-6475 により、バックアップ・ユーティリティが影響を受ける可能性がある。pg_basebackup (プレーン形式) および pg_rewind がシンボリック・リンクを追跡し、攻撃元のスーパー・ユーザーが指定した、シェル・プロファイルなどの任意のローカル・ファイルの上書きが可能となる。

なお、2026年11月12日に、PostgreSQL 14 に対するサポートが終了する予定であり、それ以降は修正が提供されない。そのため、現時点で PostgreSQL 14 を使用している組織は、14.23 を適用した上で、新しいサポート対象ブランチへの移行計画を開始する必要がある。 

また、コード実行/SQL インジェクション/メモリ破損/クライアント側リスクが連鎖する可能性があるため、特にインターネット公開環境やマルチ・テナント環境においては、これらのアップデートに緊急に対応する必要がある。各チームは、18.4/17.10/16.14/15.18/14.23 への更新を優先し、refint/論理レプリケーション/クライアント・ツールの利用状況を見直し、ハードニングを実施すべきである。