- 重要度
- 重要度:5段階中2 攻撃が確認された製品の弱点
- 公表日
- 2026.10.21
- 原因の分類
- 製品・サーバーの脆弱性
- 対策可能性
- 判定保留
この記事の3行まとめ
- PHPに認証なしで遠隔からコードを実行される緊急の脆弱性が2件見つかった
- ファイル送信の処理に問題があり、悪用されるとサーバーで任意のコードを実行されるおそれ
- PHPを修正版に更新するのが確実な対策で、AWS WAFは更新までの一時的な防御に使う
2026年10月21日、PHPプロジェクトがPHPコア部分の緊急修正版を公開した。対象は遠隔コード実行の脆弱性CVE-2026-109618とCVE-2026-109619の2件で、CVSS v4.0で9.2(Critical)と評価されている。認証なしで攻撃者にサーバー上のコードを実行されるおそれがある。資料はPHPの修正版への更新を最優先とし、AWS WAFのルールを更新までの緩和策として紹介している。なお、別件のCVE-2026-115560は今回の修正版では直っていない。
確認された経路・公表元の推定
- Amazon Threat Intelligenceが、公表前にPHP2Shellの悪用をMadPotで検知したと、関連記事で紹介されている。
- 2026年10月21日、PHPプロジェクトが、認証なしでサーバー上のコードを実行される2件の脆弱性について緊急修正版を公開した。
- CVE-2026-109618では、リクエストの途中でPHPのメモリが不足すると、メモリの内容がおかしくなる。
- CVE-2026-109619では、1回のリクエストが残した古いデータを、同じワーカープロセスの後続リクエストが再利用する。
- 2026年10月23日、PHPプロジェクトが別件のCVE-2026-115560を公表した。10月21日の修正版では修正されていない。
根拠の要点
資料は、2件の脆弱性がPHPのmultipart/form-data(ファイル送信に使われる形式)の処理にあり、認証なしで攻撃できると説明している。根拠は、PHP公式の勧告(GHSA-w8hw-w9fx-j79w、GHSA-6wmf-4rv5-p3rp)と2026年10月21日のPHPセキュリティ更新発表である。AWS WAFは緩和策であり、修正版への更新が唯一の完全な対策と明記している。
資料の基準時点:2026年10月23日の更新時点(取得日2026年10月25日)
当時、対策できたのか
判定保留
資料は、PHPが2026年10月21日に修正版を公開したと説明している。また、悪用が公表前から検知されていたとも示している。一方、攻撃の開始時期、利用者側で修正が適用されていた範囲、攻撃時点の防御条件は書かれていない。そのため、既知の脆弱性への対策の欠落は確認できず、判定を保留した。
公表された対策
- PHPを8.5.12、8.4.27、8.3.36、8.2.35のいずれかの修正版に更新する。資料は修正版への更新が唯一の完全な対策だと明記している。
- PHP 8.1以前はサポートが終了しているため、ディストリビューションや長期サポートの提供元に修正の提供を確認するか、サポートされるブランチへの移行を計画する。
- AWS WAFのPHPアプリケーション用マネージドルールグループを既定バージョン(2.4以降)で有効にし、PHP2Shell_BODYとPHP2Shell_BODY_Extendedを使う。
- CoreルールセットのSizeRestrictions_BODYルールで8KBを超える本文をブロックする。
- multipart/form-dataを受け付けないアプリケーションでは、その形式のリクエストをブロックするルールを追加する。
- session.upload_progress.enabled=0を設定し、全ワーカーを再起動する。修正後も、CVE-2026-115560への対策として維持する。
- PHP 8.5ではfatal_error_backtraces=0を設定し、全ワーカーを再起動する。
- pm.max_requests=1を、性能が許す範囲で設定し、リクエストごとにワーカーを再生成させる。
- エラーログを有効にし、繰り返しの警告やタイムアウトがないか確認する。ログに異常がないことは安全の証明ではない。
この事例を理解するための動画
まだ分からないこと
- 悪用が始まった正確な時期は、資料に日付で書かれていない。
- 攻撃にAIが使われたかは、資料に記載がない。
- 資料は、PHPが修正版を出すまでの暫定措置としてsession.upload_progress.enabled=0の設定を推奨している。修正版の時期は書かれていない。
- PHP 8.1以前の修正版が提供されるかは、資料に書かれていない。
- 利用者の環境で実際に被害が出たかは、資料に書かれていない。
【PHP2Shell】一体PHPに何が起こったのか?ログイン確認前に乗っ取られる脆弱性とその仕組み。