オープンソースのデータベース管理システムとして世界中で利用されている「PostgreSQL」に、長年気づかれていなかった脆弱性が発見されました。この脆弱性はすでに修正されていますが、修正前に米国政府機関への攻撃に悪用されたことが判明しています。筆者自身も長年PostgreSQLを愛用しているため、このニュースを詳しく調べてみました。
発見された脆弱性の概要(CVE-2025-1094)
今回発見された脆弱性は「CVE-2025-1094」として登録されており、PostgreSQLのクライアントライブラリである「libpq」のエスケープ処理に関する不備が原因でした。具体的には、無効なUTF-8文字を含む特殊なバイト列を処理する際に、意図しないSQLインジェクション攻撃が可能になるという問題です。
この脆弱性は、特定のエンコーディング(BIG5やEUC_TWなど)環境下で影響を受けやすく、攻撃者が細工した入力を通じてpsql(PostgreSQLの対話型ターミナル)上で任意のコマンドを実行できる可能性がありました。
開発チームは迅速に対応し、2025年2月13日に修正版(バージョン17.3/16.7/15.11/14.16/13.19)を公開しました。その後、修正版で新たに発生した不具合も含めて修正した追加アップデート(バージョン17.4/16.8/15.12/14.17/13.20)を2月27日にリリースしています。
米国政府機関への攻撃にも利用された脆弱性
この脆弱性は、2024年12月に特権アクセス管理企業「BeyondTrust」が侵害された事件で実際に悪用されました。この事件では、「CVE-2025-1094」と別のゼロデイ脆弱性「CVE-2024-12356」(コマンドインジェクション)が組み合わされ、リモートコード実行が可能になったと報告されています。
セキュリティ企業Rapid7による調査では、中国政府系ハッカーグループ「Silk Typhoon」がこの攻撃に関与していたことが指摘されており、米国財務省のシステムにも影響が及んだとされています。
PostgreSQLユーザーとして感じたこと
筆者自身も長年PostgreSQLを愛用してきました。柔軟な設計や活発なコミュニティによるサポート、高い信頼性など、多くの魅力を感じています。今回の件では、開発チームが問題発覚後すぐに対応し、迅速なアップデート提供によってユーザーへの影響を最小限に抑えたことは高く評価できます。
また、このような事例から得られる教訓として、「ソフトウェアには未知の問題が存在する可能性が常にある」という認識を持ち続けることが重要です。定期的なバージョンアップやセキュリティ情報への注意喚起など、日頃から適切な運用管理を行うことで、安全なシステム運用につながります。
今後の対策と推奨アップデート
現在PostgreSQLを利用中の場合は、以下の修正版以降へのアップデートが推奨されています。
メジャーバージョン | 推奨される修正版 |
---|---|
PostgreSQL 17 | 17.4以降 |
PostgreSQL 16 | 16.8以降 |
PostgreSQL 15 | 15.12以降 |
PostgreSQL 14 | 14.17以降 |
PostgreSQL 13 | 13.20以降 |
今回の脆弱性は特定条件下でのみ悪用可能とはいえ、早期のアップデート対応が望まれます。また、多様なエンコーディング環境でのテストや入力検証プロセス強化など、さらなる安全対策も進められています。
最後に
オープンソースソフトウェアは多くの人々によって支えられ、その迅速な対応力や透明性も大きな魅力です。今回のPostgreSQL開発チームによる迅速かつ適切な対応は、その良さを改めて示していると言えるでしょう。筆者も引き続きPostgreSQLを安心して使い続けるために、最新情報へのアンテナを張りながら、安全運用に努めていきたいと思います。
コメント