PHP開発チームは10月21日、認証なしで遠隔からコードを実行されるおそれがある重大な脆弱性2件を修正した、PHP 8.5.12、8.4.27、8.3.36、8.2.35を公開しました。公式発表は利用者に直ちに更新するよう強く求めています。

対象の識別番号はCVE-2026-109618とCVE-2026-109619です。ウェブサービスの利用者が入力するパスワードの問題ではなく、サービスを動かすプログラミング言語の実行基盤に関わる問題です。運営者、開発会社、ホスティング会社のどこが更新を担当するかを早く確かめる必要があります。

国内では情報処理推進機構(IPA)が21日に事前準備を呼び掛けていました。その案内では日本時間午後11時の公開予定を紹介していましたが、22日未明に確認したPHP公式ページでは修正版が公開済みになっています。公開を待つ段階の案内と、公開後に必要な対応を混同しないことが大切です。

IPAは事前案内の時点で、この2件を悪用した攻撃を確認したわけではないと明記していました。この説明はその時点の把握状況です。修正版が出た後も攻撃がないと保証するものではなく、逆に今回の発表だけで、国内の特定サイトが既に侵害されたと判断することもできません。

サイトの見た目からは対象か分かりません

PHPは、記事の表示、会員情報の処理、商品の注文など、画面の裏側の処理に使われます。一般の利用者がページを開いても、どの版が動いているかを正確に判断できるとは限りません。閲覧できる、鍵マークが付いているというだけでは、今回の修正が適用済みかどうかは分かりません。

運営者はまず、公開サイトと管理画面、それぞれの実行環境を把握する必要があります。自社で管理するサーバーと外部の予約サービスが併存している場合もあります。自分たちで更新できる場所と、提供会社の対応を待つ場所を区別すると、連絡の抜けを減らせます。

端末で表示した版番号と、実際にウェブのリクエストを処理するPHPの版が違う構成もあります。コンテナを使っていれば、手元の開発環境を更新しただけで本番が更新されたことにはなりません。ここは一般的な運用上の注意点であり、特定のサービスに未対応があると認定するものではありません。

また、OSや製品の提供元が修正を独自に取り込む場合、表示される上流の版番号だけで対応状況を決められないことがあります。公式の修正版一覧とともに、利用中の配布元が出す告知、パッケージの更新履歴、対象製品の案内を照合する必要があります。

更新作業とサービス継続を両立するために

今回のPHP公式発表は、完全な緩和策はなく、更新が安全な選択だと説明しています。特定の設定変更だけで修正版と同じ状態になったと考えるのは適切ではありません。暫定対応を採る場合も、その位置付けと有効範囲を提供元の最新案内で確認することが必要です。

実務では、更新する担当者、作業する対象、作業後に確認する機能を絞って共有することが役立ちます。連絡を広く回すだけでは、誰かが対応していると思い込む余地が残ります。購入画面、ログイン、問い合わせの送信など、事業の継続に必要な機能をあらかじめ挙げておくと、確認を具体化できます。

更新前に必要なデータと設定を保全することも、一般的な運用の基本です。ただし、バックアップがあること自体は侵入を防ぐ対策ではありません。情報が外に出た場合に保存データを戻せば解決するとは限らず、復旧の準備と侵害の有無を調べる作業は別の役割を持ちます。

管理を委託している小規模事業者は、制作会社へサイト名だけを伝えて終わらせず、本番への適用が済んだか、停止時間があるか、利用者への案内が必要かを確認するとよいでしょう。契約上の担当と実際に作業できる担当が違う場合は、双方で完了の確認先をそろえることが重要になります。

費用面では、急な作業による人件費や、停止時間中の注文への対応が課題になります。一方、未修正のまま運用を続ける判断にも、事業継続上の負担があります。個別の損害額や全国の影響件数は未確認であり、被害が一律に生じるという数字を置くことはできません。

利用者が確認できること

一般の利用者にとっては、いつものサービスが緊急メンテナンスに入る可能性があります。停止の案内を見ても、それだけで情報漏えいが発生したと考える必要はありません。予防のために止める場合と、侵害を受けて止める場合では、意味が異なります。

決済や申請の途中で画面が止まった場合は、同じ操作を繰り返す前に、受付メールや履歴、公式の障害情報を確かめる方法があります。処理が成立したか分からない段階で再送すると、重複注文など別の問題につながることがあります。個別のサービスの案内を優先してください。

更新を装ったメールにも注意が必要です。サーバーの修正は通常、サービスの運営側が行います。ニュースに便乗して、一般利用者へ認証情報の入力や不明なファイルの実行を求める連絡があっても、今回のPHP更新に必要な手続きとは限りません。公式サイトを自分で開いて案内を照合できます。

今回の脆弱性を理由に、全員が全サービスのパスワードを変更すれば問題が解消するという案内も正確ではありません。認証情報の流出が個別に確認された場合の対応と、実行基盤の修正は区別する必要があります。提供会社から対象者への正式な連絡が出た場合は、その内容を確認します。

修正後も確認は続きます

更新の完了は、ファイルを取得したことだけでは判断できません。再起動やプロセスの入れ替えが必要な構成では、古い処理が残っていないかまで確認することが考えられます。負荷分散している場合には、一部のサーバーだけで確認して全体が済んだと扱わないことも重要です。

監視の記録を保全することには、後から不審な動作を確認できる意味があります。更新できたかと、更新前に侵害されたかは別の問いです。アクセス記録の異常、意図しないファイル変更、外部通信などが見つかった場合は、担当者や専門窓口に情報をまとめて引き継ぐ必要があります。

ここで挙げた確認項目は、あらゆる構成で同じ手順を実行すれば安全になるという保証ではありません。サービスの作り方、管理範囲、提供元の修正方法によって作業は変わります。公開された攻撃方法を不用意に本番へ試すのではなく、公式の情報と管理者の手順に沿って対処することが基本です。

今回の事案は、普段の保守契約にも課題を投げ掛けます。夜間の緊急連絡先、サポート終了したソフトウェアの扱い、外部製品の更新責任が曖昧だと、判断が遅れる可能性があります。作業を終えた後に連絡経路を見直すことは、次の緊急対応で同じ確認を繰り返さないためにも役立ちます。

続報では、PHP公式の注意喚起、IPAの更新、各OS・ホスティング会社の提供状況を確認します。実際の悪用が確認された場合や、対象となる製品の追加、更新に伴う不具合が公表された場合は、その範囲を明示して追記します。未確認の被害を、脆弱性があるという事実だけから広げて書くことは避けます。

古い版と、間接的に使う製品の確認

PHP公式は、ウェブの要求を処理する構成を広くリスクの対象として挙げています。PHP-FPMを使っていることだけを理由に対象外と考えることはできません。ウェブサーバーの種類と、PHP自体の修正の必要性は別の観点です。利用している実行方式を把握した上で、公式の対象説明と照合する必要があります。

古い版のPHPでは、通常の更新経路が提供されているかも問題になります。公式サポートが終わった版を使っている場合は、契約する保守会社やOSの提供元が修正を用意するかを確認する必要があります。応急的な修正の入手と、今後も保守できる版への移行は、時間軸の異なる作業になります。

ネットワーク機器などの内部で使われるPHPは、利用者が直接更新できないことがあります。製品の画面に版番号が見当たらない場合、分解して調べるのではなく、メーカーが出す対象製品と修正方法の案内を確認することが基本です。IPAも、利用状況が不明なすべての製品について個別確認を求めるものではないと説明しています。

対応の記録には、対象の製品名、提供元の告知、適用した修正、確認した日時を残すことが考えられます。後から別の担当者が見ても、何を根拠に対応済みとしたか分かれば、同じ調査をやり直す負担を減らせます。緊急時ほど、短い記録でも判断の根拠を残す意味があります。

写真:サーバー設備のイメージ(Unsplash)。特定の被害設備を撮影した写真ではありません。

確認資料:PHP公式リリース情報 https://www.php.net/ /IPA事前案内 https://www.ipa.go.jp/security/security-alert/2026/pre-alert20261021.html

まとめ

PHPの重大な脆弱性2件について、修正版が公開されました。運営者は実際の本番環境と提供元の対応を確認し、適用後の稼働確認まで進める必要があります。利用者は個別サービスの公式案内を確認し、停止と情報漏えいを混同せずに対応することが大切です。