0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

WordPressでブログやアフィリエイトをしている人が、PHPの緊急脆弱性で確認する5つのこと

0
Posted at

WordPressでブログを運営している人へ PHPの緊急脆弱性で確認する5つのこと

2026年10月22日9時40分(日本時間)時点の情報です。

何が起きたか

2026年10月21日、PHPの開発チームが深刻な脆弱性2件を直す修正版を公開しました。予告どおり、日本時間21日の夜の公開です。2件とも、深刻さを表すCVSS v4.0のスコアは9.2で、いちばん上の区分「緊急」に入ります。

php.netの勧告によると、どちらもリモートコード実行につながる脆弱性です。リモートコード実行は、ネット越しにサーバー上で好きなプログラムを動かされる攻撃です。1件はメモリ不足のときの処理の不具合、もう1件は前のリクエストの状態が残って次のリクエストで使われてしまう不具合だと説明されています。

修正版を当てていないPHPのうち、Webのリクエストを処理しているものはすべて対象です。php.netは、Apacheのmod_phpという動かし方で特に危険が大きいとしています。mod_phpでは、WordPressなどのアプリが動く前に、ログインなしのリクエストだけで攻撃が成り立つことが確かめられています。php.netの勧告には、実際に悪用されたという記述はありません。ただしセキュリティ企業のwatchTowrは、修正版が出た日本時間21日の夜に、2件の脆弱性を狙った攻撃の試みを観測していると公表しました。The Hacker Newsによると、21日の時点で、侵入に成功した例は確認されていません。php.netは、更新以外に完全な対策はないとしています。

PHPのバージョンの確かめ方や、プログラミングの学習環境での対応は、前回の記事にまとめました。この記事では、WordPressでブログやアフィリエイトサイトを運営している人に向けて、確認することを5つに絞って説明します。

ブログやアフィリエイトに関係する理由

WordPressを動かしているのは、PHPというプログラミング言語です。レンタルサーバーでWordPressを使っているなら、そのサーバーのPHPも、修正版に更新されるまでは対象に含まれます。

サイトを書き換えられて不正なプログラムを仕込まれた場合、心配なのは収入への影響です。Googleは、セキュリティの問題があるサイトの検索結果に警告ラベルを付けたり、ブラウザに警告ページを出したりすることがあります。Googleで広告を出す人向けの決まりであるパブリッシャー ポリシーでは、不正なプログラムがある画面に広告を置くことは禁止です。違反すると、広告が表示されなくなったり、アカウントが停止されたりする場合があります。

WordPress本体やプラグインを最新にしても、PHPの脆弱性は直りません。直すにはPHP自体の更新が必要です。

1. PHPのバージョンを確かめる

WordPressの管理画面で「ツール」の「サイトヘルス」を開き、「情報」タブの「サーバー」を見てください。「PHP バージョン」の行に、使っているPHPのバージョンが表示されます。

サイトヘルスの情報タブのサーバー欄。PHP バージョンの行に赤い枠

この画面は、WordPress Playgroundで動かしたWordPressです。WordPress Playgroundは、ブラウザの中だけでWordPressを動かせる公式のツールで、PHPのバージョンを切り替えて試せます。実際のサーバーでは、「サーバー構造」などの欄に別の値が表示されます。見るのは「PHP バージョン」の行だけで大丈夫です。赤い枠は、見る場所がわかるように付けました。

表示された番号のうち、最初の2つの数字で判断します。8.3.33なら8.3です。

バージョン 状態 やること
8.3、8.4、8.5 サポート中 切り替えは不要
8.2 2026年12月31日でサポート終了 近いうちに8.3以降へ切り替える
8.1以前 サポート終了 8.3以降へ切り替える

PHPの開発チームは、サポートが終わったバージョンに修正版を出しません。8.1は2025年12月31日に、7.4は2022年11月28日にサポートが終わりました。

サイトヘルスの警告だけで判断しない

サイトヘルスの「ステータス」タブは、古いPHPを使っていると警告を出します。ただし、警告の強さはバージョンによって違いました。WordPress PlaygroundでWordPress 7.1.3を動かし、PHPのバージョンを変えて確かめた結果です。

PHP 7.4.33では、「致命的な問題」に次の警告が出ました。

このサイトは古いバージョンの PHP (7.4.33) を実行しています。このバージョンではセキュリティアップデートを受け取れず、また、まもなく WordPress でサポートされなくなります。

PHP 7.4のときのサイトヘルス。致命的な問題として古いPHPの警告が出ている

一方、PHP 8.1.34では「おすすめの改善」の1つとして表示され、ラベルは「パフォーマンス」でした。

このサイトは最新ではないバージョンの PHP (8.1.34) を実行しています。更新する必要があります

PHP 8.1のときのサイトヘルス。おすすめの改善の1つとして表示されている

8.1.34は、サポートが終わった8.1の最後の版です。それでもサイトヘルスでは、致命的な問題として扱われませんでした。「致命的な問題」が出ていないから安心、とは言えません。 バージョンの番号を見て、先ほどの表で判断してください。

2. 古いバージョンなら8.3以降に切り替える

多くのレンタルサーバーでは、契約者向けの管理画面でPHPのバージョンを選べます。画面の場所はサーバー会社ごとに違うので、各社のマニュアルで確かめてください。

切り替える前に、次の2つを済ませておきます。

  • ブログのバックアップを取る
  • 使っているテーマとプラグインが新しいPHPに対応しているか、配布元のページで確かめる

切り替えたら、トップページと記事ページを開いて、表示が崩れていないかを見てください。収益化しているブログなら、広告が表示されるか、アフィリエイトのリンクが正しく開くかも確かめます。お問い合わせフォームがあれば、送信できるかも見ておきましょう。表示が崩れたときは、多くの場合は元のバージョンに戻せます。

VPSやクラウドに自分でWordPressを入れている場合は、PHPの更新も自分で行います。手順は前回の記事の「修正版が出たらすぐ更新できるようにしておく」にまとめました。

3. サーバー会社の対応を確かめる

共用のレンタルサーバーでは、PHP本体の更新はサーバー会社が行うのが一般的です。利用者は、サーバー会社のお知らせやメールで、修正版の適用が済んだかを確かめてください。

サイトヘルスの「PHP バージョン」が次の番号以上になっていれば、修正版が入っています。

ブランチ 修正版の番号
8.5 8.5.12
8.4 8.4.27
8.3 8.3.36
8.2 8.2.35

8.1以前には、PHPの開発チームから修正版が出ていません。php.netのセキュリティ担当は、8.1と8.0、7.4向けに、修正部分だけをソースコードで公開しました。サーバー会社がこれを取り込むかどうかは、会社によって違います。8.1以前を使っている場合は、修正を待つより8.3以降へ切り替えるほうが確実です。

サーバー会社によっては、番号を変えずに修正を取り込む仕組みを使っていることもあります。番号が変わらないときは、お知らせで確かめてください。しばらくたってもお知らせが見当たらなければ、サポート窓口に「PHPの修正版は適用済みですか」と問い合わせると確実です。

4. WordPress本体・テーマ・プラグインを最新にする

今回の脆弱性は、WordPress本体やプラグインを更新しても直りません。それでも、こちらも最新にしておくことが大切です。2026年7月には、WordPress本体の脆弱性「wp2shell」が見つかりました。修正版が出た2日後には、実際の攻撃も観測されています。

プラグインは、一覧画面の「自動更新」の列で「自動更新を有効化」を押すと、新しい版が出たときに自動で更新されます。

プラグイン一覧の自動更新の列。自動更新を有効化のリンクに赤い枠

自動更新の利点は、更新のたびに手で作業しなくて済むことです。ただ、更新のあとにまれに表示が崩れることもあるので、バックアップは定期的に取っておいてください。

5. Google Search Consoleに登録しておく

Search Consoleは、自分のサイトが検索でどう見えているかを確かめられる、Googleの無料ツールです。Googleがサイトにセキュリティの問題を見つけると、「セキュリティの問題」というレポートに表示されます。登録しておくと、サイトの異変に早く気づけるので安心です。

やらないほうがよいこと

php.netの勧告には、危険を一時的に減らすための設定の変更も載っています。ただしphp.netは、それだけでは安全にならないという立場です。慣れない設定を変えると、ブログが動かなくなることもあります。設定の変更で済ませず、PHPが修正版に更新されたかを確かめてください。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?