PHP2Shell攻撃、AhnLab EDR/XDRでどのように検知するのか?
PHP2Shell脆弱性の再現テストでリモートコマンド実行の過程を確認。EDR/XDRによる異常行為の検知と対応策を紹介
PHPの重大な脆弱性であるCVE-2026-109618およびCVE-2026-109619は、認証されていない攻撃者がリモートから任意のコードを実行できるリモートコード実行(RCE)の脆弱性です。悪用されると、攻撃者はWebサーバー上でコマンドを実行し、追加の悪意ある行為を行う可能性があります。
アンラボは公開された概念実証(PoC)コードを参考に、PHP2Shell脆弱性の再現テストを実施しました。その結果、攻撃対象のサーバーが攻撃者のシステムに接続され、攻撃者がサーバーのWebサービスアカウント権限でコマンドを実行する過程を確認しました。
また、この分析を基に、AhnLab EDR/XDRを活用してPHPサービスで発生する疑わしいプロセス実行やファイル生成などの行為を検知し、対応する方法を紹介します。

出典:Denis Yevtekhov - stock.adobe.com
1. PHP2Shell脆弱性:異なる原因で発生するリモートコード実行のリスク
PHP2Shellとして知られるCVE-2026-109618およびCVE-2026-109619は、PHPの内部リクエスト処理で発生する脆弱性です。どちらも認証なしでリモートコード実行につながる可能性がありますが、発生原因は異なります。
| 区分 | CVE-2026-109618 | CVE-2026-109619 |
|---|---|---|
| 脆弱性の種類 | メモリ不足処理におけるデータ破損 | 解放済みメモリに関連する内部状態の再利用 |
| 主な原因 | リクエストデータが完全に初期化されていない状態で、メモリ不足によって処理が中断され、その後のクリーンアップ処理で誤ったデータが有効なものとして扱われる可能性 | リクエスト処理に使用された内部状態がメモリ解放後も残り、後続のリクエストで初期化前に再利用される可能性 |
| 潜在的な影響 | 認証なしのリモートコード実行 | 認証なしのリモートコード実行 |
| 深刻度 | CVSS v4.0 9.2 | CVSS v4.0 9.2 |
[表1] PHP2Shell関連脆弱性の比較
[図1] PHP2Shell脆弱性の発生過程
2つの脆弱性は内部処理で発生する問題という共通点があり、攻撃に成功するとPHP Webサービスが稼働するサーバー上で任意のコマンドが実行されるおそれがあります。
そのため、脆弱性自体へのセキュリティ対策と併せて、PHPサービスで発生する異常な行為を確認することが重要です。
2. PHP2Shellの再現テスト:Webサーバーでのリモートコマンド実行を確認
アンラボは公開されたPoCを参考にPHP2Shell攻撃を再現し、攻撃者のシステムと被害サーバーで発生する行為を確認しました。
テストは攻撃者と被害サーバーのIPアドレスを確認する段階から始まりました。その後、攻撃者がPHP Webサイトを対象にテストスクリプトを実行すると、被害サーバーが攻撃者のシステムに接続されました。
攻撃者はこの接続を通じて、自身のシステムから被害サーバーのコマンドシェルを使用できました。また、実行されたコマンドがWebサービスアカウントであるwww-dataの権限で動作することを確認し、サーバーのIPアドレスを照会して実際に被害サーバーへ接続できたかも検証しました。
| 動画の時間 | 再現テストの内容 |
|---|---|
| 0~6秒 | 攻撃者と被害サーバーのIPアドレスを確認 |
| 6~16秒 | PHP Webサイトを対象にテストスクリプトを実行 |
| 16~20秒 | 被害サーバーが攻撃者のシステムに接続され、コマンドシェルにアクセス可能 |
| 20~23秒 | コマンドがWebサービスアカウント(www-data)の権限で実行されることを確認 |
| 23~29秒 | 被害サーバーのIPアドレスを確認し、実際の接続を検証 |
[表2] PHP2Shell再現テストの主な過程
今回の再現テストで注目すべき点は、Webサーバーが攻撃者のシステムに接続され、Webサービスアカウントの権限でコマンドが実行されたことです。
これは、脆弱性の悪用が単なるWebリクエストやエラーの発生にとどまらず、サーバー上で攻撃者が指定したコマンドの実行につながる可能性を示しています。
PHP2Shellを悪用したDefacement攻撃のシナリオ
次の動画は、攻撃者がPHP2Shell脆弱性を悪用し、Webサイトのメイン画面を別の画面に変更するDefacement攻撃の過程を示しています。
PHP2Shell Defacement攻撃の動画を見る →
プロセスツリーで確認する攻撃行為
アンラボは、再現テストで確認されたプロセスツリーも公開しました。
プロセスツリーは、実行中のプログラム間の親子関係を示す情報です。セキュリティ管理者は、特定のコマンドがどのプロセスから開始され、その後どのプログラムが実行されたかを把握できます。
PHP2Shellのようなリモートコード実行攻撃では、PHPサービスに関連するプロセスを通じて異常なコマンドが実行される可能性があります。そのため、Webサービスのプロセス実行関係は、攻撃原因を調査するうえで重要な分析対象です。
[図2] PHP2Shell再現テスト時のプロセスツリー
管理者は、このようなプロセス実行情報を基に、PHPサービスで発生したコマンド実行が正常なサービス動作なのか、外部攻撃に関連する行為なのかを調査できます。
ただし、特定のプロセスやコマンドが実行されたという事実だけで、攻撃の有無が確定するわけではありません。関連イベントと実行関係を併せて確認する必要があります。
3. AhnLab EDR/XDRを活用した攻撃行為の検知
PHP2Shell脆弱性を悪用する攻撃者は、PHPプロセスを通じて悪意ある行為を実行する可能性があります。
アンラボはこうした攻撃の特性を踏まえ、PHPサービスで発生する疑わしいコマンド実行、Webシェルの生成・実行、異常なファイル生成および権限変更などを主な監視対象として挙げました。
AhnLab EDR/XDRは、これらに関連する疑わしい行為を脅威または主要な行為として検知し、セキュリティ管理者が原因を把握し、対応と再発防止の手順を策定できるよう支援します。
AhnLab EDR:エンドポイントの脅威検知と対応
AhnLab EDR(Endpoint Detection and Response)は、サーバーやPCなどのエンドポイントで発生するさまざまな行為を監視し、高度化する脅威を検知・分析・対応するソリューションです。
アンラボ独自の行為分析エンジンを基に、疑わしいプロセス実行やファイル活動などを検知し、関連する行為の相関関係を分析して攻撃原因の把握を支援します。また、AIベースの分析機能であるAI Insightを通じて、脅威の文脈と対応の方向性を提示します。
PHP2Shellのような攻撃では、PHPサービスに関連する異常なコマンド実行やファイル生成を確認し、プロセス実行関係を分析するために活用できます。
AhnLab XDR:多様なセキュリティデータの連携分析と対応
AhnLab XDR(Extended Detection and Response)は、エンドポイントをはじめとするさまざまなセキュリティ領域のデータを収集・連携分析し、脅威の検知と対応を支援するソリューションです。
異種セキュリティソリューションのログとユーザー・資産情報を連携分析し、検知した脅威のリスクを評価することで、セキュリティ管理者が対応の優先順位を判断できるよう支援します。また、AhnLab EDRやAhnLab TIPなどとの連携により、脅威分析に必要な情報を取得できます。
PHP2ShellのようなWebサーバー攻撃でも、エンドポイントで確認された疑わしい行為を他のセキュリティ情報と連携して分析し、組織内のリスクを把握するために活用できます。
PHP2Shell関連の主な監視項目
アンラボは今回の分析で、次の監視項目を提示しました。
- PHPプロセスの異常行為検知:PHPサービスに関連する疑わしいコマンド実行やプロセス活動を確認
- Webシェルの生成・実行検知:Webサーバー上で疑わしいファイルが生成または実行される行為を確認
- 異常なファイル生成・権限変更の監視:攻撃過程で発生しうる異常なファイル活動を確認
EDRはエンドポイントで発生する疑わしい行為と実行関係の分析に重点を置き、XDRは多様なセキュリティデータを連携して脅威の文脈と対応の優先順位を把握するために活用できます。
4. アンラボが提示したEDR/XDRの検知名
アンラボは、PHP2Shellに関連する疑わしい行為の検知に活用できるAhnLab EDR/XDRの検知名を7件公開しました。
| 検知名 | 区分 |
|---|---|
| Suspicious/MDP.Behavior.M12823 | 疑わしい行為 |
| InitialAccess/EDR.Event.M13289 | 初期アクセス関連イベント |
| InitialAccess/EDR.Event.M13291 | 初期アクセス関連イベント |
| InitialAccess/EDR.Event.M13361 | 初期アクセス関連イベント |
| InitialAccess/DETECT.Upload.M13367 | アップロード関連検知 |
| InitialAccess/EDR.Upload.M13395 | アップロード関連検知 |
| InitialAccess/DETECT.Event.M11450 | 初期アクセス関連イベント |
[表3] PHP2Shell関連のAhnLab EDR/XDR検知名
以下の画面は、PHP2Shell PoCの実行中に対象のPHPサーバーでAhnLab EDRが検知したイベントを示しています。
[図3] PHP2Shell PoC実行中に対象PHPサーバーでAhnLab EDRが検知したイベント
セキュリティ管理者は、これらの検知情報を活用して、PHPサービスで発生した疑わしいコマンド実行やファイル生成などの行為を確認できます。
特にPHPサービスに関連する脅威イベントが発生した場合は、関連するプロセスやファイル活動も併せて調査し、攻撃との関連性を検討することが重要です。
ただし、個々の検知名だけでPHP2Shell攻撃を断定したり、すべての攻撃亜種を検知できると保証したりするものではありません。
5. PHP2Shellへの対応:セキュリティ更新と攻撃行為の分析を並行
PHP2Shell脆弱性への基本的な対応は、PHPセキュリティチームが提供する修正版を適用することです。
PHPセキュリティチームは、PHP 8.2から8.5までの各バージョン系列に対するセキュリティ更新を公開し、該当する利用者に速やかなアップデートを推奨しました。
| PHPバージョン系列 | セキュリティ更新バージョン |
|---|---|
| PHP 8.5 | 8.5.12 |
| PHP 8.4 | 8.4.27 |
| PHP 8.3 | 8.3.36 |
| PHP 8.2 | 8.2.35 |
[表4] PHP2Shell関連のセキュリティ更新バージョン
アップデート後はWebサービスを再起動し、変更を適用する必要があります。すぐにアップデートできない環境では、PHPセキュリティチームが提示した公式の暫定措置も検討できます。
一方、脆弱性の修正とは別に、すでに攻撃が発生した、または攻撃が疑われる環境では、関連する行為を確認する必要があります。
アンラボの再現テストでは、攻撃対象のサーバーが攻撃者のシステムに接続され、Webサービスアカウント権限でコマンドが実行される過程を確認しました。
AhnLab EDR/XDRは、PHPサービスに関連する疑わしいコマンド実行、Webシェルの生成・実行、異常なファイル生成や権限変更などを検知し、セキュリティ管理者による原因分析と対応を支援します。
企業は公式のセキュリティ更新を優先して適用しながら、関連する検知イベントを確認する必要があります。疑わしい行為が確認された場合は、原因を調査し、適切な対応と再発防止の手順を策定します。