PHPの重大欠陥「PHP2Shell」 4600万台中2900万台がいまだに脆弱:修正の裏でファイアウォール25台が侵害

脆弱性を修正すれば一安心、とはいかない。PHPの重大な脆弱性「PHP2Shell」を巡っては、緊急修正の公開後も攻撃が続き、ファイアウォールや管理サーバ25台の侵害が確認された。しかも、PHPの脆弱性を修正した後にも別の欠陥への対応が必要になっている。約2900万台に脆弱性が残る中、企業は何を確認すべきなのか。

» 2026年11月06日 08時00分 公開
[@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 Kaspersky Lab(以下、Kaspersky)は2026年11月3日(現地時間、以下同)、PHPの重大な脆弱(ぜいじゃく)性「PHP2Shell」(CVE-2026-109618、CVE-2026-109619)を巡る攻撃実態と防御策を公表した。この脆弱性は認証なしで遠隔から任意のコードを実行される恐れがあり、PHPを利用するWebサイトの約70%に影響する可能性がある。

緊急修正公開から約2週間、約2900万台に脆弱性が残存

 PHP開発チームは2026年10月21日、PHP 8.2〜8.5に加え、サポート終了済みの7.4、8.0、8.1向けにも緊急修正を提供した。公開後15分以内に攻撃が始まるとの予測が出ていた他、Amazon Web Services(AWS)は修正公開の4日前から悪用の試行を観測したと報告していた。複数の国では政府関連サイトが予防的に停止され、「Wikipedia」のプロジェクト管理・バグ追跡システムも一時的にサービスを停止した。

 2026年10月21日の緊急修正公開から約2週間が経過し、実際の侵害も確認されたが、広範囲に被害が拡大するような大規模侵害は確認されていないという。しかし、修正プログラムの適用は進んでいない。Censysによると、調査可能な脆弱なPHPバージョンを実行するサーバ約4600万台のうち、約2900万台に脆弱性が残っている。

 修正公開後も悪用の試行が相次ぎ、AIを活用して作成されたとみられる新たなエクスプロイトも登場した。Palo Alto Networks傘下の部門は欧州の政府機関に対する攻撃を報告したものの、後にこの発表を撤回している。

 さらに2026年10月23日には、PHPに別の遠隔コード実行脆弱性「CVE-2026-115560」が見つかった。特定の設定とアプリケーションコードが組み合わさった環境で悪用が成立するもので、PHP開発チームは緊急修正ではなく通常のアップデートスケジュールで対応する方針を示した。暫定策として「session.upload_progress.enabled」の無効化を案内している。

 PHP2Shellの実際の悪用が裏付けられたのは2026年10月24日だ。Perplexityのアデル・カリミ氏が運用するPHP 8.4.26のハニーポットで、2つのIPアドレスから攻撃が成功した。確認された攻撃手順はCVE-2026-109618と整合していた。ただし、このハニーポットは攻撃が成立しやすい「Apache HTTP Server」の「mod_php」環境だった。CISA(米国国土安全保障省サイバーセキュリティインフラストラクチャセキュリティ庁)は2026年10月26日、両脆弱性を「KEV Catalog」(Known Exploited Vulnerabilities Catalog:悪用が確認された脆弱性カタログ)に登録した。

 同日、Dream Security(以下、Dream)は米国や日本、台湾、韓国でファイアウォールと管理サーバ計25台が侵害されたと報告した。そのうち3台は米政府関連とみられる環境にあった。攻撃者はPHP2Shellに加え、Linuxカーネルの脆弱性「Fragnesia」(CVE-2026-46300)を組み合わせて悪用し、システムの管理者権限を取得したという。

 侵害によってLDAPサービスアカウントのパスワード、ユーザーやグループの一覧、ネットワーク設定、秘密鍵などが窃取された。Dreamは2026年10月29日の更新で、対象が特定バージョンのPAN-OSを搭載したPalo Alto Networks製機器だったと明らかにした。製造元もインターネットに公開された管理インタフェースへの攻撃を認め、管理画面の外部公開停止、信頼できる内部IPアドレスへのアクセス制限、修正プログラムの適用を呼び掛けている。

約1万9000台のうち攻撃対象は240台、なぜ大規模侵害に至らないのか

 これだけ深刻な脆弱性でありながら、現時点で大規模侵害が確認されていない背景には、攻撃成立条件の複雑さがある。

 Kasperskyによると、調査で発見された約1万9000台の機器のうち、攻撃者が攻撃対象として選定したのは240台だった。PHP2Shellの悪用は、PHPのビルドやメモリ設定、リクエストの処理方式、アプリケーション固有の構成などに左右される。そのため、あらゆる環境で機能する万能な攻撃コードを作ることは難しいという。なお、240台は攻撃対象として選定された数であり、全ての侵害が確認されたわけではない。

 ただし攻撃の成立条件が限定的だからといって、リスクが低いわけではない。脆弱な環境を見極めて攻撃する手法が確立されれば、特定の組織やシステムに被害が集中する可能性もある。

PHPの更新だけでは終わらない、追加修正と侵害調査が必要

 基本となる対策は、PHPを最新の修正版に更新することだ。ただし、PHP2Shellの修正後にも追加の対応が必要になった。

 PHP開発チームは2026年10月26日、PHPが利用する外部ライブラリBrotliに存在する脆弱性「CVE-2026-111497」への修正を含む更新版を公開した。この脆弱性を悪用すると、PHPが細工された外部サーバの圧縮応答を処理した際にコード実行を許す恐れがある。同日には実際の悪用も初めて観測された。

 修正版は8.2.35-1、8.3.36-1、8.4.27-1、8.5.12-1。PHP2Shellへの対応だけでなく、Brotliの脆弱性も修正されたバージョンへの更新が必要だ。

 また、パッチ適用だけでなく、PHPを利用するシステム全体の侵害調査も欠かせない。Kasperskyは侵害の兆候として、「multipart/form-data」を含む不審なPOSTリクエスト、「PHP_SESSION_UPLOAD_PROGRESS」とファイルアップロード処理の不自然な組み合わせ、通常と異なるリクエストサイズや頻度、PHPのメモリ不足を伴うHTTP 500エラーなどを挙げている。

 脆弱性を修正しても、攻撃者が既に侵入していれば被害を防げるとは限らない。PHPを利用するコンポーネントの更新状況を確認するとともに、侵害の痕跡が残っていないかどうかを調べる必要がある。

Copyright © ITmedia, Inc. All Rights Reserved.

アイティメディアからのお知らせ

スポンサーからのお知らせPR

注目のテーマ

ID・パスワードから始める「引き算」のセキュリティ〜ゼロトラスト狂騒曲の果てに
その「AIコーディング」は本当に必要か?
Microsoft & Windows最前線2026
4AI by @IT - AIを作り、動かし、守り、生かす
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。