FAQ
よくある質問
短く端的な回答です。コマンドや設定については、ナビゲーションのリンク先をご覧ください。
最終確認 2026-10-22
影響を受けるか
どの PHP バージョンが脆弱ですか?+
8.2.35、8.3.36、8.4.27、8.5.12 より前のすべてのリリースです。研究者は PHP 5.4 までさかのぼって影響を受けるコードを確認しており、その間のほぼすべてのバージョンが 2 つの CVE の少なくとも一方の影響を受けます。
PHP 8.1、8.0、7.x、5.x はサポート終了で、新しいリリースは出ません。PHP チームは自分で PHP をビルドする人向けに 7.4、8.0、8.1 の最小限のソースバックポートを公開しており、延長サポートを提供する OS ベンダーは独自の修正済みパッケージを出しています。
WordPress/Drupal/Joomla だけの問題ですか?+
違います。それらはデモの対象にすぎません。バグは PHP インタープリタにあるため、脆弱な PHP で動くサイトはすべて影響を受けます——Laravel、Symfony、Magento、Moodle、Nextcloud、MediaWiki、独自開発のコード、さらには「Hello World」スクリプトも。
攻撃者にアカウントや特定のプラグインは必要ですか?+
不要です。実証された攻撃は認証前に、通常の HTTP リクエストだけで成立します。ログインもプラグインも特別なエンドポイントも必要ありません。
PHP-FPM も影響を受けますか?それとも mod_php だけ?+
両方です。最も明確に悪用できるのは Apache + mod_php(両 CVE ともデフォルト制限で RCE 確認済み)です。PHP-FPM ではセッション経路による RCE が確認され、OOM 経路も解析上は脆弱です。FrankenPHP と LiteSpeed LSAPI は影響の可能性が高いと評価されています。
PHP CLI、cron ジョブ、キューワーカーは?+
アドバイザリは Web リクエストの処理に焦点を当てています。CLI スクリプトは通常 HTTP リクエストからは到達できませんが、同じパッケージなのでいずれにせよ一緒に更新されます。リクエストを処理する常駐ワーカー(Octane、RoadRunner、Swoole、FrankenPHP のワーカーモード)は Web 向けとして扱うべきです。
ディストリの PHP のバージョン番号が古いままです。脆弱ですか?+
そうとは限りません。Debian、Ubuntu、RHEL、SUSE は上流のバージョンを変えずにセキュリティ修正をバックポートします(例:8.3.6-0ubuntu0.24.04.x)。パッケージの changelog で CVE-2026-109618 を探してください——具体的なコマンドは 修正ガイド にあります。
修正
修正方法は?+
すべての実行環境に修正済みの PHP リリース(またはベンダーの修正済みパッケージ)をインストールし、PHP-FPM、Apache、常駐の PHP プロセスを再起動してください。これが唯一の完全な修正です。アプリの更新や設定変更では代わりになりません。
共有ホスティングを使っています。どうすれば?+
修正済み PHP ビルドを選び、ワーカーの再起動を確認してください。PHP 8.1 以前では両 CVE のベンダーバックポートを確認します。ブランチ番号だけでは修正状況を判断できません。
PHP 7.4/8.1 をすぐには更新できません。どうすれば?+
OS ベンダー(RHEL、Ubuntu Pro / ESM、Debian LTS、CloudLinux)が修正済みパッケージを提供しているか確認してください——長期サポートベンダーは事前に修正を受け取っています。自分で PHP をビルドしている場合は、PHP チームによる 7.4、8.0、8.1 向けのソースバックポートを適用します。その間は暫定対策を適用し、WAF を前段に置いたまま、8.4 か 8.5 への移行を計画してください。
WAF や CDN で守れますか?+
部分的にです。Cloudflare、Akamai、Imperva などがルールやガイダンスを公開しており、Cloudflare は Free プランも対象です。ただし対象範囲は事業者や攻撃経路によって異なり、攻撃者はすでにペイロードを変形させて回避を試みています。WAF はパッチ適用までの時間稼ぎであって、修正ではありません。
更新で何か壊れますか?+
同じブランチ内のパッチリリースなので、通常はアプリの互換性に影響しません。挙動の変化が 1 つあります:新しいハードメモリリミットはプロセスを即座に終了させるため、その場合シャットダウン関数は実行されません。メモリを多く使う処理をテストしてください。
リスクと検知
メモリ漏えいで何が漏れますか?+
PHP ワーカーのメモリにあるものすべてです:DB パスワード、API キー、セッション Cookie、他のユーザーのリクエストデータ、PHP が読み込んだ証明書や鍵。この経路はコード実行を必要としないため、より気づかれにくいです。
悪用されていますか?+
Cloudflare は 2026 年 10 月 21 日に、ルールを回避するためにペイロードを変形させた初期の攻撃を報告し、watchTowr もハニーポットで悪用を観測したと報告しています。侵害が確認された公開事例はありませんでした。エンバーゴは公開前に破られているため、能力のある攻撃者は動作するエクスプロイトを持っていると考えてください。
攻撃を受けたかどうかわかりますか?+
確実にはわかりません。有用な兆候は、multipart リクエスト後のメモリ上限の致命的エラー、HTTP 500 の集中、ワーカーのセグフォルト、異常に長いかパーセントエンコードされた PHPSESSID Cookie です。兆候がなくても安全とは限らず、バグはアプリケーションより下の層で動くため、アプリのログには何も残らないことがあります。
侵害されたと思ったらどうすれば?+
ログを保全し、ホストにパッチを当てるか隔離し(クリーンなイメージからの再構築が最善)、PHP がメモリ上で見られた機密情報をすべて入れ替え、セッションを無効化し、それらの認証情報で何にアクセスできるかを確認してください。
背景
なぜ PHP2Shell という名前なのですか?+
php2shell は、研究者が WordPress、Drupal、Joomla で認証不要のリモートコード実行を示すために使った、組み合わせのエクスプロイトスクリプトの名前です。それがそのまま研究全体の名前になりました。
誰が発見したのですか?+
Wiz Research、OpenAI Codex Security、Calif が 2026 年 8 月から 9 月にかけてそれぞれ独立に報告し、PHP セキュリティチームが修正を開発しました。Wiz によると、発見、エクスプロイト開発、パッチの検証に AI モデルが役立ったとのことです。
なぜ一部のサイトは CVSS 10.0 としているのですか?+
CVE 番号が公開前に誤った 10.0 のスコアとともに漏れたためです。両 CVE の公式な CVSS 4.0 スコアは 9.2 です。