PHPの重大な脆弱性2件(CVE-2026-109618・CVE-2026-109619、どちらもCVSS v4.0で9.2)が、2026年10月26日にCISA(米国のサイバーセキュリティ機関)の「KEV」に追加されました。KEVは、実際に悪用された脆弱性のカタログです。修正版はPHP 8.5.12・8.4.27・8.3.36・8.2.35で、まだ更新していないなら今すぐ更新してください。
前の記事(10月21日)の続報です。あの記事では、「すでに攻撃されているか」を確認できず、「CISAのKEVにも載っていない」と書きました。その状況が変わりました。CISAは10月26日にこの2件をKEVに加え、連邦民間機関(米国)の対処期限を10月29日にしています。ただし、CISA自身は攻撃の中身(誰が・何件・どの経路で)を書いていません。他社(AWS、Sophos)が公表している観測は、下の「他社が公表している攻撃の状況」にまとめました。分かっていることと分からないことは分けて書きます。
スコアの出どころを明記します。9.2は、採番元(CNA)のPHPグループが付けたCVSS v4.0の値で、前の記事と同じです。NVDは10月26日に2件とも「Analyzed」(分析済み)になり、NVD自身のCVSS v3.1を付けています。CVE-2026-109618は9.8 CRITICAL、CVE-2026-109619は8.1 HIGHです(NVDのAPIで確認)。版が違うため、数字は一致しません。この記事は、前の記事と比べやすいようv4.0の9.2を使います。
何が変わったか(日付つき)
- ▸10月17日:AWSが、公表の4日前にあたるこの日の攻撃の試みを、自社のおとりシステムの記録で確認したと書いています(AWS)
- ▸10月21日:PHPが修正版4つと告知を公開。CISAとIPAも注意喚起(この時点でCISAは「悪用された」とは書いていませんでした)。同日、公開された攻撃コードも出回り始めたと、AWSとSophosが書いています
- ▸10月22日:IPAが「PHPの脆弱性対策について(PHP2shell)」を公開。IPAのページは、悪用を「悪用された場合」と条件つきで書いています
- ▸10月23日:CISAが自分の注意喚起を更新し、検知用のSIGMAルールを追加(CISAの更新履歴)。なお、英国NCSCの10月21日付の記事は、攻撃が確認されたとは書いていません
- ▸10月26日:CISAが2件をKEVに追加。NVDの記録も同日に「Analyzed」になりました
- ▸10月29日:KEVに書かれた、米国の連邦民間機関の対処期限(米国の機関向けの期限で、日本の事業者に義務はありません)
「KEVに載った」とは何を意味するか
- ▸意味すること:CISAが、この2件について「実際に悪用された」と判断して、カタログに入れたということです。前の記事の『攻撃は未確認』という部分は、もう使えません
- ▸意味しないこと:自分のサーバーが攻撃されたという意味ではありません。攻撃の件数・時期・手口は、CISAの注意喚起にもKEVの記録にも書かれていません(他社の観測は次の節)。ランサムウェアでの悪用かどうかは、KEVで「不明(Unknown)」です
- ▸NVDの記録との時差:NVDに載るCISAの評価(SSVC、10月21日付)は「悪用なし(exploitation: none)」のままです。KEVの追加(10月26日)より前の判断なので、古いほうの記録は、今の状況を表していません(当サイトの読み取り)
他社が公表している攻撃の状況
- ▸AWS(10月21日公開):自社のおとりシステム(MadPot)で、10月17日に攻撃の試みを確認。これは公表の4日前です。10月21日にも、PHPの禁止解除(14:00 UTC)の前から複数の試みがあり、解除後は数時間のうちに攻撃コードが使われたと書いています。攻撃者は複数とみられる、一方で「成功したかは不明」とも書いています
- ▸Sophos(10月21日公開、10月23日まで更新):攻撃コード(PoC)が公開されていると書いています。観測したのはスキャンと、少数の失敗した攻撃の試みで、Miraiから派生した不正プログラムを送り込もうとしてブロックされたと書いています。「この脆弱性による侵害の成功の証拠はない」としています。10月22日に「成功を1件確認」と書いたものは、のちに訂正されています
- ▸CISAのSIGMAルール:参考資料に、公開されている攻撃コードのページが複数並んでいます(CISA)
- ▸読み方:これらは各社が自社の観測を書いたものです。日本国内の被害や、攻撃の成功件数を示すものではありません。ただし、公表前から攻撃の試みがあり、公表後は攻撃コードが出回っていることは、2社が別々に書いています
今すぐ行う対策
- ✓★自分のPHPの版を確認する。コマンドラインで `php -v`。Webサーバーが使うPHPは別の版のことがあるため、管理画面やphpinfo()でも確認します(当サイトの補足)。確認の手順は、下の環境別ガイドにあります
- ✓修正版へ更新する。8.5系は8.5.12、8.4系は8.4.27、8.3系は8.3.36、8.2系は8.2.35です(PHP公式・CISA・IPA)
- ✓更新したら、PHPのワーカー(プロセス)を再起動して、新しい版に入れ替える(当サイトの補足)
- ✓ホスティング/マネージドサービス/コンテナの場合は、事業者やイメージの更新状況を確認する。自分で更新できないときは、事業者の対応を待つことになります。PHPが他の製品の中に組み込まれていることもあるので、全体の棚卸しが必要です(CISA、NCSC)
- ✓8.1以前には、PHPの通常の修正版(リリース)が出ません。ソースからビルドする人向けに、PHPは7.4・8.0・8.1の最小限のソースのバックポートをGitHubのブランチで出しています(前の記事)。基本の対処は、IPAが求める、サポート中の版へ上げるか、修正済みの製品・サービスへ移ることです。更新や移行が終わるまでは、アクセス制限や、場合によっては公開の停止も検討します(IPA、CISA)
- ✓更新が10月17日より後になった人は、更新前の期間も見直す。AWSは「公表日ではなく、最初に確認された攻撃の日から調べる」ことを勧めています。「やられた」と決めつける必要はありませんが、未修正のPHPを公開していた期間は、下の「痕跡の見方」で確認するのが安全です(AWSの助言と当サイトの補足)
版の確認や、更新が反映されたかの調べ方は、環境別のガイドを使ってください。更新できないときの部分的な緩和策(`memory_limit=-1` など)は、前の記事にまとめてあります。公式は、更新だけが完全な解決策で、緩和策は部分的だと書いています。
痕跡の見方(公表されている範囲)
CISAのSIGMAルール(検知用の定義)には、報告されたインフラやIoC(侵害の証拠となる情報)、公開された攻撃コードに出てくる文字列が含まれています。ただし、このルールは「test」の段階で、環境に合わせた調整が前提です。一致しても侵害の確証ではなく、誤検知もありえます。ログに無いことは、安全の証明になりません。
- ▸CISA:PHPのワーカー(PHPを動かすプロセス)が、シェルを起動したり、ツールをダウンロードしたりしていないかを監視する。検知用のSIGMAルールはCISAのGitHubにあります
- ▸Wiz(脆弱性を報告した側):不審なマルチパート(ファイル送信形式)のリクエストのあとにメモリ制限のエラーが出る、HTTP 500が繰り返される、PHPSESSIDのレスポンスCookieが異常に大きい/壊れている、PHPのワーカーが理由なく入れ替わる、を挙げています。「アプリケーションの下の層で動くため、アプリのログには手がかりが少ない」とも書いています
- ▸AWS:フォームのアップロードに、`PHP_SESSION_UPLOAD_PROGRESS` という文字列を含むPOSTリクエストがないかを探す。Webサーバーのログを見直し、予期しないプロセスの実行やファイルの変更がないかも調べる。AWSが挙げたIPアドレスは、匿名化サービスなどの共有の基盤で、この攻撃だけのものではないため、機械的に遮断せず、確認のために使うよう書かれています(IPアドレスの一覧はAWSの記事にあります)
- ▸Sophos:異常に長いネットワークの接続、綴りの違うプロセス名、評判の低い送信元からの少量の通信を監視する
- ▸NCSC(英国):更新も停止もすぐにできないときは、侵害の兆候とバックドアを調べる。社内で難しければ、専門の事故対応事業者に頼む
確認できなかったこと
- ▸攻撃が成功した件数。CISAは攻撃の中身を書いていません。AWSは「成功したかは不明」、Sophosは「成功の証拠はない」と書いています。この記事は、成功した被害があるともないとも言えません
- ▸公開されている攻撃コードの中身と、実環境での確実さ。公開されている事実はSophosとCISAの参考資料で確認しましたが、攻撃コードのページ自体は開いていません。Sophosは、研究者の攻撃コードは検証環境でしか動かない可能性がある、と書いています
- ▸CISAのSIGMAルールのIoCの一つ一つ。精査していません。誤検知がありえるため、確認用として扱ってください
- ▸日本国内での被害。IPAのページに、国内の被害の記載はありません
- ▸NSA(米国家安全保障局)の注意喚起。CISAのページからリンクされていますが、こちらから開けなかったため、内容は確認していません
- ▸各社のパッケージ・コンテナイメージ・ホスティングの更新状況。個別には確認していません
- ▸8.1以前を含む詳しい影響範囲。NVDの記録には、CVE-2026-109618は7.3.0以降、CVE-2026-109619は5.4.0以降の版も含まれています(古い版の扱いは、NVDとPHP公式の影響範囲の表で食い違っています)。通常の修正版はなく、ソースのバックポートだけが出ています
共有するならこの3行
- ▸PHPの重大な脆弱性2件(CVE-2026-109618・CVE-2026-109619、CVSS v4.0 9.2)が、10月26日にCISAの「悪用確認」カタログ(KEV)に追加された。認証なしでリモートコード実行につながり、攻撃コードも公開されている
- ▸★8.5.12/8.4.27/8.3.36/8.2.35へ今すぐ更新し、PHPのワーカーを再起動する。ホスティング事業者の対応も確認する。8.1以前は、サポート中の版へ
- ▸公表前(10月17日)から攻撃の試みがあった。成功したかは分かっていない。更新前の期間があるなら、PHPのワーカーがシェルを起動していないか、HTTP 500が繰り返されていないかを見直す
根拠にしたページ
- CISA:Critical Vulnerabilities in PHP Require Immediate Patching(10月21日公開。10月23日・26日の更新履歴あり)↗
- CISA:Known Exploited Vulnerabilities Catalog(10月26日にCVE-2026-109618・CVE-2026-109619を追加)↗
- NVD:CVE-2026-109618↗
- NVD:CVE-2026-109619↗
- IPA:PHPの脆弱性対策について(CVE-2026-109618、CVE-2026-109619:PHP2shell)↗
- PHP.net:2026年のニュース(10月21日のセキュリティ告知)↗
- GitHub php/php-src:GHSA-w8hw-w9fx-j79w(CVE-2026-109618)↗
- GitHub php/php-src:GHSA-6wmf-4rv5-p3rp(CVE-2026-109619)↗
- 英国NCSC:Critical security issue affecting PHP↗
- Wiz:php2shell(発見者による解説)↗
- CISA:SIGMAルール(検知用)↗
- AWS:PHP2Shellが公表前から悪用されていたことを確認(2026年10月21日)↗
- Sophos:PHPの脆弱性の攻撃コードが公開(10月23日まで更新)↗
