PHP2Shell、AIがPHPの深刻な欠陥を発見 CVSS 9.2

暗い部屋で光るノートパソコン AI

クラウドセキュリティ企業Wizの研究チームが10月21日、PHP本体の深刻な脆弱性群「PHP2Shell」を公表しました。ログインなしで外部からサーバー上の任意のコードを動かせる欠陥で、深刻度は最大でCVSS 9.2です。PHP 5.4以降のほぼすべての版が影響を受けます。注目点は、発見から攻撃コードの作成までをAIが大きく支えたことです。同じ日にPHPの修正版が出ており、PHPを使うサーバーはすぐに更新する必要があります。

背景と文脈

PHPはWebサイトのおよそ7割で使われています。WordPressやDrupal、Joomlaといった主要なCMS(Content Management System、記事やページを管理する仕組み)も、すべてPHPで動いています。そのため、PHP本体に穴があると影響は特定のアプリにとどまりません。

今回の欠陥は、RCE(Remote Code Execution、遠隔から任意のコードを実行される脆弱性)にあたります。攻撃者がサーバーを乗っ取れる、最も重い部類の問題です。CVSS(脆弱性の深刻度を0〜10で表す共通の指標)で9.2は「緊急」に入ります。

Wizは8月19日に最初の欠陥を見つけました。翌20日にDrupal、21日にWordPressで、認証なしのRCEを確認しています。8月24日にPHPのセキュリティチームへ報告し、9月21日から共同で修正を進めました。そして10月21日、PHP 8.5.12・8.4.27・8.3.36・8.2.35の公開と同時に詳細が明らかになりました。

近年はAIで脆弱性を探す取り組みが増えています。ただ、Webの土台となる言語処理系で、ここまで広い範囲の欠陥が見つかった例は多くありません。

技術/ビジネス面

ソースコードを表示したノートパソコン
Photo by Jantine Doornbos on Unsplash

PHP2Shellは2つのCVE(CVE-2026-109618とCVE-2026-109619)にまたがる、4つのメモリ安全性の欠陥です。根本の原因は、致命的なエラーの後始末にあります。特にメモリ不足のエラーが起きたとき、壊れた内部状態が残ります。その状態を次のリクエストが使い回してしまう仕組みです。

具体的には、アップロード進捗の処理での解放済みメモリの再利用や、OPcache(PHPのコンパイル結果を保存して高速化する機能)での型の取り違えなどが含まれます。厄介なのは、アプリ側に不備がなくても攻撃が成り立つ点です。Wizの解説記事によると、「Hello World」だけを返す単純なアプリでも影響を受けます。さらに、コード実行まで至らなくても、作業プロセスのメモリからパスワードやAPIキー、証明書が漏れる経路もあります。

AIの使い方も具体的に書かれています。Wizは自社のWiz Atlasに加え、Gemini 4 ArgonとGPT-5.6 Solを使いました。AIは欠陥の発見だけでなく、PHPの版や設定、メモリ配置ごとに攻撃コードを作り直す作業も担いました。失敗の原因を分析し、試行を繰り返す部分もAIが受け持っています。

Wizは、以前なら一流のチームが数か月かけた作業を、研究者1人が1週間で終えたと説明します。複数のアプリへの攻撃の移植も数時間で済みました。防御側にとっては、攻撃の準備にかかる時間が大きく縮むことを意味します。

これからどうなるか

最優先は更新です。PHP側は完全な回避策はないとしており、修正版への更新が唯一の確実な対処になります。すぐに更新できない場合は、CDNやクラウド各社が出している緩和策を使えます。

攻撃の兆候として、Wizは次の点を挙げています。不自然なmultipartリクエストの後にメモリ上限エラーが出る、HTTP 500が繰り返される、異常に長いPHPSESSIDのCookieが届く、といった現象です。ログ監視のルールに加えておくとよいでしょう。

開発者にとっての教訓は、依存している実行環境の更新を自動化しておくことです。DockerのベースイメージやCIのPHPのバージョンを固定したままだと、今回のような修正を取り込み損ねます。また、PHP 8.2は2026年12月31日でサポートが終わるため、移行の計画も合わせて見直す時期です。

AIで欠陥を探す速度が上がれば、公表から攻撃までの猶予も短くなりそうです。パッチ適用の速さが、これまで以上に問われます。

まとめ

WizがAIの助けを借りて、PHP本体に認証不要のRCEを見つけました。PHP 5.4以降のほぼ全版が対象で、WordPressなどで攻撃が成立します。修正版は10月21日に公開済みです。PHPを使うサーバーやコンテナは、8.5.12・8.4.27・8.3.36・8.2.35への更新を急ぎましょう。

参考リンク

アイキャッチ画像: Photo by Kerde Severin on Unsplash

タイトルとURLをコピーしました