重要ポイント
- 何が起きたか: PHP の Windows 版が同梱する Brotli に境界外書き込みの脆弱性(CVE-2026-111497)があり、2026年10月26日に PHP が Windows ビルドを再公開しました。
- 対象: PHP 8.2〜8.5 の Windows 向け公式パッケージ(8.5.12・8.4.27・8.3.36・8.2.35)。Linux のパッケージ(dnf など)は別の扱いです。
- 深刻度: Google は CVSS 4.0 で 9.2(Critical)、Red Hat は CVSS 3.1 で 8.1(Important)と評価しています。
- 修正版: 末尾に
-1の付いた 8.5.12-1・8.4.27-1・8.3.36-1・8.2.35-1(Brotli 1.2.1 を同梱)。 - 悪用: PHP の告知では攻撃事例への言及はなく、CISA も 10月23日時点で悪用を確認していません。
バージョンと対処(まずここを確認)
| 製品 | 影響を受けるバージョン | 修正版(これ以上にする) |
|---|---|---|
| PHP 8.5(Windows) | 8.5.12(初回ビルド) | 8.5.12-1 |
| PHP 8.4(Windows) | 8.4.27(初回ビルド) | 8.4.27-1 |
| PHP 8.3(Windows) | 8.3.36(初回ビルド) | 8.3.36-1 |
| PHP 8.2(Windows) | 8.2.35(初回ビルド) | 8.2.35-1 |
対処: php.net の Windows 版ダウンロードから -1 付きのパッケージを入れ直します。PHP 本体のバージョン番号は変わらないため、XAMPP など PHP を同梱した配布物は、提供元が更新版を出すまで待つ必要があります。
確認: php -v では違いが分かりません。入手したファイル名の -1 と、php.net 掲載の SHA-256 ハッシュで確かめます。
概要
PHP プロジェクトは2026年10月26日、10月21日公開のリリースを Windows 向けに再ビルドしました。同梱の圧縮ライブラリ Brotli の展開処理に、境界外書き込みの脆弱性(CVE-2026-111497)があるためです。Node.js や .NET でも同じ問題への対応が出ています。Windows で PHP を動かしている場合は、再ビルド版に入れ替えてください。
影響と対処
影響を受けるもの
Windows 向けの PHP 8.2〜8.5 の公式パッケージが対象です。cURL 拡張で HTTP レスポンスの自動展開を有効にしていると、脆弱な Brotli のデコーダに到達しえます。cURL ではこの機能は初期設定で無効ですが、アプリケーションや HTTP クライアントのライブラリが有効にすることがあります。
どんな問題か
Brotli の展開処理で、確保した領域の外に書き込める欠陥です。細工された応答を受け取ると、コード実行につながるおそれがあります。
対処方法
-1 付きの Windows パッケージに更新します。自動展開を使う必要がなければ、cURL の CURLOPT_ACCEPT_ENCODING を設定していないか確認し、不要なら外してください。Linux(Amazon Linux 2023 など)は、この再ビルドの対象ではありません。
確認方法
導入しているパッケージのファイル名と、php.net の SHA-256 ハッシュを照合します。
対応チェックリスト
- Windows で PHP を動かしているサーバー・開発環境を洗い出す
-1付きの 8.5.12-1・8.4.27-1・8.3.36-1・8.2.35-1 に入れ替える- XAMPP など同梱版は提供元の更新を確認する
- cURL の自動展開(Accept-Encoding)を使っているコードを確認する
出典
- Updated PHP Windows builds for Brotli security fix(PHP プロジェクト、2026年10月26日)
- PHP Issues Second Windows Security Update in Five Days to Fix Brotli Code Execution(The Hacker News、2026年10月26日)


