2026/10/21 PHP2Shell、眠れなかった夜(第1話)23時の約束――予告から修正版公開までの記録

筆者:muller|2026年10月22日時点の情報です

2026年10月21日の夜、PHPの緊急セキュリティリリースへの対応で、眠れなかったエンジニアは少なくなかったと思います。筆者は、hsBoxの情報公開をお手伝いする立場で、この夜を過ごしました。

あの夜、現場では何が起きていたのか。公式の発表、各社の動き、そして情報の読み方を、数回に分けて整理していきます。第1話では、予告が出てから修正版が公開されるまでの一夜を振り返ります。

1. 予告から公開まで(日本時間)

  • 10月20日(協定世界時):PHPのセキュリティチームが、重大な脆弱性2件(いずれもCVSS v4.0で9.2)を修正する緊急リリースを予告しました。公開は10月21日14:00(協定世界時)、日本時間の23:00です。詳細、影響バージョン、修正版は公開と同時に発表するとされ、詳細が先に公になった場合や悪用の証拠が見つかった場合は、前倒しもあり得るとも書かれていました。
  • 21日未明:Sansecによると、日本時間21日0:20ごろ、PHPのリモートコード実行の脆弱性2件がまもなく開示される、という投稿がHacker Newsに現れ、のちに削除されました。watchTowrは、エンバーゴ下にあった情報が漏えいし、実在すると確認できたと発信し、2件をCVE-2026-109618とCVE-2026-109619だと指摘しました。
  • 21日日中:CERT-EU、オーストラリアのASD/ACSC、IPA、国家サイバー統括室などが、注意喚起や事前準備の呼びかけを出しました。IPAは、PHPを使うシステムの棚卸し、公式情報の注視、公開後すぐに適用できる体制づくりを挙げています。
  • 21日14時ごろ:GMO Flatt Securityが、緩和策として挙げていたsession.upload_progress.enabled=0は、攻撃自体を防げない見込みだと見解を改めました。同日、この脆弱性を悪用できると主張するコードがネット上に出回り始めたとも記しています。
  • 21日15時台から:国内サービスの停止や緊急メンテナンスが始まりました。BASEは15:50から、厚生労働省の介護サービス情報公表システムとエックスサーバーのサービスサイトおよび管理画面は16時から止まっています。夜にかけて広がり、22時台までに告知が確認できた組織は54に達しました。
  • 21日夜:首相が公式Xで、今夜の対応を呼びかけたと報じられました。
  • 22時台〜23時:修正版のPHP 8.5.12、8.4.27、8.3.36、8.2.35が公開されました。【要確認:公式アドバイザリやCVEレコードは、予告の23時より前の22時台に公開されていたとする記録があります。正確な時刻はphp.netとGHSAのタイムスタンプで確認します】

2. 「事実」と「見立て」を分けて読む

昼の時点で、公式が明らかにしていたのは、「2件」「CVSS 9.2」「23時リリース」の3点だけでした。CVE番号、リモートコード実行であること、PHP 5以降に影響しうるという範囲は、研究者や公的機関の見立てに基づくもので、開発元が確認したものではありませんでした。IPAも、影響バージョンは確認できていないと断った上で、CERT-EUの注意喚起を紹介する形をとっていました。

のちに公開された公式アドバイザリでは、CVE-2026-109618はメモリ不足時の処理に起因する破損、CVE-2026-109619は解放済みメモリを指す状態が残る問題と説明されました。影響を受けるのはPHP-FPM、mod_php、php-cgi、FrankenPHP、LiteSpeedで、なかでもmod_phpが最も危険とされています。緩和策については、公式は特定の攻撃経路を減らすだけで、更新が唯一の安全な選択肢だとしています。

つまり、夜のあいだに出回った情報の多くは、あとから「当たっていた部分」と「評価が変わった部分」に分かれました。緩和策の評価が14時に変わったのはその一例です。情報を追うときは、誰が、いつ、何を根拠に言っているのかを、時刻付きで切り分けておく必要がありました。

3. 止まった国内サービスと、その判断

piyologの集計では、22時台までに各社の告知で確認できた停止・メンテナンスの組織は54でした。サービス全体を止めたところ、管理画面や新規受付など一部だけ止めたところ、自社サイトだけ止めたところに分かれます。たとえばエックスサーバーは、サービスサイトと管理画面を止めた一方、利用者のサーバーは稼働を続けると案内しました。Cygamesのように、23時の予定より前倒しで止めたサービスもあります。

なお、この数字には注意書きがつきます。個人のアカウントの告知やBASEの出店者の措置は数えておらず、告知にPHPと明記していない組織も含まれています。

ここで強調しておきたいのは、停止は侵害を意味しないということです。多くは、修正版を当てるまでの予防的な措置でした。

筆者の見立てですが、停止が一気に広がった背景には、14時に緩和策の限界が示されたことと、実証コードの流通が伝えられたことがあったのではないでしょうか。設定変更で粘って23時を待つより、いったん止めて修正を待つほうが、説明のつく判断になっていたはずです。

4. hsBoxの一夜

hsBoxも、昨夜、利用者向けに情報公開を行いました。筆者は、文面の確認、技術面の確認、公開作業などでこの公開をお手伝いしました。

公開した内容は次のとおりです。

確実な適用方法と確認方法を重視してできるだけ即座に適用できる方法を公開する方針で対応するようにコメントしました。パッチ適用検証にて日本時間2026/10/21 23:50ころには適用方法と適用確認方法について確認できたので情報公開しました。

5. 番号だけでは判断できない:Ubuntuの例

hsBox 1.4はUbuntu 26.04 LTSをベースにしています。Ubuntu標準のphp8.5パッケージであれば、「8.5.4-0ubuntu1.5以降なら対策済み」という案内が成り立ちます。

ただし、この一文が成り立つのは、Ubuntu 26.04 LTSのphp8.5に限られます。Ubuntuの公式情報では、修正版は次のようにリリースごとに異なります。

  • 26.10:php8.5の8.5.9-0ubuntu2.1
  • 26.04 LTS:php8.5の8.5.4-0ubuntu1.5
  • 24.04 LTS:php8.3の8.3.6-0ubuntu0.24.04.13
  • 22.04 LTS:php8.1の8.1.2-1ubuntu2.28

Ubuntuは修正を元の版に取り込む(バックポートする)ため、php -vの表示がPHP公式の修正版(8.5.12など)と一致するとは限りません。26.04 LTSの基準を26.10にあてはめると、未修正のパッケージを対策済みと誤判定するおそれもあります。利用者に伝えるときは、「Ubuntuのリリース」「パッケージ名」「版数」をセットで書くのが安全です。

もう一点、パッケージを更新しただけでは対応は終わりません。PHP-FPMやApacheなどを再起動して、はじめて修正版が動きます。

6. 第1話のまとめ

  • 公式発表は最小限で、残りは各社の見立てだった。時刻付きで追い、「いつ・誰が・何を根拠に」を切り分ける
  • 国内の54組織の停止は、予防的な判断が中心で、侵害を意味しない
  • 修正済みかどうかは、番号だけでなく、ディストリビューションとパッケージの条件で確認する

次回の第2話では、昨夜の対応を書き残した人たちの記録を読みます。続く回では、修正版が手元のサーバーに届くまでの距離、そしてAIが見つけた脆弱性という背景を取り上げる予定です。

参考情報

  • The PHP Group「Upcoming Critical PHP Security Release」:https://www.php.net/archive/2026.php
  • piyolog「修正予告されたPHPの2件の深刻な脆弱性についてまとめてみた」:https://piyolog.hatenadiary.jp/entry/2026/10/21/174516
  • GMO Flatt Security Blog「PHPの重大な脆弱性「php2shell」の概要と対応指針」:https://blog.flatt.tech/entry/php2shell
  • IPA「【事前準備のお願い】PHPのセキュリティリリース公開予定について」:https://www.ipa.go.jp/security/security-alert/2026/pre-alert20261021.html
  • CERT-EU「Critical Vulnerabilities in PHP」:https://cert.europa.eu/publications/security-advisories/2026-018/
  • ITmedia NEWS「PHPの「緊急」レベルの脆弱性、開発元が修正バージョン公開」:https://www.itmedia.co.jp/news/article/2610/22/2000002480/
  • Ubuntu Security「CVE-2026-109618」:https://ubuntu.com/security/CVE-2026-109618
  • Ubuntu blog「php2shell vulnerability fixes available」:https://ubuntu.com/blog/php2shell-vulnerability-fixes-available
  • PHP公式アドバイザリ(GitHub):https://github.com/php/php-src/security/advisories/GHSA-w8hw-w9fx-j79w および https://github.com/php/php-src/security/advisories/GHSA-6wmf-4rv5-p3rp

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です