10月21日、PHPに見つかった深刻な脆弱性2件(通称PHP2Shell)の修正版が公開されました。

私も以前運用していたサイトで調査することになったので、WordPressでサイトを運用している事業者の方に向けて、今何をやるべきかをシンプルにまとめておきます。

 

PHP2Shellとは?WordPressサイトも無関係ではありません

PHPは、WordPressを裏側で動かしているプログラミング言語です。普段の運用で意識することはほとんどありませんが、WordPressのサイトは必ずこのPHPの上で動いています。

 

今回見つかった脆弱性は、ログイン不要で、外部から細工した通信を送るだけでサーバーを乗っ取られるおそれがあるものです。深刻度は最も高い「緊急」に分類されています。

乗っ取られた場合、例えば以下のような被害につながる可能性があります。

 

①サイトの改ざんや、詐欺サイトへの自動転送
②自社ドメインから迷惑メールを大量に送られる
③お問い合わせフォームの内容などの情報漏えい

 

国内でも、エックスサーバーが公式サイトや管理画面を一時停止したり、ロリポップが予防措置として一部のサイトを止めたりと、レンタルサーバー各社がかなり慌ただしく動きました。大手のWebサービスでも、予防的にサービスを一時停止するところが相次いでいます。

ここで意外と見落とされがちなのが、「WordPress本体やプラグインをきちんと更新していても、土台のPHPが古いままだと防げない」という点です。WordPressは古いPHPでも問題なく動いてしまうので、気づかないままサポート切れのバージョンで運用されているサイトは少なくありません。

 

今やること PHPのバージョンで対応が分かれます

まずはPHPのバージョンを確認

WordPressの管理画面「ツール → サイトヘルス → 情報 → サーバー」で確認できます。サーバー会社の管理画面からも確認できます。

 

PHP 8.2〜8.5の場合 修正版の適用を確認する

以下のバージョンには、修正版が公開されています。

・PHP 8.5(8.5.12で修正)
・PHP 8.4(8.4.27で修正)
・PHP 8.3(8.3.36で修正)
・PHP 8.2(8.2.35で修正)

レンタルサーバーであれば、基本的にサーバー会社側で修正版を適用してくれます。例えばエックスサーバーは、8.2〜8.5への適用完了をすでに報告しています。ご利用中のサーバー会社のお知らせを確認しておけば大丈夫です。

 

ただし、PHP 8.2は2026年12月末でサポートが終了します。このタイミングで8.4か8.5に上げておくのがおすすめです。

 

PHP 8.1以前の場合 バージョンアップが必要

8.1以前には、PHPの開発元から修正版が出ません。サーバー会社によっては独自に修正を用意する動きもありますが、それを待つより、上記のどれかに上げてしまう方が確実です。

進め方は以下の3ステップです。

 

①バックアップを取ったうえで、取り急ぎPHPのバージョンを上げる。表示崩れや不具合が出ても一旦許容するか、メンテナンス中の表示に切り替えておく
②表示崩れや機能の不具合がないか確認し、改修する
③改修が終わったら、メンテナンス表示を解除して通常運用に戻す

①で「不具合は一旦許容」と書いたのは、多少の表示崩れより、脆弱性を放置するリスクの方がはるかに大きいからです。

作業後は最低限、トップページの表示、お問い合わせフォームの送信、管理画面へのログインの3つは確認してください。

 

 

中長期的には、WordPressとの付き合い方を見直すのもあり

WordPressは便利な反面、PHP、WordPress本体、プラグインと、更新し続けないといけないものがかなり多いです。今回のような緊急対応は、今後も起きるものと思っておいた方がいいです。

 

社内に詳しい方がいない場合、選択肢は大きく2つだと思います。

①保守を外部に任せて、更新や緊急時の対応をまとめてお願いする
②更新の手間が少ない構成に移行して、そもそもWordPressから脱却する

サイトの構成によっては、私は②も十分ありだと考えています。(お知らせ投稿のみのシンプルなサイトなど)

 

 

お困りの方はご相談ください

私は、WordPressサイトの制作・保守や、不正アクセスなどのセキュリティ対応を行っています。(システム開発、Web制作なども行っています。)

 

「自社のサイトがどのバージョンかわからない」「バージョンアップしたいけど、サイトが壊れないか不安」という方は、お気軽にご連絡ください。

メールを送る