PHP の脆弱性 CVE-2025-1735/6491 が FIX:エクステンションを介した SQLi/DoS 攻撃

Multiple PHP Vulnerabilities Allow SQL Injection & DoS Attacks – Update Now

2025/07/04 CyberSecurityNews — PHP に深刻なセキュリティ脆弱性が発見された。この欠陥を悪用する攻撃者は、SQL インジェクション攻撃を介して、サービス拒否 (DoS) 状態を引き起こす可能性を手にする。2種類の脆弱性 CVE-2025-1735/CVE-2025-6491 が報告されているが、いずれも複数の PHP バージョンに影響を及ぼすため、速やかな修正プログラムの適用が必要となる。

主なポイント
  1. PostgreSQL の脆弱性 CVE-2025-1735 および、SOAP の脆弱性 CVE-2025-6491 は、PHP のバージョン 8.1.33/8.2.29/8.3.23/8.4.10 未満に影響を及ぼす。
  2. PostgreSQL エクステンションにおける脆弱性は、エスケープ関数における不十分なエラー・チェックに起因し、SQL インジェクションを許す可能性がある。
  3. SOAP エクステンションは、2GB を超える名前空間プレフィックスを処理する際にクラッシュし、セグメンテーション違反を引き起こす。
  4. SQL インジェクション攻撃やサービス妨害攻撃を防ぐため、修正プログラムが適用された、最新バージョンへと速やかにアップグレードすべきである。
PostgreSQL 拡張機能の脆弱性

1つ目の脆弱性 CVE-2025-1735 は、PHP の PostgreSQL エクステンションに存在するものであり、文字列エスケープ処理におけるエラー・チェックの欠如に起因する。

この脆弱性は、PHP がエスケープ関数 PQescapeStringConn() を使用する際に、適切なエラーパラ・メータを受け渡さない場合に発生する。このエラー・チェック不足は、SQL インジェクション脆弱性の発生や NULL ポインタ参照による、アプリケーション・クラッシュの原因となる。

この脆弱性は、PostgreSQL プロジェクトに報告された、PostgreSQL の CVE-2025-1094 とダイレクトに関係している。

セキュリティ研究者たちが発見したのは、PHP 実装がエスケープ操作中に、エラー報告を適切に許容していないことである。その結果として、不正にエンコードされた文字列に対して、PostgreSQL がサーバ・サイド・エラーを発生させた場合に、アプリケーションが脆弱な状態に陥りやすくなる。

それに加えて、PQescapeIdentifier() を複数回にわたって呼び出すコードにおいて、エラー報告として文書化されている、NULL 戻り値のチェックが行われていない。この見落としにより、複数のコード・パスにおいて、未定義動作 (UB) およびアプリケーション・クラッシュの可能性が生じる。

SOAP 拡張機能の脆弱性

2つ目の脆弱性 CVE-2025-6491 は、PHP の SOAP エクステンションも存在するものであり、セグメンテーション違反を引き起こし、サービス拒否攻撃の可能性を生じる。

この脆弱性は、2GB を超える完全修飾名を持つ、SoapVar インスタンスが生成される際に発生し、NULL ポインタ参照をトリガーし、アプリケーションを即座に終了させてしまうものだ。

この脆弱性は、libxml2 のバージョン 2.13 未満における制限により生じる。このバージョンの xmlNodeSetName() は、2GB を超える名前に対して正しく対応できない。そのため、XML ノード・オブジェクトが NULL 名を持つ無効な状態となり、メッセージのシリアライズ中にクラッシュが引き起こされる。

攻撃ベクターである xmlBuildQName() 関数を経由し、セグメンテーション違反を誘発する PoC エクスプロイト・コードが存在する。それにより、過大な名前空間プレフィックスを持つ、悪意の SoapVar オブジェクトの作成による、この脆弱性の発動が証明されている。

この脆弱性の CVSS スコアは 5.9 であり、中程度と評価されるが、サービス中断という深刻な事態が想定される。

CVEsDescriptionAffected ProductsCVSS 3.1 Score
CVE-2025-1735PostgreSQL extension SQL injection vulnerabilityPHP versions < 8.1.33PHP versions < 8.2.29PHP versions < 8.3.23PHP versions < 8.4.109.1 (Critical) 
CVE-2025-6491SOAP Extension Denial of Service VulnerabilityPHP versions < 8.1.33PHP versions < 8.2.29PHP versions < 8.3.23PHP versions < 8.4.10PHP <= 8.5.0-dev with libxml2 < 2.135.9 (Moderate)

この脆弱性を発見したのは、Qatar Computing Research Institute の Ahmed Leksa である。この脆弱性は、SOAP エクステンションが有効化されている、すべての PHP インストールに影響を及ぼす。

管理者が取るべき対応としては、パッチ適用済みバージョン 8.1.33/8.2.29/8.3.23/8.4.10) への速やかなアップデートである。これらのアップデート・バージョンは、2つの脆弱性に対処しており、影響を受けるエクステンションのエラー処理メカニズムを適切に復元する。