PHP2Shell、脆弱性公表の4日前にAmazonが悪用の試みを検知

Amazonによると、プログラミング言語PHPの2件の重大な脆弱性を悪用しようとする動きが、脆弱性の公表より4日前に確認されていました。現在、これらの脆弱性は大規模に悪用されています。

脆弱性は「CVE-2026-109618」と「CVE-2026-109619」で、あわせて「PHP2Shell」と呼ばれています。過去10年間にリリースされたPHPのあらゆるバージョン(バージョン5.4まで遡ります)を使用するウェブサイトで、認証なしのリモートコード実行(RCE)やサーバー乗っ取りが可能になるおそれがあります。

W3Techsの最新データによると、サーバーサイドのプログラミング言語が判明しているウェブサイトのうち、約69.7%がPHPを使用しています。その中には、WordPress、Drupal、Joomla、Magentoなど多くのコンテンツ管理システム(CMS)に加え、ECやウェブサービスのプラットフォームも含まれます。

これらのバグは8月に、米カリフォルニア州のセキュリティ企業CalifとGoogle CloudのWizの研究者が、OpenAIのプロジェクト「Patch the Planet」の協力を得て発見しました。公表は10月21日に予定されており、PHP Foundationはその日にセキュリティパッチを公開する計画でした。

ところが10月20日、Hacker Newsフォーラムの匿名ユーザーが、パッチの準備が整う前にこれらの脆弱性に関する情報の一部を漏えいさせました。

その結果、フランスの行政機関、オランダ国家サイバーセキュリティセンター、ウィーン大学など世界各地の多くの組織が、パッチ適用の準備と実施のためにウェブサイトをオフラインにしました。

現在はパッチが公開されています。Amazon Threat Intelligenceチームは公式に、10月17日付のPHP2Shell悪用の試みを観測したと確認しました。この試みは「MadPot」で発生しました。MadPotは、Amazon Web Services(AWS)がグローバルなサイバー犯罪の監視・研究・妨害のために構築した社内ハニーポットシステムです。

早期の悪用は「攻撃者」によるものか

この悪用の試みは、商用の匿名化ネットワークに紐づくIPアドレスから行われました。Amazonの研究者によると、このことは攻撃者による活動だったことを示唆しています。ただし、その攻撃者が公表前にどのようにして脆弱性の悪用情報を入手したのかは、依然として不明です。

研究者らはさらに、10月21日に、脆弱性の公表予定時刻である英国標準時午後2時の約12時間前の段階で、PHP2Shellの概念実証(PoC)エクスプロイトを複数確認したと述べています。

最も早いエクスプロイトは英国標準時の午前2時ごろに検知されました。その後、午前2時から午前8時にかけて、別のインフラからもAmazonのMadPotセンサーを狙った試みが続きました。

研究者によると、ペイロードや匿名化インフラに違いがあることから、複数の攻撃者が関与していたとみられます。ただし、こうした試みが実環境のシステムに対して成功したかどうかは不明です。

PHP2Shellのパッチが公開されてから数時間のうちに、さらにPoCエクスプロイトが登場しました。これらはほぼ即座にAmazonのセンサーに対して使用されました。

研究者らは、PHP2Shellが現在、実環境で広範に悪用されていると警告しています。

PHP2Shell悪用の試みを示す証拠が相次ぐ

ほかのセキュリティ企業や脅威インテリジェンスのチームも、CVE-2026-109618とCVE-2026-109619を実環境で悪用しようとする動きを報告し始めています。

Cloudflareの共同創業者兼CEOのMatthew Prince氏は、Xで次のように述べました。同社では、公表に先立つ10時間のうちに、これらの脆弱性を悪用しようとする試みが「数千件」あったといいます。

「それが発表から45分後には数万件に、2時間以内には数十万件に跳ね上がりました。いまでは数百万件に達しています」と同氏は付け加えました。

Beelzebub、Ellio、Recorded Future、VulnCheck、WatchTowr、Wizといったセキュリティ企業も、両方の脆弱性について、実環境での悪用の試みを示す証拠を確認しています。

Ellioのセンサーによる、10月21日の時間帯別PHP2Shellリクエスト数。出典:Ellio

ただし、こうした悪用の試みが実際のサイバー攻撃で成功したかどうかは、まだ分かっていません。

独立系の研究者を含む複数のセキュリティ専門家も、研究コミュニティ向けにPoCエクスプロイトを公開しました。これらは、パッチ未適用で脆弱なPHPバージョンを狙う攻撃者も同じように利用できます。

PHP2Shell:パッチ適用と緩和策の推奨事項

影響を受けるバージョンのPHPを運用している組織は、公開済みのセキュリティパッチをただちに適用するよう強く求められています。修正版はPHP 8.2.35、8.3.36、8.4.27、8.5.12です。PHPは、2件の脆弱性を完全に解消できる方法はアップデートだけだとしています。

ただし、公式パッチが提供されるのは、サポート対象のPHPブランチ、つまりバージョン8.2以降に限られます。

PHP 8.1以前(PHP 7とPHP 5のすべてのリリースを含む)を運用している組織には公式の修正が提供されません。緊急にサポート対象のバージョンへ移行することが推奨されます。

すぐにパッチを適用できない組織は、次のような追加のセキュリティ対策で、リスクを軽減できます。

具体的には、次のとおりです。

  • 該当する場合は、脆弱な機能を無効化する
  • 設定変更後にPHPワーカーを再起動する
  • 不要なmultipart/form-dataリクエストを制限し、リクエストボディのサイズ、multipartのセクション数、ヘッダーに上限を設けるなど、境界防御を強化する

これらの緩和策でリスクは軽減できますが、パッチ適用の代わりにはなりません。組織はメモリ枯渇を防ぐため、適切なリソース制限も維持する必要があります。

一部のベンダーは、PHP2Shellから顧客を守るためにセキュリティ強化策を導入しています。たとえばCloudflareは、無料または有料のウェブアプリケーションファイアウォール(WAF)を利用する顧客は、この脆弱性に対してデフォルトで保護されていると説明しました。

それでも、組織は自社のセキュリティ対策を検証し、可能な限り修正版のPHPへのアップグレードを優先すべきです。

画像クレジット:ODE.Studio / Shutterstock.com

翻訳元: https://www.infosecurity-magazine.com/news/php2shell-exploitation-attempt/

本記事は infosecurity-magazine.com の記事を翻訳・要約したものです。