サイバーセキュリティ企業各社によると、攻撃者はCitrix NetScalerのゼロデイ脆弱性「CVE-2026-88772」を悪用し、独自のWebシェルやトンネリング型マルウェアを設置していました。さらにroot権限を奪取して認証情報を窃取し、内部ネットワークへ侵害を広げています。
Mandiantによると、攻撃は少なくとも9月上旬に始まっていました。北米と欧州の政府機関、金融サービス、教育、法務、専門サービスの各分野の組織が被害を受けたとみられます。
この攻撃キャンペーンは週末に明るみに出ました。Citrixの管理者から、ITサプライヤーやセキュリティチーム、CERT、各国のサイバーセキュリティ機関が、パッチ未提供のNetScalerのゼロデイ脆弱性2件について組織に非公開で警告していたとの報告が相次いだのです。一部では、影響を受けるアプライアンスを停止するよう勧告されたケースもありました。
その後、サイバーセキュリティ企業のwatchTowrは、NetScalerのリモートコード実行の脆弱性2件が実際に悪用されていることを確認したと明らかにしました。同社によると、Citrixはパッチを準備中でした。
Citrixは日曜日、最終的にこれらの脆弱性を公表しました。識別番号はCVE-2026-88771とCVE-2026-88772です。一部の研究者は、これらの脆弱性を「PitScaler」と名付けています。
Citrixは、緩和策を講じていないNetScalerで両脆弱性が悪用されたことを認め、修正のためのセキュリティアップデートを公開しました。
CVE-2026-88771は認証不要でリモートコード実行が可能になる脆弱性で、NetScaler ADCとGatewayのすべての環境に影響します。CVE-2026-88772はメモリオーバーフローの脆弱性です。DTLSが有効な場合、リモートコード実行やサービス拒否につながる恐れがあります。
ゼロデイ攻撃で悪用
GreyNoiseは9月24日、脅威アクターがCitrix NetScaler Gatewayの悪用を試みる様子を観測しました。これは、CitrixがCVE-2026-88771とCVE-2026-88772を公表する3日前のことです。
GreyNoiseによると、この攻撃の発信元は149.104.78.141でした。同社のプラットフォームは、CVEの検知シグネチャが整う前に攻撃を検出していました。
GreyNoiseによれば、攻撃者は/bin/shを改変してrootシェルを取得しようとしていました。あわせて、パスワードで保護されたPHP製Webシェルを/var/netscaler/logon/LogonPoint/custom/.ctxs.receiverに設置しようとしていました。
攻撃者は/etc/httpd.confの改変も試みていました。receiver.min.cssなど、CSSファイルに見えるリクエストが、隠されたPHP製Webシェルを開くようにする狙いです。

同社は現時点で、エクスプロイトの全容を公開していません。一方で、防御側に対しては次の点を調べるよう推奨しています。
.ctxs.receiverファイルの有無- httpd.confにある
AliasまたはAliasMatch関連のエントリ - /bin/shのパーミッションの変更
- 確認された送信元IPからの接続
新たに公開されたMandiantのレポート は、CVE-2026-88772の悪用手口をより詳しく説明しています。GreyNoiseが観測した攻撃パターンの一部とも一致しています。
Mandiantによると、このエクスプロイトは認証を回避し、NetScaler Packet Processing Engine(NSPPE)を異常終了させます。これにより、攻撃者はroot権限のアクセスを得ます。
Mandiantは次のように説明しています。「Google Threat Intelligence Groupはエクスプロイトコードを入手していませんが、現場のテレメトリーを分析したところ、細工された、あるいは断片化されたレコードヘッダーを送信すると、パケットエンジン内でヒープメモリの境界が破壊されると考えられます。その結果、制御フローが奪われ、基盤となるFreeBSD上でroot権限の任意のシェルコードが実行されます」
Googleは、侵入事案で同様のポストエクスプロイト活動を確認しています。攻撃者はPHP製Webシェルを設置し、NetScalerのWebサーバー設定を改変していました。実行形式ではない拡張子のファイルもPHPとして処理させるためです。
ある侵入事案では、攻撃者が/etc/httpd.confを改変し、.debファイルをPHPとして実行させていたとMandiantは述べています。これにより、通常はNetScalerのクライアントソフトウェアを置くディレクトリからWebシェルを使えるようになっていました。
別の攻撃では、脅威アクターが.sigファイルを使っていました。さらにWebサーバー設定を改変し、/vpn/media/配下の.ico画像へのリクエストが、悪意あるPHPファイルに割り当てられるようにしていました。
Googleによると、この手口によって、悪意あるWebシェルへのリクエストは画像ファイルやCSSへのリクエストに見えます。その裏で、攻撃者はPHPのshell_exec()関数やeval()関数を通じてコマンドを実行していました。
一部のWebシェルは、コマンド実行時に偽のHTTP 404レスポンスを返していました。これにより、不正な活動はさらに見つかりにくくなっていました。
Mandiantによると、脅威アクターは、これまで確認されていなかった2つのマルウェアファミリー「WHIPSHOT」と「SLAPSHOT」を展開していました。
WHIPSHOTは、Debianパッケージに偽装したPHP製のWebシェルです。NetScalerのVPNスクリプト用ディレクトリに置かれていました。
このマルウェアはSLAPSHOTのHTTPプロキシとして動作します。HTTPリクエストヘッダーからBase64エンコードされたデータを取り出し、侵害されたデバイス上で動くトンネリング型マルウェアに転送します。
WHIPSHOTは、SLAPSHOTが動作中かどうかも確認します。埋め込まれたPythonペイロードを抽出し、バックグラウンドで起動することもできます。
SLAPSHOTはPythonベースのTCPトンネリングツールです。侵害されたNetScalerアプライアンスと内部デバイスをつなぎ、攻撃者がネットワーク内でさらに侵害を広げられるようにします。
このマルウェアはWHIPSHOTからコマンドを受け取ります。内部ホストへの接続を開き、その接続でデータを送受信し、終了時にはセッションを閉じることができます。
Googleによると、確認された侵入事案のうち少なくとも1件では、攻撃者がこのプロキシを使い、手作業で偵察と認証情報の窃取を行っていました。
Mandiantは、このマルウェアが一定期間活動がないと自ら終了する場合があるとも説明しています。検知はいっそう難しくなります。
エクスプロイトの成功時点ではroot権限が得られます。ただし、Webシェルが実行するコマンドは、通常はNetScalerのWebサーバーが動作する低権限アカウントで動きます。
root権限を維持するため、攻撃者は/bin/shのパーミッションを改変し、コマンドが昇格した権限で動くようにしていたとGoogleは述べています。
Mandiantは次のように説明しています。「脅威アクターは、Webシェルをroot権限で永続的に実行できるようにするため、軽量なインストーラー型のWebシェルを使って/bin/shの実行ファイルにsetuid(Set User ID)ビットを設定しました」
脅威アクターは、設定変更を反映させるために、NetScalerアプライアンスの再起動やWebサーバーの再起動も行っていました。
NetScaler ADCとGatewayのアプライアンスは、攻撃者にとって魅力的な標的です。インターネットに公開されており、多くの場合は内部ネットワークの境界に置かれています。しかも、EDRソフトウェアによる保護を受けられないことが多いためです。
Mandiantは、防御側に対し、最新のCitrixセキュリティアップデートの適用を最優先とするよう勧めています。あわせて、NetScalerアプライアンスに侵害の兆候がないか調べるよう求めています。
侵害の指標となり得るものは次のとおりです。
- httpd.conf内の不正なPHPハンドラーやエイリアス
- PHPコードを含む不審な.debファイルや.sigファイル
- 通常とは異なるHTTP 404レスポンス
- 予期しないNSPPEのクラッシュ
- SLAPSHOTに関連する/tmp/.uxdportや/tmp/.uxdlockファイルの存在
組織はさらに、/bin/shがsetuid root権限で動作するよう改変されていないかを確認する必要があります。nohupで起動された不審なPythonプロセスや、Base64エンコードされたペイロードを含むプロセスがないかも調べてください。
Mandiantはこの活動をCVE-2026-88772と結び付けています。一方、CitrixはCVE-2026-88771も攻撃で悪用されたと説明しています。
すぐにパッチを適用できない組織には、Mandiantが次の対応を推奨しています。運用上可能であればDTLSを無効化すること。DTLSが不要な場合は、上流でインバウンドのUDP/443をブロックすることです。
ただしGoogleは、これらの緩和策が有効なのはCVE-2026-88772のみだと警告しています。別に悪用されているCVE-2026-88771は防げません。
Mandiantは、両方の脆弱性に対処する唯一の方法は、最新のNetScalerセキュリティアップデートを適用することだと述べています。