PHPの重大な脆弱性「php2shell」― エックスサーバーのWordPressで確認したこと・やったこと
2026年10月21日、ホームページを動かす仕組みの一つ「PHP(ピーエイチピー)」に重大な脆弱性が2件見つかったと公表されました。通称「php2shell」と呼ばれ、多くのサイトやアプリが緊急メンテナンスに入るほどの騒ぎになっています。
この記事では、エックスサーバーで WordPress を使っている方が、何を確認し、何をすればよいのかを説明します。
エックスサーバーで WordPress ブログを運営している私が、自分のブログで実際に確認・対応した手順を、実例を交えて初心者にもわかりやすく解説します。
今回の対応の難しさは、いつもの WordPress やプラグインの更新では直らないという点でしょう。
もう一つ、契約時に自動で付く「初期ドメイン」を見落としやすい点にも注意が必要です。
とはいえ、管理画面で数分確認するだけで済む場合がほとんどです。
最低限のポイントを押さえれば迷わず対応できるので、ぜひこの機会に確認してみてください。
1. php2shell とは
php2shell は、PHP 本体に見つかった2件の脆弱性(CVE-2026-109618、CVE-2026-109619)の通称です。
脆弱性とは、プログラムのセキュリティ上の弱点のことです。
・深刻度は 10 点満点中 9.2 で、非常に高い評価です
・ログインしなくても、外部からサーバーを乗っ取られるおそれがあります
・修正版の公開直後から、攻撃の動きが報告されています
WordPress を更新しても直らない理由
PHP を家にたとえると「基礎」に当たります。WordPress 本体やプラグイン、テーマの更新は「内装のリフォーム」です。
内装をいくら新しくしても、基礎のひびは直りません。
今回は基礎である PHP そのものを新しくする必要があります。
安全なバージョン
次のバージョン以上であれば、今回の脆弱性は修正されています。
| PHP の系統 | 安全なバージョン |
|---|---|
| 8.5 系 | 8.5.12 以上 |
| 8.4 系 | 8.4.27 以上 |
| 8.3 系 | 8.3.36 以上 |
| 8.2 系 | 8.2.35 以上 |
但し、PHP 8.1 以前(8.1、8.0、7.4 など)は公式のサポートが終わっています。
レンタルサーバーを使っている場合は、8.2 以上へ切り替える必要があります。
2. エックスサーバー利用者がやることの全体像
レンタルサーバーでの対応は、大きく次の二つに分けられます。
- 運営会社がやること
・PHP 本体への修正の適用
・利用者が作業しなくても、サーバー側で新しいバージョンに更新されます - 利用者がやること
・自分のドメインで使っている PHP のバージョンを確認する
・8.1 以前になっていたら、8.2 以上に切り替える
つまり、利用者の作業は「確認」と「必要なら切り替え」だけです。
3. 実施例:私のブログで行った確認手順
3-1. サーバーパネルで PHP バージョンを確認する
まず、エックスサーバーのサーバーパネルでバージョンを確認します。
- エックスサーバーの公式サイトからログインします(メールのリンクは使いません)
- サーバーパネルを開きます
- 「PHP」の欄にある「PHP Ver.切替」をクリックします
- ドメインごとの「現在のバージョン」を確認します
下の図は、私のサーバーで確認したときの画面です。
図1:PHP Ver.切替の画面(確認時)

ブログ本体のドメイン(kamo-shika.net)は、すでに PHP 8.3.36 になっていました。
8.3 系の修正版そのものなので、運営会社によって修正が当てられていると読み取れます。
3-2. WordPress の管理画面でも確認する
念のため、WordPress の管理画面からも確認しました。
サーバーパネルは「設定」を表示する画面ですが、こちらではサイトが実際に使っている PHP を確認できます。
- WordPress の管理画面で「ツール」→「サイトヘルス」を開きます
- 「情報」タブを開きます
- 「サーバー」の項目を開き、「PHP バージョン」を確認します
図2:サイトヘルスの「サーバー」欄

私のブログでは 8.3.36 と表示され、サーバーパネルの表示と一致しました。
二つの画面で同じ値を確認できれば、安心材料になります。
3-3. 判定の目安
確認したバージョンで、次のように判断してください。
・8.3/8.4/8.5 系:運営会社が修正を当てるので、やることはありません
・8.2 系:今回は運営会社の修正を待てば大丈夫です。但し、8.2 系は 2026 年末で公式サポートが終わる予定なので、早めに 8.3 以上へ切り替えておくと安心です
・8.1 以前:すぐに 8.2 以上へ切り替えてください
3-4. 見落としやすい「初期ドメイン」
今回、私が見落としていたのがここです。
図1の一覧には、ブログ本体のほかに「初期ドメイン(サーバーID.xsrv.jp)」も表示されていました。
初期ドメインとは、エックスサーバーの契約時に自動で付くドメインのことです。
この初期ドメインは、PHP 7.4.33 のままになっていました。何も置いていないつもりでも、古い PHP のままだと攻撃の入口になるおそれがあります。
そこで、ブログ本体と同じ 8.3 系に切り替えました。
- 初期ドメインの行の右端にある鉛筆アイコン(編集)をクリックします
- バージョンから「PHP8.3.36」を選びます
- 確認画面に進み、「切り替える」を押します
- 一覧の「現在のバージョン」が変わったことを確認します
図3:切り替え後の一覧(両方とも PHP8.3.36)

切り替えた後、ブラウザで初期ドメインを開き、エックスサーバーの初期ページが表示されることを確認しました。
図4:初期ドメインを開いたときの画面

万一、切り替えで表示が崩れた場合でも、同じ画面から元のバージョンに戻せます。
但し、戻すと脆弱な状態に戻るので、その場合は置いてあるファイルを見直してください。
3-5. 運営会社の「お知らせ」を確認する
最後に、サーバーパネル右上の「お知らせ」から、メンテナンス情報とお客様へのお知らせを確認しました。
私の場合は、利用者側の作業を求めるお知らせはありませんでした。
図5:お知らせ(メンテナンス情報)の画面

この時期は、サーバー会社を名乗る偽メールにも注意が必要です。
確認は必ず、公式サイトや管理画面のお知らせから行ってください。
4. サーバー以外に個人でやること
今回の脆弱性は「ウェブサイトを動かすサーバー側」の問題です。
Windows パソコンや iPhone、iPad は通常 PHP を使っていないので、いつものOS更新を続けていれば十分です。
それ以外に個人でやることは、次の三つです。
- パソコンの開発環境を確認する
・目的:知らないうちに PHP が入っていないかを確かめる
・方法:Windows の「設定」→「アプリ」→「インストールされているアプリ」で「XAMPP」「Local」「Docker」「PHP」を検索します
・見つかった場合は、使っていなければアンインストールし、使っていれば更新してください - 便乗した偽メール・偽SMSに注意する
・「PHP の脆弱性対応のためログインしてください」といった案内のリンクは開かないようにします - 情報漏えいの連絡が来たときだけパスワードを変更する
・利用しているサービスから連絡が来た場合は、そのサービスのパスワードを変更します
・同じパスワードを他でも使っていれば、そちらも変更します
まとめ
エックスサーバーで WordPress を使っている場合の、php2shell への確認手順と対応を説明してきました。
重要なポイントは次の二つです。
・WordPress やプラグインの更新では直らないので、PHP のバージョンを確認すること
・ブログ本体だけでなく、初期ドメインなど一覧のすべてのドメインを確認すること
但し、VPS やクラウド、自宅の NAS などで自分でサーバーを管理している場合は、運営会社が修正してくれません。
この場合は、自分で PHP を更新する必要があります。
レンタルサーバーの仕組みと確認の手順を理解して取り組めば、慌てずに、それぞれの環境に見合った対応ができるでしょう。
参考リンク
・IPA(情報処理推進機構):PHPのセキュリティリリース公開予定について
・GIGAZINE:ニコニコやpixivなど各種ウェブサイトおよびアプリがPHPの緊急パッチに対応するべくメンテナンス入り
・Help Net Security:PHP2Shell: Critical PHP vulnerabilities patched(英語)

