オープンソースのスクリプト言語PHPに関連する2件の重大な脆弱性が、インターネットを支えるサーバインフラの多くに深刻な影響を及ぼす恐れがあります。
一部の研究者が「php2shell」と呼ぶこれらの脆弱性は、CVE-2026-109618とCVE-2026-109619です。CVE-2026-109618はメモリ不足状態でのメモリ破損を介したリモートコード実行(RCE)を可能にし、CVE-2026-109619は古いグローバル状態(stale global state)を介したRCEを可能にします。情報セキュリティコンサルティング企業のCalifが発見したこれらの脆弱性には、CVSS v4.0で9.2という「クリティカル」のスコアが付けられました。
WatchTowrのブログ記事によると、これら2件のPHPの脆弱性はいずれも、攻撃者がログインなしでWebサーバ上で任意のコードを実行できる状態を招きます。研究者らはブログ記事で次のように説明しています。「メモリが解放された後も古い内部データが残り、同じワーカーが後続のリクエストを処理する際にその残存データを利用できてしまいます。PHPも、これにより攻撃者がログインせずにサーバ上で自身のコードを実行できる可能性があると認めています。ネットワーク経由でサーバに到達できれば十分で、アカウントも事前のアクセス権も必要ありません」
Web公開のPHPサーバは今すぐパッチ適用を
これらの脆弱性から身を守るには、影響を受けるサーバをPHP 8.5.12、8.4.27、8.3.36、または8.2.35に更新する必要があります。サポート対象のPHPは8.2から8.5までのため、それより古いバージョンにはパッチが提供されていません。そのため、組織はサポート対象のブランチにアップグレードするか、バックポートされた修正を適用しなければなりません。PHPのセキュリティアドバイザリは、完全な解決策はアップデートのみだとしたうえで、それまでの間に被害リスクを減らすための対策も示しています。
PHPのメンテナーは昨日、当初、水曜日のUTC 14:00に協調的開示とともに緊急セキュリティリリースを行う予定だと発表していました。しかし、WatchTowrのブログ記事が説明するとおり、解禁日時(エンバーゴ)は破られました。「PHP2Shell」と呼ばれる概念実証(PoC)ツールが公になり、WatchTowrは両方の脆弱性を再現できたとしています。
Huntressのシニアプリンシパル・セキュリティリサーチャー、ジョン・ハモンド(John Hammond)氏はDark Readingの取材に対し、この情報漏えいには「防御側がシステムの棚卸しや緩和策の準備、パッチ適用の態勢づくりを早めることにつながった」という好ましい面もあったと語っています。
一方で、ハモンド氏は次のように付け加えます。「その早期警告は攻撃者も入手できました。彼らは間違いなくAIやLLMを駆使して脆弱性を見つけ出し、標的を特定し、エクスプロイトの開発や転用に着手していたでしょう」
これは理論上のリスクにとどまらないかもしれません。WatchTowrは、両方の脆弱性に対する悪用の試みを実環境で確認したと報告しています。同社の脅威インテリジェンス責任者、ジェイク・ノット(Jake Knott)氏はDark Readingに対し、これまでのところ成功した例はないものの、その状態が長く続くとは見ていないと述べました。
WatchTowrは、脆弱なPHP環境全般で悪用の可能性が広く存在すると指摘しています。PHP Foundationが最もリスクが高い構成として挙げた「Apacheモジュールとして動作するPHPを使う、インターネットに公開されたサーバ」を、セキュリティチームは優先的に対処すべきだとしています。
WatchTowrのブログ記事は次のように述べています。「Webリクエストを処理するPHP環境はすべて対象です。PHP-FPM、Apacheのmod_php、php-cgi、FrankenPHP、LiteSpeedも含まれます。PHPによれば、アプリケーションコードが実行される前に攻撃が成立しかねないmod_phpが最もリスクの高い構成です。デフォルトで有効なセッションアップロード進捗(Session Upload Progress)機能が、この問題に至る経路の一つとして確認されており、大半のデフォルト構成がその前提条件を満たしています」
オープンソースプロジェクトで相次ぐ重大なバグ
PHPは世界中のサーバで稼働し、Web開発に使われる、広く普及して手厚くサポートされたプログラミング言語です。利用する組織は、企業や中小企業から重要インフラ、自治体まで、インターネット全体に及びます。オランダの国家サイバーセキュリティセンター(NCSC)をはじめ、多くの組織が被害リスクの抑制や緊急パッチの適用のために、Webサイトやサービスを停止しました。
非営利のサイバーインテリジェンス組織、Independent Federated Intelligence Networkは、Mastodonへの投稿で次のように呼びかけました。「地元の学校や自治体、非営利団体、その他のサービスの関係者に連絡できる方は、PHPの脆弱性について警告していただけないでしょうか。こうした組織には専任のセキュリティ担当者がいないことが多く、PHP資産が露出している可能性がほぼ確実にあります」
ブログ記事の中で、Huntressのハモンド氏は、すべてのPHPインストールの棚卸し、サポート終了(EOL)となったPHPの特定、そして「PHPワーカープロセスによるシェル、インタプリタ、ダウンロードツールの起動」に対するアラート設定を推奨しています。
情報漏えいとそれに伴う混乱があったにもかかわらず、PHPのメンテナーは迅速に動き、対処の難しい2件の脆弱性について組織に準備の猶予を与えました。Mondooの最高セキュリティ責任者、パトリック・ミュンヒ(Patrick Münch)氏は、PHP Foundationの対応を高く評価しています。一方で、こうした作業をボランティアで支えることが多いオープンソース組織のリソースについては懸念を示しています。
ミュンヒ氏は次のように述べています。「PHPチームの対応は適切だったと思います。1日前に警告を出し、Linuxディストリビューションには早い段階でパッチが渡り、サポートを終了した古いバージョン向けの修正まで作成しました。多くの商用ベンダーにはできないことです。難しくなるのはphp.netより先の部分です。PHPはディストリビューションやホスティング企業、ソフトウェアベンダーがパッケージ化して配布していますが、その多くはボランティアや非常に小規模なチームが担っています」
実際、PHP2Shellの脆弱性は、5年近く前にLog4j 2で見つかったLog4Shell脆弱性を想起させます。このときも、セキュリティ業界が一丸となって、人気のオープンソースプロジェクトの重大な欠陥にパッチを当てる必要がありました。
翻訳元: https://www.darkreading.com/application-security/php2shell-bugs-red-alert-security-industry