集客・売上採用業務効率化制作実績会社概要ブログ無料相談
Webマーケ

「PHPの重大な脆弱性」の通知が来た日に、関わっているサイトを全部点検した記録。「静的なページだから関係ない」が1つ間違っていました

2026年11月7日
約14分で読めます
山田 祐輔
「PHPの重大な脆弱性」の通知が来た日に、関わっているサイトを全部点検した記録。「静的なページだから関係ない」が1つ間違っていました

導入

10月21日の夜、ホームページの裏で動いているプログラム(PHP)に重大な欠陥が見つかり、修正版が公開されました。翌朝の打ち合わせで、お客様から「うちのサイトは大丈夫ですか」と聞かれました。

この記事は、その日から5日間で、制作や保守で関わっているサイトを全部点検した記録です。結論を先に書きます。

  • 点検したのは30ドメイン(ドメインは、サイトの住所にあたる名前です)、サーバー会社は4社。当社が実際にバージョンを切り替えたのは1つだけでした。20はサーバー会社が修正を済ませていて、利用者側の作業はなし。5つは休止中でした。
  • 打ち合わせで「静的なページなので関係ない」と答えたサイトが1つ、間違いでした。お問い合わせフォームの送信処理だけPHPで動いていて、しかもサポートが終わった古い版でした。
  • 別のお客様の旧サーバーを棚卸ししたら、10年前のWordPressが3つ動いていました。PHPを上げると画面が止まります。「PHPを上げる」ではなく「作り直す」案件になりました。

事業者の方に持ち帰ってほしいのは、「自分のサイトのPHPが何で動いているか」を知っているかどうかで、こういう日の過ごし方が変わる、ということです。

きっかけ

10月20日、PHPの開発チームが「重大な修正版を21日に出す」と予告しました。21日の夜、修正版(8.5.12、8.4.27、8.3.36、8.2.35)が公開されました。内容は、外部から認証なしでサーバー上のプログラムを実行されるおそれがあるもので、深刻度は最高に近い評価(CVSS 9.2)です。PHP 8.1以前には公式の修正版が出ませんでした。

翌22日の午前、お客様との打ち合わせでこの話になりました。先方が運用しているサイトは3つ。会社のサイト(WordPress)、商品の買取を受け付けるLP、ノーコードの制作サービスで作ったサイトです。私はLPについて「ページは静的なHTMLなので影響ありません」と答えました。

静的なページでもフォームの送信先だけPHPのことがある

戻って確かめたら、LPのお問い合わせフォームの送信先は confirm.php でした。確認画面とメール送信だけPHPが動いています。サーバーのPHPは7.4.33。公式の修正版が出ない版です。昼のうちに訂正の報告書を送りました。

最初に:誰が直すのかを整理

通知が来た日の判断。自分のサイトはどれか

この件で読者の方が迷うのは、「自分で何かしないといけないのか」です。答えは場所で決まります。サイトがどこで動いているか、です。

  1. レンタルサーバー(エックスサーバー、さくらなど)。PHP本体はサーバー会社が管理しているので、修正もサーバー会社がやります。利用者は「どのバージョンを使うか」を管理画面で選んでいるだけです。
  2. VPSや自前のサーバー。PHPを自分で入れているので、自分で更新します。今回、エックスサーバーもさくらも「VPSや自分で入れたPHPは対象外」と明記していました。
  3. ノーコードの制作サービス。PHPを使っていないので今回の件は対象外です。ただし、サービス側で別の事故が起きることはあります(後述)。

当社が関わるサイトはほぼ1です。だから今回の点検は、「サーバー会社の告知を読む」と「自分のサイトが何のバージョンで動いているかを見る」の2つが中心でした。

覚える言葉は3つだけ

  • PHP。ホームページの裏で動くプログラムの言語です。WordPressはこれで動いていますし、静的なサイトでもお問い合わせフォームの送信処理だけPHPということがよくあります。
  • バージョン。8.3.36 のような番号です。今回は「8.2.35、8.3.36、8.4.27、8.5.12以上なら修正済み」が目安でした。ただし8.1以前は番号が変わらないまま修正されるので、番号だけでは判断できません(後述)。
  • サイトヘルス。WordPressの管理画面にある診断ページです。「ツール」→「サイトヘルス」→「情報」→「サーバー」で、PHPのバージョンが見えます。

手順0:自分のサイトのPHPが何かを調べる

外からは分かりません。多くのサーバーはPHPのバージョンを応答に出さない設定になっています(出ている場合は、それ自体を隠したほうがよいです)。

調べ方は2つです。

  • WordPressなら、サイトヘルスを見る。管理者権限が要ります。
  • サーバーの管理画面で「PHP Ver.切替」や「言語バージョン設定」を見る。契約者か、管理を任されている人しか入れません。

今回は10月22日にエックスサーバーの管理画面がアクセス集中で開きにくくなっていたので、WordPressのサイトヘルスで先に確認しました。

静的なサイトでWordPressがなく、管理画面にも入れない場合は、バージョンを表示するだけの小さなファイルをFTPで置いて、ブラウザで開いて、すぐ消します。ファイル名は推測されない文字列にして、消したあとに404になることまで確認します。買取LPはこの方法で7.4.33と分かりました。

点検の記録

点検した30ドメインの結果

5日間で見た30ドメインを、サーバー会社ごとにまとめます。

サイトサーバー分かったことやったこと
買取LP(静的HTML+フォーム)エックスサーバー系PHP 7.4.33。公式の修正版は出ない版サーバー会社が7.4〜8.1に修正パッチを適用済みと告知(10月26日までに全サーバー完了)。緊急対応は不要と先方へ報告。8.3への切替は別途
同じ会社のWordPressサイトさくらPHP 8.3。当社の権限ではサイトヘルスが見られないさくらが全バージョンの修正を10月22日に告知。先方の情報システム部が8.3.36を確認
同じ会社のノーコードサイト制作サービス側PHPなし。今回は対象外別件でサービス側の不正アクセスが公表されていたため、フォームの回答がいくつ保存されていたかを数えて先方へ報告
サービス業のコーポレートサイト(WordPress)エックスサーバーサイトヘルスでPHP 8.1.34。修正パッチの対象だが、8.1自体がサポート終了バックアップを取ってから8.3.36へ切替。全42ページの表示を切替前後で比較して差分なし。フォーム表示も確認
同じ契約に同居する静的サイトエックスサーバーPHP 5.4.45。フォームだけPHP。SSLもなし修正パッチの対象。PHP更新とSSL化を運用契約の範囲で対応する方針に
別のクライアントの新サーバー(2ドメイン)エックスサーバー系どちらもPHP 8.3.36対応不要。予定していたサーバー移管の前にPHPを触る必要がないことを確認
同じクライアントの旧サーバー(21ドメイン)エックスサーバー系下の内訳一覧表にして、3つの提案に分けて送付
別会社経由で預かる社内向けサイト企業の自社サーバーPHP 8.3.36。ただしWordPress本体が6.6.2で古いPHPは問題なし。WordPress本体の更新を別件として案内
自社サイトシンレンタルサーバーサイトヘルスでPHP 8.3.36。修正版対応不要。サーバー会社の告知でも「急いでバージョンを変更する必要はない」を確認

旧サーバー21ドメインの内訳です。管理画面の「PHP Ver.切替」を1つずつ見て作りました。

区分件数判断
8.3.36(修正済み)5対応不要
静的サイトで7.2〜8.17バージョン切替で済む
現行のWordPressで8.11WordPress側の確認をしてから切替
WordPress 4.4.2(2016年2月版)で5.6〜7.03PHPを上げると画面が止まる。作り直しの提案
DNSの応答がない(休止中)5消すか残すかを先方が判断

この3つのWordPress 4.4.2が、今回いちばん重い発見でした。PHP 8系では動かないので、「PHPのバージョンを切り替える」という今回の対応ができません。本体もテーマもプラグインも10年分古いので、実質は作り直しです。そして、PHPの件とは別に、10年分の既知の欠陥を抱えたまま公開されています。今回の脆弱性より、こちらのほうが急ぎだと先方に伝えました。

「番号が変わらない修正」に注意

エックスサーバー系は、8.2〜8.5は修正版に更新し、5.x〜8.1は「バージョン番号を変えずに修正パッチを適用」しました。さくらも8.1以下は同じ方式で、告知に「PHPバージョンに変更はありません」と書いています。

つまり、サイトヘルスで「7.4.33」と出ても、サーバー会社の告知を読めば修正済みです。逆に言えば、番号だけ見て「修正版じゃない、危ない」と慌てる必要はなく、番号だけ見て「新しい番号だから安全」とも言えません。告知とセットで読む必要があります。

ただし、修正パッチが当たっていても、7.4や8.1はPHPの開発元のサポートが終わっています。次に同じことが起きたとき、サーバー会社が同じ対応をしてくれる保証はありません。今回「対応不要」で済んだサイトも、落ち着いたら8.3へ上げる前提で予定を組みました。

PHPを上げるときの手順(コーポレートサイトでやったこと)

8.1.34のWordPressサイトを8.3.36へ上げたときの順番です。

  1. バックアップ。プラグインで本体・テーマ・プラグイン・画像・データベースを丸ごと取る。
  2. 切替前に、全ページの表示を保存しておく。今回は42ページ。
  3. サーバーの管理画面でバージョンを切り替える。反映は数分。
  4. 全ページをもう一度取得して、切替前と比較する。差分なし。
  5. お問い合わせフォームの表示を確認する。
  6. 崩れたら、同じ画面で元のバージョンに戻す(即時に戻せます)。

ページ数が多いと4が手作業では無理なので、当社は取得と比較を自動でやっています。ここを飛ばして「トップページだけ見てOK」にすると、下層のどこかで真っ白になっていても気づきません。

本筋ではない発見:ノーコードサービスの不正アクセス

お客様の3つ目のサイトは、ノーコードの制作サービスで作ったものでした。PHPは使っていないので今回の脆弱性は対象外です。

ただ、点検の過程で、そのサービス自体が10月16日に不正アクセスを公表していたことを確認しました。9月30日から10月1日にかけて外部から侵入され、フォームの送信内容も流出した可能性がある、という内容です。

管理画面で数えると、その時点で保存されていたフォームの回答は14件で、うち社外からの問い合わせは6件でした。これは当社が決める話ではないので、件数と含まれる項目、個人情報保護委員会への報告の選択肢を先方に渡して、判断をお願いしました。

PHPの件で「全部点検しよう」と動いたから見つかったものです。1つの通知をきっかけに、関わるサイトを全部見ると、別の問題が出てきます。

つまずき早見表

起きること原因対処
「静的サイトだから無関係」と答えてしまうフォームの送信先がPHPHTMLのフォームの送信先(action)を見る。.php なら対象
外からバージョンが分からないサーバーが応答に出していないサイトヘルスか管理画面。どちらも無理なら確認用ファイルを置いて消す
管理画面が開かない告知直後のアクセス集中時間を置く。先にサイトヘルスで見る
番号が古いまま(7.4.33など)サーバー会社が番号を変えずに修正告知で「適用済み」を確認。あわせて8.3への移行を予定に入れる
PHPを上げたら画面が真っ白WordPress本体やテーマが古い先にWordPressのバージョンを見る。4.x系はPHP 8で動かない。管理画面で元に戻す
サイトヘルスが見られない権限がない先方の管理者に確認を依頼する

確認方法

自分のサイトについて、次の3つが言えれば今回の点検は終わりです。

  • サーバー会社の告知ページに、自分の使っているPHPのバージョンが「対応済み」と書かれている。
  • サイトヘルスか管理画面で、そのバージョンを自分の目で見た。
  • お問い合わせフォームから実際に1通送って、届いた。

3つ目を忘れがちです。バージョンを切り替えたあと、フォームだけ動かなくなっていることがあります。

正直に書いておくこと

  • 点検した30ドメインの内訳は、当社が切り替えた1、サーバー会社の修正で済んだ20(自社サイトを含む)、作り直しが必要な3、休止中の5、PHPを使わないノーコードの1です。「全部点検した」は「全部直した」ではありません。
  • 買取LPの8.3への切替は、この記事の時点ではまだです。先方の社内手続きで、サーバーの管理者権限を当社に移してから行います。
  • 旧WordPress 3件の作り直しは提案中で、返事待ちです。
  • 10月23日にPHPの開発元から追加の注意喚起(別の番号)が出ています。エックスサーバーの告知では、その追加分は今回の対応の対象外とされています。
  • PHP 8.2は2026年12月31日でサポートが終わります。今回8.2で対応済みになったサイトも、年内に8.3以上へ上げる必要があります。
  • 自社サイトは、サーバー会社が同系列(エックスサーバー社)で告知の対象でした。サイトヘルスで見た現在のバージョンは8.3.36で、修正版でした。

要点3行

  • レンタルサーバーなら、PHP本体の修正はサーバー会社がやります。利用者がやるのは「告知を読む」と「自分のバージョンを見る」の2つです。
  • 「静的なサイト」でも、フォームの送信処理だけPHPということがあります。HTMLの送信先を1行見れば分かります。
  • 番号が古いまま修正されることがあるので、番号だけで安全・危険を決めないでください。告知とセットで読みます。

ホームページの保守では、こうした点検を月1回、外から自動で行っています。保守先の点検結果はこちらの記事に書きました。

この記事をシェア
← 「ホームページを補助金で作りたい」と相談されて公募要領を読み直したら、作り始められるのは早くて来年5月だった。持続化補助金とホームページの相性を、制作会社の立場で整理した記録 商談前の下調べをAIに任せてみたら、1回目でお客様がLINEでだけ話したことを検索に入れていました。「読むだけ・外に出さない」AIの作り方 →
山田祐輔 山田祐輔
山田 祐輔
YUSUKE YAMADA
代表取締役 / LINE業務管理・AI業務改善・ホームページ制作
30件+
支援実績
4年
事業歴
50件+
1日の電話をLINEで管理
10日
最速で問い合わせ15件
大阪府枚方市を拠点に、中小企業・個人事業主の「業務改善」と「集客」を仕組みから支援。電話メモ・日報・予約を社員が毎日使うLINEにまとめる業務管理システムの構築と、ホームページ・ECサイトの制作から公開後の集客・運用まで、ひとつの窓口で担当。2022年の個人開業を経て2024年1月に法人化。
LINE業務管理 LINE予約システム AI業務効率化 Notion ホームページ制作 ECサイト(Shopify) LP制作 Google広告・Meta広告 MEO・SEO
お問い合わせ LINEで相談