PHPの脆弱性「php2shell」とは?WordPressサイトの確認方法と今やること

こんにちは。ワクワクラボのはぜやまです。
2026年10月21日の夜、PHPに重大な脆弱性が2件見つかり、修正版が公開されました。通称「php2shell」と呼ばれていて、ニュースでご覧になった方も多いと思います。
結論から書きます。WordPressなどPHPで動いているホームページは、サーバーで動いているPHPのバージョンを確認してください。8.2以上で修正版が当たっていれば、今回の件は対応済みです。8.1以下のままなら今回の修正は出ないので、8.2以上に上げる必要があります。
もうひとつ大事なのが、WordPress本体やプラグインを最新にしても、今回の問題は直らないということです。直す場所はWordPressではなく、サーバーのPHPです。
ワクワクラボでも、保守を担当しているお客様のサイトを一覧にして、PHPのバージョンを順に確認しています。その中で実際に迷ったところも含めて、確認の手順と対応の考え方をまとめます。
最終更新:2026年10月22日(状況が変わり次第、更新します)
php2shellとは?何が起きたのか

php2shellは、PHP本体で見つかった2件の脆弱性(CVE-2026-109618とCVE-2026-109619)の通称です。悪用されると、ログインしていない外部の人が、サーバー上で勝手にプログラムを動かせるおそれがあります。
| 項目 | 内容 |
|---|---|
| 公開日 | 2026年10月21日(修正版は日本時間22時30分ごろ公開。予定の23時より早まった) |
| 脆弱性の番号 | CVE-2026-109618/CVE-2026-109619 |
| 深刻度 | 2件ともCVSS v4.0で9.2(最も高い「Critical」) |
| 起きうること | ログイン不要の不正なプログラム実行、メモリ内の情報の流出、サービスの停止 |
| 修正版 | 8.5.12/8.4.27/8.3.36/8.2.35 |
| 8.1以下 | PHPの開発チームからの修正は出ない |
「不正なプログラムを実行される」と言われてもピンとこないですよね。ホームページで言えば、ページを書き換えられる、知らないファイルを置かれる、サーバーに保存されている情報を読まれる、といったことにつながります。
しかも今回は、すでに実際の攻撃が観測されています。Palo Alto NetworksとCloudflareが、修正版の公開前後に攻撃の通信を確認したと発表しました。
国内でも影響は大きく、さくらインターネットは21日23時からPHPのバージョンアップ作業に入り、エックスサーバーやロリポップは予防のために管理画面などを一時停止しました。BASEやコドモンなど、PHPを使うWebサービスの緊急停止も相次いでいます。
自分のサイトは対象?PHPのバージョン別にやること

対象になるのは、PHPで動いているサイトすべてです。WordPressだけでなく、PHPで作ったお問い合わせフォームやEC-CUBEのネットショップなども含まれます。やることは、今のPHPのバージョンで決まります。
| 今のPHP | 状態 | やること |
|---|---|---|
| 8.2〜8.5で、修正版(8.5.12/8.4.27/8.3.36/8.2.35)以降 | 今回の件は対応済み | 基本的に追加の作業はなし |
| 8.2〜8.5で、修正版より前の番号 | 穴が開いたまま | サーバー会社の適用を待つか、自分で更新する |
| 8.1以下(7.4など) | 公式の修正が出ない | 8.2以上、できれば8.3以上に上げる |
8.2の方は、ひとつ気をつけてください。8.2のサポートは2026年12月31日で終わります。今回の修正版で一息つけても、年内に8.3以上へ上げる計画は立てておいたほうが安心です。
HTMLだけで作られていて、PHPを一切使っていないサイトなら、今回の脆弱性が関わる場面はありません。ただ、ページはHTMLでもお問い合わせフォームだけPHP、ということはよくあります。迷ったら次の手順で確認してみてください。
WordPressのPHPバージョンを確認する方法
WordPressなら、管理画面からいちばん簡単に確認できます。
- WordPressの管理画面にログインする
- 左のメニューから「ツール」→「サイトヘルス」を開く
- 上の「情報」タブを開き、「サーバー」の項目を開く
- 「PHPバージョン」の数字を、最後の桁まで見る
最後の桁まで見るのがポイントです。たとえば同じ8.3でも、8.3.36なら修正済み、8.3.35なら修正前です。「8系だから大丈夫」とは言い切れません。
WordPressの管理画面に入れない場合は、レンタルサーバーの管理画面でも確認できます。PHPのバージョン設定の画面に、今のバージョンが表示されているはずです。
ひとつ例外があります。Ubuntuなど、OSの標準のパッケージで入れたPHPは、修正が入っても番号が変わらないことがあります。自社でサーバーを管理している場合は、番号だけで判断せず、OSの会社のセキュリティ情報も確認してください。
制作会社に任せている場合
サイトの管理を制作会社に任せている場合は、遠慮せずに聞いてしまいましょう。次の3つを聞けば十分です。
- 今のPHPのバージョンは、最後の桁までいくつか
- 今回の修正版は当たっているか、まだなら予定日はいつか
- 8.1以下なら、いつ上げるか
実際に、私たちのところにもサーバーの情報が手元になく、お客様に契約先を確認してもらっているサイトがあります。誰がサーバーを管理しているのかわからない、というのも珍しくありません。
主なレンタルサーバー各社の対応状況
共用のレンタルサーバーでは、PHPの修正版を入れるのはサーバー会社です。各社の公式のお知らせをもとに、10月22日早朝時点の状況をまとめます。
| サーバー会社 | 状況(10月22日早朝時点) |
|---|---|
| さくらのレンタルサーバ | 21日23時からPHPのバージョンアップ作業を実施。古いPHPを使っている人には8.3への切り替えを案内 |
| エックスサーバー | 21日夕方から、予防のためアカウント管理画面などを一時停止。サイトの表示とメールは通常どおり。22日未明に再開の見込み |
| ロリポップ! | 21日夕方から専用FTPなど一部の機能を停止し、公式サイトもメンテナンス中 |
| ConoHa WING | 21日19時〜22日10時に緊急メンテナンス(お知らせにPHPとは書かれていない) |
| KAGOYA | PHP 8.2〜8.5を使っている場合は、修正版を順次適用する予定。それ以外は方針を調整中 |
| カラフルボックス、バリューサーバー、コアサーバー | 22日0時以降、全サーバーで順次更新(お知らせにPHPとは書かれていない) |
状況は時間ごとに変わっています。最新の情報は、契約しているサーバー会社のお知らせや障害情報のページ、公式のSNSで確認してください。
ここで大事なのは、サーバー会社が入れてくれるのは「同じ系列の修正版」だということです。たとえば8.3.35を8.3.36にするのはサーバー会社の仕事ですが、7.4や8.1から8.3へ系列ごと切り替える操作は、利用者側でやる必要があることが多いです。
また、管理画面が止まっている間は、PHPのバージョンを切り替える操作もできません。再開のお知らせが出たら、そこに利用者への依頼が書かれていないかもあわせて読んでおきましょう。
PHPを8.3に上げるときの手順と注意点

8.1以下のサイトは、8.2以上に上げる必要があります。上げ先は8.3がおすすめです。WordPressも公式に8.3以上を推奨していますし、8.2は年末でサポートが終わるからです。
レンタルサーバーなら、作業そのものは管理画面で数分です。ただ、古いテーマやプラグインが新しいPHPに対応しておらず、表示が崩れることがあります。次の順番で進めると安心です。
- ファイルとデータベースのバックアップをとる
- WordPress本体、テーマ、プラグインを最新にしておく
- サーバーの管理画面で、PHPのバージョンを8.3に切り替える
- トップページ、よく見られるページ、お問い合わせフォームを確認する。フォームは送信して、メールが届くところまで見る
- サイトヘルスで、PHPが8.3.36以降になっているか確認する
サーバーによっては、PHPのバージョンがドメインごとではなく、契約全体でまとめて切り替わるものもあります。同じ契約にほかのサイトが入っていれば、そちらの表示も確認してください。
表示が崩れたらどうするか
今回は、先に上げてしまっていいと私たちは考えています。表示の崩れはあとから直せますが、改ざんや情報の流出は、起きてしまうと取り返しがつかないからです。
そのうえで、線引きを決めておくと慌てずにすみます。
- 見た目の崩れや注意書きの表示くらいなら、8.3のまま進めて、あとで直す
- 画面が真っ白になる、フォームが送れないなど困るものは、原因のプラグインを止めて当日中に直す
- どうしても直らないときだけ一時的に元のバージョンに戻し、早めにもう一度挑戦する
WordPressは、致命的なエラーが出ると管理者のメールに「リカバリーモード」のリンクが届きます。そこから原因のプラグインを止められることが多いので、真っ白になってもまずはメールを確認してみてください。
古いサイトでPHPを上げたときに、実際にどこを直したかは「PHPのバージョンを上げるとき、古いサイトで実際に直した3箇所」に書いています。
サーバーの都合でPHPを上げられない場合
古い契約のプランだと、そもそも8系が選べないサーバーもあります。実際に、私たちが担当しているサイトでも、契約中のプランの上限が7.4で、こちらからは上げられないケースがありました。
その場合の選択肢は3つです。
- サーバー会社に対応状況を聞く。PHPの開発チームは、7.4・8.0・8.1向けに最小限の修正のもと(ソースコード)を公開しています。これを当てるかどうかはサーバー会社しだいなので、適用済みか、予定はあるかを確認します
- 8.3が使える新しいプランか、別のサーバー会社に移る。ドメインやメールをどうするかも一緒に考える必要があるので、早めに動き始めるのがおすすめです
- 移るまでに時間がかかるなら、一時的にサイトの公開を止めたり、管理画面にアクセスできる人を絞ったりする
3は、欧州連合のCERT-EUや英国のNCSCも、すぐに修正できない場合に限って検討するよう勧めている方法です。CloudflareなどのWAF(攻撃の通信を手前で止める仕組み)も助けにはなりますが、PHP本体を直すわけではないので、あくまで追加の守りと考えてください。
なお、サイトを作った制作会社と連絡が取れず、サーバーの管理画面に入れないという方もいると思います。その場合の動き方は「制作会社が倒産してサーバーが止まる前に、サイトを救い出した手順」が参考になるはずです。
PHPを上げたあとに、改ざんされていないか確認する

PHPを上げれば、これからの侵入は防げます。ただ、上げる前にすでに入られていた場合、それまでに置かれたものは残ったままです。今回は修正版の公開前から攻撃が観測されていたので、上げたあとに一度は確認しておきたいところです。
専門の調査でなくても、次のくらいは見ておけます。
- WordPressの「ユーザー」に、見覚えのない管理者が増えていないか
- サイトを開いたときに、知らないページに飛ばされたり、見覚えのないリンクや文字が出たりしないか
- サーバーのファイルの中に、最近作られた見覚えのないファイルがないか。画像を置く「uploads」フォルダの中にPHPのファイルがあれば要注意です
- Google Search Consoleの「セキュリティの問題」に何か出ていないか
- サーバーのエラーログやアクセスログに、急に増えた不審な記録がないか
CloudflareなどのWAFで攻撃を止めた記録があっても、それだけで「入られていない」とは言い切れません。少しでもおかしいと思ったら、WordPressやサーバーのパスワードを変えたうえで、専門家に相談してください。
よくある質問
WordPressを最新にすれば、php2shellの対策になりますか?
なりません。今回の脆弱性はPHP本体にあるので、WordPress本体やプラグインを更新しても直りません。サーバーで動いているPHPを、修正版(8.5.12/8.4.27/8.3.36/8.2.35)以降にする必要があります。
レンタルサーバーなら、何もしなくて大丈夫ですか?
8.2〜8.5を使っているなら、修正版はサーバー会社が入れてくれるので、基本的にはお知らせを確認するだけで大丈夫です。8.1以下を使っている場合は、修正版が出ないので、管理画面から自分で8.2以上に切り替える必要があることが多いです。
PHPを上げると、サイトが壊れませんか?
古いテーマやプラグインを使っていると、表示が崩れたりエラーが出たりすることがあります。バックアップをとってから切り替え、困ったときは元のバージョンに戻せるようにしておけば、取り返しのつかないことにはなりません。
PHP 8.2なら安心ですか?
8.2.35以降になっていれば、今回の件は対応済みです。ただ、8.2のサポートは2026年12月31日で終わり、それ以降に見つかった脆弱性は直らなくなります。年内に8.3以上へ上げる計画を立てておくと安心です。
自分のサイトのPHPバージョンはどこで確認できますか?
WordPressなら、管理画面の「ツール」→「サイトヘルス」→「情報」→「サーバー」で確認できます。最後の桁まで見て、修正版の番号以降になっているかを確かめてください。
サーバーの管理画面に入れないのですが、サイトは止まっていますか?
そうとは限りません。エックスサーバーのように、予防のために管理画面だけを止めて、サイトの表示とメールは通常どおり動かしているサーバー会社もあります。
この記事の要点
- php2shellは、2026年10月21日に公開されたPHP本体の重大な脆弱性2件(CVE-2026-109618/109619)の通称
- 悪用されると、ログインなしでサーバー上の不正なプログラム実行につながるおそれがあり、実際の攻撃も観測されている
- 対策はPHPを修正版(8.5.12/8.4.27/8.3.36/8.2.35)以降にすること。WordPressの更新では直らない
- 8.1以下は修正が出ないので、8.2以上、できれば8.3以上に上げる
- バージョンはWordPressの「サイトヘルス」で、最後の桁まで確認する
- 上げられないサーバーなら、サーバー会社への確認、移転、一時的な公開停止を検討する
- PHPを上げたあとは、改ざんされていないかも一度確認する
ワクワクラボでは、PHPのバージョン確認とバージョンアップ、上げたあとの表示崩れの修正、他社で作ったサイトの引き継ぎをお受けしています。「うちのサイトのPHPが何かもわからない」「サーバーがどこかもわからない」という段階でも大丈夫です。名古屋・一宮を中心に、県外のご相談にも対応しています。


