何が起きたのか
2026年10月21日、PHP 開発チームは 2 件の重大な脆弱性(CVE-2026-109618、CVE-2026-109619)の修正版を公開しました。 CVSS v4.0 で 9.2(Critical)と評価されており、認証なし・リモートからのコード実行(RCE)につながります。通称「PHP2Shell」と呼ばれています。
本来はもう少し後に公開される予定でしたが、詳細が事前に漏れたため前倒しで公開されました。 一部のセキュリティベンダーは修正公開前から攻撃の兆候を観測したと報告しており、オランダ・フィンランドでは政府系サイトが予防的に停止されています。
なぜ「WordPress などの更新」では直らないのか
問題は WordPress や Laravel などのアプリケーションではなく、それらを動かしている PHP 本体(インタプリタ)にあります。 攻撃はアプリのコードが実行されるより前の段階で成立するため、ログイン画面や WordPress のセキュリティプラグインでは防げません。 WordPress の自動更新も PHP 本体には手を付けないので、「WordPress は最新です」でも無関係です。
影響を受ける環境
PHP でウェブを配信しているすべての構成が対象です。
- Apache + mod_php(最もリスクが高いとされています)
- PHP-FPM(nginx / Apache)
- php-cgi、LiteSpeed、FrankenPHP など
修正版と、修正が出ないバージョン
| 系統 | 状態 | やること |
|---|---|---|
| PHP 8.5 | 修正済み: 8.5.12 | 更新する |
| PHP 8.4 | 修正済み: 8.4.27 | 更新する |
| PHP 8.3 | 修正済み: 8.3.36 | 更新する |
| PHP 8.2 | 修正済み: 8.2.35 | 更新する |
| PHP 8.1 以前(8.0 / 7.x / 5.x) | 公式の修正なし(サポート終了) | サポート中のバージョンへ移行する |
※ Ubuntu / Debian / RHEL 系のディストリビューションや、一部のホスティング会社は古い系統に独自に修正をバックポートしている場合があります。 その場合はバージョン番号だけでは判断できないので、ベンダーの告知を確認してください。
あなたのサイトは対応が必要か:3つの質問
1. サーバーはどこで動いていますか?
- 共用レンタルサーバー(Xserver、さくらのレンタルサーバ、ロリポップ、ConoHa WING、mixhost など) → 多くの場合、ホスティング会社が PHP を更新します。管理画面で PHP バージョンを選べる場合は、選択中のバージョンが修正済みの番号になっているかを確認してください。 基本的に自分で作業する必要はありません。
- VPS・クラウド(さくらのVPS、ConoHa VPS、AWS EC2、GCP、Lightsail など) → 自分で更新する必要があります。誰も触っていなければ、今も脆弱な状態です。
- 社内サーバー・専用サーバー → 同上。
- わからない → 制作会社やサーバー契約書を確認してください。わからないまま放置するのが一番危険です。
2. PHP のバージョンはいくつですか?
SSH で入れるなら:
php -v
WordPress なら、管理画面の「ツール → サイトヘルス → 情報 → サーバー」に表示されます。 8.2 〜 8.5 なら上の表の修正版へ更新すれば完了です。8.1 以前なら移行が必要です。
3. 誰がそのサーバーを管理していますか?
制作会社に作ってもらったきり、保守契約がない、担当者が辞めた、会社がなくなった——このケースが一番多く、一番危険です。 「誰も管理していない」サーバーは、今回に限らず次の脆弱性でも放置されます。
更新するときの最低限の手順
- バックアップ(スナップショット)を取る。VPS なら管理画面から数分でできます。これを飛ばして作業しないでください。
- パッケージマネージャで PHP を更新する(例: Ubuntu なら
apt update && apt upgrade php*、Rocky / Alma ならdnf update php*)。ディストリビューションの標準リポジトリに修正版がまだ無い場合は、Ondřej Sury PPA / Remi リポジトリなどを使います。 - PHP-FPM または Apache を再起動し、
php -vとphpinfo()で反映を確認する。 - サイトの主要画面(トップ、ログイン、フォーム送信、決済など)が動くことを確認する。
- アクセスログに見覚えのない POST やアップロード要求が無いか確認する(侵入済みの可能性を潰すため)。
8.1 以前からの移行は「更新」ではなく「アプリの互換性修正」を含む作業になります。 これについては別記事「PHP 7.x から 8.3 への移行で実際にハマった点と直し方」にまとめています。
参考リンク
- Sophos: Proof of concept exploit released for PHP vulnerabilities 109618/109619
- Canadian Centre for Cyber Security: AL26-026
- Kaspersky: CVE-2026-109618 / 109619
- SecurityWeek: PHP2Shell mass exploitation looms
「自分のサイトがどれに当たるかわからない」という方へ。
サイト URL とわかる範囲の情報を送っていただければ、対応が必要かどうかを無料で判定して返信します。不要なら不要とお伝えします。