セキュリティ
悪いことは(ソフトウェアのバグも?)3つ重なる
PHP2Shellをめぐる混乱が続くなか、研究者らは3つ目のPHP脆弱性を発見しました。この脆弱性を悪用されると、攻撃者がWebサイトを乗っ取ったり、脆弱なシステム上でマルウェアをリモートから実行したりする恐れがあります。ただし、この脆弱性には緊急の修正は提供されません。
PHP Foundationは金曜日、The Registerに対し、PHP2Shellを構成する2件のRCE脆弱性に続く3件目のRCE脆弱性について、CVE識別子(CVE-2026-115560)を予約したと明らかにしました。詳細なアドバイザリと修正版ソフトウェアは、次回の定期PHPリリースで公開する予定です。
PHP Foundationのエグゼクティブディレクターを務めるElizabeth Barron氏は、The Registerに次のように説明しています。「CVE-2026-115560は、設定と特定のPHPアプリケーションコードがきわめて起こりにくい形で組み合わさった場合にのみ成立します。PHPの実運用で発生するとは想定していません。この問題は、設定の変更で緩和できます。そのため現時点では、PHPセキュリティチームはPHPのWebサイトに情報提供用のアドバイザリを公開するにとどめています。アドバイザリでは、まさにこの状況を説明しています」
金曜日に公開された情報提供用のアドバイザリは、次回の定期バグ修正リリースまでsession.upload_progress.enabled=0 を設定するようユーザーに推奨しています。可能性の低いRCEの攻撃経路から完全に保護するための措置です。
この可能性の低いRCE攻撃が成立するには、アプリケーションが設定で「session.serialize_handlerをphp_binary または php_serializeに設定し、session_start()を呼び出す前に実行時にini_set()でphpに切り替える」必要があります。さらに、セッションのアップロード進捗機能が有効になっていることも条件です。
PHP Foundationによると、こうした構成は実際のアプリケーションではまず考えられません。今週初めにインターネットを大混乱に陥れた先の2件のCVEと同じような大きなリスクにはならないとしています。
その2件とは、CVE-2026-109618とCVE-2026-109619です。両者を合わせてPHP2Shellと呼んでいます。関連するこれらの脆弱性は、PHPのメモリ安全性に関する欠陥です。PHPはオープンソースのプログラミング言語で、サーバーサイドのプログラミング言語が判明しているWebサイトの約70%で稼働しています。PHP Foundationは水曜日に、この2件の脆弱性を正式に公開し、修正しました。
CVE公開の前後を通じて、大規模な悪用の試みや複数の概念実証(PoC)エクスプロイトが報告されています。しかし金曜日の時点で、PHP2Shellによる侵害の成功が公に確認された例はありません。
Barron氏は次のように述べています。「水曜日に公開した2件の脆弱性について、公開前に悪用が成功した証拠はありません。パッチ適用済みのPHPバージョンで悪用された証拠も、現時点ではありません。この問題で緊密に連携しているOpenAI、Wiz、Califからも、パッチ適用済みシステムに問題があるとの報告は受けていません」
The Registerが他の複数のセキュリティ研究者に取材したところ、いずれも悪用の試みは記録しているものの、実際に攻撃が成功した事例は確認していないと答えました。
MandiantのCTO(最高技術責任者)Charles Carmakal氏は、金曜日のLinkedIn投稿で次のように述べました。「とはいえ、限定的な形ですでに悪用が始まっている可能性があります。脅威は現実的で、きわめて深刻です」。MandiantはGoogle Cloudの傘下にあります。Google Cloudはクラウドセキュリティ企業のWizも傘下に収めており、WizはPHP2Shell脆弱性の発見と報告に貢献した組織の1つです。
Carmakal氏は「大規模な悪用に成功した証拠はない」としながらも、複数のエクスプロイトPoCがオンラインで公開されていると指摘しました。
同氏によると、その多くは「『バイブコーディング』で作られたとみられ、リモートコード実行はできません。ただし、一部のPoCについては、mod_phpのデフォルト構成に対してRCEが可能なことを確認しました。PHP-FPMには通用しません」ということです。®