WordPressのPHP脆弱性対策の手順を示す編集部作成の説明用カバー
ノート

WordPressでPHPの脆弱性php2shellに対応する方法

WordPress利用者向けに、PHPの重大な脆弱性php2shellへの対応を解説。サイトヘルスでの確認、サーバー事業者への問い合わせ文例、更新前の準備と更新後のチェック項目をまとめます。

WordPressを運用している方は、まずサーバー会社のPHP更新状況を確認してください。2026年10月21日に公表された「php2shell」は、WordPressのプラグインではなく、サイトを動かすPHP本体の脆弱性です。WordPress管理画面で更新をすべて終えていても、PHPの修正が適用されたとは限りません。 PHP公式告知 ・ Cloudflareの対応説明

この記事は、主にレンタルサーバーでWordPressを利用している方向けです。PHPを自分で管理するVPSやDockerを使っている場合は、サーバーの運用担当者による更新作業が必要です。情報基準日は2026年10月22日です。

自分が行うこととサーバー会社が行うこと

確認すること

主な担当

利用している契約・ドメイン・PHPバージョンを確認する

サイト管理者

サーバー内のPHPパッケージやビルドを更新する

サーバー会社、または自主管理サーバーの担当者

管理画面で修正済みPHPへ切り替える

事業者の案内で必要とされる場合、サイト管理者

ファイルとデータベースのバックアップ、更新後の動作確認

サイト管理者・保守担当者

WordPress公式も、利用できるPHPの版はホスティング会社によって決まり、会社によっては利用者が管理画面で切り替えられると説明しています。 WordPress公式のPHP更新ガイド

1 サイトヘルスでPHPのバージョンを調べる

  1. WordPressの管理画面にログインします。
  2. 「ツール」から「サイトヘルス」を開きます。
  3. 「情報」タブを選びます。
  4. 「サーバー」を開き、「PHPバージョン」を記録します。

この画面にはサーバー関連の情報が表示されます。画面名や翻訳は環境によって異なることがあります。 サイトヘルスの公式説明 ・ PHPバージョンの確認方法

複数のWordPressを運営している場合は、サイトごとに確認してください。同じ契約内でも、ドメインごとにPHP設定が異なることがあります。ログインできない場合は、サーバーの管理画面や保守担当者に確認します。

「サイトヘルスに重大な問題がない」だけで、今回の修正済みとは判断しないでください。 この画面の情報を、サーバー会社の対応状況と組み合わせて確認します。

2 修正版またはサーバー会社の修正情報を確認する

上流のPHPで今回の修正が入ったのは、8.2.35、8.3.36、8.4.27、8.5.12です。 PHP公式ダウンロード

ただし、サーバー会社が独自に修正を取り込んだパッケージを使っている場合、サイトヘルスにそれより古い基本バージョンが表示されることがあります。「PHP 8.3だから大丈夫」「番号が古いから必ず未修正」と自己判断せず、契約中のプランと利用中のPHPに、両方のCVEの修正が適用されたかを確認してください。 CERT-EUの修正案内

サーバー会社の告知では、次の点を確認します。

  • お知らせが「対応予定」か「対応完了」か。
  • 自分のプランとサーバーが対象か。
  • 現在選択しているPHP系列も修正対象か。
  • 利用者による切替や再設定が必要か。

他社の「対応完了」という情報を、自分の契約へ当てはめないようにします。

サーバー会社へ送る問い合わせ文例

WordPressサイトで利用しているPHPについて確認をお願いします。

>

対象ドメイン:[自分のドメイン]

>

契約プラン・サーバー番号:[管理画面で確認した情報]

>

サイトヘルスに表示されるPHPバージョン:[確認した番号]

>

CVE-2026-109618およびCVE-2026-109619の両方について、この環境への修正適用は完了していますか。表示上のバージョンが変わらない場合は、バックポート等による対応状況を教えてください。利用者側で必要なPHP切替やその他の操作があれば、手順もご案内ください。

問い合わせにパスワードや認証キーを記載する必要はありません。

3 バックアップと互換性を確認する

PHPを切り替える前に、サイトのファイルとデータベースをバックアップし、復元方法を確認します。事業者のバックアップを利用する場合は、対象範囲と保存時点も確認してください。

WordPress本体、テーマ、プラグインについても更新状況と対応PHPを確認します。検証環境が利用できる場合は、そこで動作を確かめます。 WordPress公式の更新前の準備

PHPの同じ系列内で修正を適用することと、大きく新しい系列へ切り替えることは別です。緊急対応のために互換性を調べず一律に8.5へ変更するのではなく、事業者が案内する修正済みの選択肢を確認してください。

4 必要な更新や切替を行う

サーバー会社が修正を適用済みで、利用者側の作業が不要と案内している場合は、その対象条件を確認して次の動作確認へ進みます。切替が必要な場合は、契約中のサーバーの公式手順に従ってください。操作項目の名前や反映時間は事業者ごとに異なります。

PHPの切替項目が見当たらない場合は、WordPressに「修復プラグイン」を追加して済ませようとせず、サーバー会社へ確認します。PHPを自主管理している場合は、パッケージ更新とプロセスへの反映を保守担当者に依頼してください。

WordPress本体やプラグインの更新も並行して必要になることがありますが、それをPHP本体の修正完了として記録しないようにします。

5 更新後にサイトを確認する

確認箇所

確認する内容

公開ページ

トップページ、記事、画像が通常どおり表示されるか

管理画面

ログインと記事の編集・プレビューができるか

問い合わせ

テスト用の送信を行い、実際に受信できるか

メディア

テスト用画像のアップロードや表示ができるか

主要機能

会員機能、予約、検索など、サイトで必要な機能が動くか

サーバー情報

PHPの切替結果または事業者の修正適用結果と一致するか

通販や有料予約では、二重注文・実課金を起こさない検証方法を保守担当者と決めてください。全員に同じ確認項目が必要なわけではなく、実際に使っている機能を優先します。

切替後に白い画面やエラーが出た場合は、発生時刻、エラーログ、直前の操作を保守担当者へ伝えます。復旧のための切替先も修正済みか確認し、未修正のPHPへ戻したまま公開し続けないよう相談してください。

メンテナンスモードやWAFは更新の代わりになるか

WordPressのメンテナンス機能がPHP上で動いている場合、PHPがリクエストを処理してからメンテナンス画面を返します。今回のようにアプリケーションの処理前にも攻撃が成立し得る問題では、画面を切り替えただけで遮断できるとは判断できません。 PHP公式の影響説明

対応まで公開を制限する必要がある場合は、PHPの処理に入る前のWebサーバーやネットワーク側で制限する方法をサーバー会社に相談します。管理画面だけを隠す、特定のプラグインだけを停止するといった対処で完了にしないでください。

Cloudflareは今回の攻撃向けのWAF保護を提供していますが、PHPの更新も必要と説明しています。WAFを有効にしたことと、PHPの修正が適用されたことを分けて記録します。 Cloudflare公式

不正な変更が疑われる場合

見覚えのない管理者やファイル、不自然な外部通信などに気付いた場合は、保守担当者やサーバー会社へ連絡し、ログを残してください。調査前に不審ファイルをすべて消してしまうと、原因を追いにくくなります。侵害の疑いがある場合のアクセス制限、調査、認証情報の更新は、担当者と順序を決めて進めます。 公的機関による調査の確認項目

対応完了として記録する内容

  • 利用中のドメイン・プラン・PHP系列を確認した。
  • サーバー会社または保守担当者から、両方のCVEへの修正状況を確認した。
  • 必要な切替と実行プロセスへの反映を終えた。
  • バックアップと主要機能の動作を確認した。
  • 実施日、担当者、事業者の告知や回答を保存した。

PHPの役割を確認したい場合は、 PHPの紹介ページ も参照してください。通常のPC利用者が、PHPで作られたWebサイトを閲覧するという理由だけで、自分のPCへPHPをインストールする必要はありません。