PHP2Shellの脆弱性がCISA KEVに登録 ―修正版と侵害調査の確認点

Share
PHP2Shellの脆弱性がCISA KEVに登録 ―修正版と侵害調査の確認点アイキャッチ画像

PHPの重大な脆弱性「PHP2Shell」の2件が、10月26日付で米国CISAのKEVカタログに登録されました。IPAは国内の攻撃被害事例を把握していないとしていますが、修正版の適用と侵害の有無の確認が重要です。本記事では、10月28日時点の情報を基に、悪用状況や影響範囲、企業が取るべき対策を解説します。

PHP2Shellの脆弱性について、公開前に確認された攻撃試行や、更新後も必要となる侵害調査については、前回記事「PHPの重大な脆弱性「PHP2Shell」に続報 ―公開前の攻撃試行を確認、更新後も侵害調査が必要」で詳しく解説しています。

PHP2Shellとは何か PHP本体にある2件の脆弱性

「PHP2Shell」は、PHP本体に存在するCVE-2026-109618とCVE-2026-109619の2件の重大な脆弱性の通称です。いずれも条件によっては、認証なしで遠隔から任意のコードを実行されるおそれがあります。PHP公式は、PHP-FPMやApacheのmod_phpなど、Webリクエストを処理する複数の環境への影響を示しています*1。JPCERT/CCは、公開された実証コードの動作がPHPのバージョンや実行環境などに左右されると説明しており*2、自社環境で実証コードが動作しないことを理由に、更新を見送るべきではありません。

KEV掲載と個別の侵害事例を区別して読む

PHP2Shellをめぐる悪用情報には、新たな攻撃観測の報告がある一方、過去の報告内容を訂正する動きもあります。Palo Alto Networks, Inc.のUnit 42は25日、欧州の政府機関で観測した攻撃について、初期侵入とPHP2Shellの該当CVEとの関連を確認できないとして、23日の更新を撤回しました*3。この事例をPHP2Shellによる侵入成功の確定例として扱うことはできません。

これとは別に、同社の製品アドバイザリは27日更新で、インターネットに公開された管理インターフェースを狙う悪用活動の観測を記載しています*4。KEVへの掲載、ベンダーによる観測、特定の組織の侵入原因は、それぞれ確認している事実の範囲が異なります。国内被害をIPAが把握していないという説明も、国内で被害が起きていないことの証明ではありません。

図1:悪用情報が示す範囲を読み分ける

PHP2Shellの悪用情報を4項目で整理した図。2件の脆弱性が米国CISAのKEVカタログに登録されたこと、PAN-OSに関連する攻撃活動の観測、欧州政府機関への侵入報告の撤回、IPAが国内の攻撃被害事例を把握していないことを示している。
出典: 独立行政法人情報処理推進機構(IPA)、Palo Alto Networks(Unit 42)の脅威情報および製品セキュリティアドバイザリ
※KEVへの登録は脆弱性の悪用が確認されたことを示すものであり、個別の侵害事例の確認とは異なります。

PHP2Shellの修正版と対象バージョンを確認する

修正は10月21日の8.2.35、8.3.36、8.4.27、8.5.12に入りました。Linuxや長期サポート版は提供元に確認します。PHP 8.1以前は継続サポート外で、7.4、8.0、8.1への例外的なソース修正はサポート再開を意味しません。旧版へ修正を取り込むバックポートでは上流と版番号が異なるため、今回のCVEに対応したパッケージかを確認してください。

暫定設定は攻撃経路の一部を抑えるもので、修正の適用を置き換えるものではありません。例えばセッションのアップロード進捗機能を無効にしても、CVE-2026-109619の全経路を防げるわけではありません。更新まで有効な対策を取れない場合は、IPAの案内に沿い、業務影響を踏まえて外部アクセスの遮断や一時停止を判断します。

製品組み込みのPHPは 製品ごとの案内で確認する

自社のWebサーバーに加え、PHPを内部で使う製品も確認が必要です。PAN-OSの場合、影響するのはHTTPSの管理画面とXML APIを含む管理Webインターフェースです。GlobalProtectのポータル、ゲートウェイ、Clientless VPNは影響しないと説明されています。管理アクセスを信頼できる踏み台へ限定する対策も案内されています。PAN-OSの修正版は系列ごとに異なり、公式表には提供済みの版と提供予定日の表示が混在しています。

PHP単体の版番号を製品へ当てはめず、使用中の製品版とベンダーの対応表を照合してください。資産台帳には、PHPの有無だけでなく、更新を誰が担当し、何を根拠に完了を確認するかも記録します。CMSの更新、OSパッケージの更新、機器のファームウェア更新は対象が異なります。委託先やホスティング事業者が管理する環境も含め、担当の境界に未確認のシステムを残さないことが重要です。

追加の注意喚起は PHP2Shellの修正と分けて確認する

PHP2Shellとは別に、PHP公式は10月23日、CVE-2026-115560に関する注意情報を公開しました*5。この問題は、セッションのシリアライズ方式をphp_binaryまたはphp_serializeから実行時にphpへ切り替え、session_start()を呼び出す場合に、アップロード進捗機能が有効だと影響を受けるものです。PHP公式は、次回の通常リリースで修正するまでの暫定対策として、session.upload_progress.enabled=0を推奨しています。設定変更後は、すべてのPHPワーカープロセスを再起動する必要があります。

また、10月26日には、Brotliの脆弱性(CVE-2026-111497)に対応したWindows向けPHPパッケージの再ビルド版(8.2.35-1、8.3.36-1、8.4.27-1、8.5.12-1)が公開されました*6。PHP本体のバージョンは変わらないため、更新時には対象のCVEとパッケージを確認し、どの脆弱性への対応が完了したのかを記録することが重要です。

更新と侵害調査を並行し 稼働環境への反映まで確かめる

調査対象は、公表後のアクセスだけに限りません。Amazon Threat Intelligenceは、観測用システムMadPotで10月17日の攻撃試行を確認したと報告しています*7。実際のシステムで成功する試行だったかは不明としたうえで、少なくとも同日から調べるよう促しています。保存期間と対象環境の稼働履歴を確認し、関連ログが上書きされる前に確保してください。

JPCERT/CCは、不審なmultipart/form-data形式のリクエストと前後のメモリ関連エラー、HTTP 500、ワーカーの異常終了などを調査の手掛かりに挙げています。痕跡が見つからない場合も未侵害とは断定できず、プロセス、外部通信、ファイル作成などの確認も必要です。疑いがあれば証拠を保全し、影響調査や隔離へ進みます。

一方、更新側の作業では、配布物を入れ替えたことに加え、実際にWebリクエストを処理する環境へ修正が反映されたことを確かめます。NISTもパッチ管理に適用後の確認を含めています。複数のサーバーやコンテナがあれば個々の適用状況を残し、提供元の手順に従った再起動と業務機能の動作確認を行いましょう。更新の完了記録と調査結果をそろえることで、残る対応を判断できます。

図2:PHP更新と侵害調査を並行して進める

PHP2Shellへの対応手順を示すフロー図。対象環境・担当者を把握した後、左側でPHPのバージョン確認、修正版の適用、稼働環境への反映確認を進め、右側で関連ログの保全・確認、通信・プロセス・ファイルの調査、不審な変更や痕跡の確認を並行して実施する。最後に、残る対応と継続監視の必要性を判断する。

公開システムの見落としを減らすために

修正版への更新を進める一方で、管理対象から漏れた公開システムがないかを確かめることも大切です。株式会社ブロードバンドセキュリティ(BBSec)の「アタックサーフェス調査 SQAT® ASM」は、公開情報を用いて、外部から見えるIT資産と脅威となり得る情報を調査します。対象を明確にしたうえでWebアプリケーションの弱点を確認したい場合は、「Webアプリケーション脆弱性診断 SQAT® for Web」もご活用いただけます。

【参考情報】


編集責任:木下

ウェビナー開催のお知らせ

最新情報はこちら


Security NEWS TOPに戻る
バックナンバー TOPに戻る