中国との関連が疑われる脅威アクターが Ivanti Connect Secure の重大な脆弱性(CVE-2025-22457)を積極的に悪用している可能性が判明
Mandiant
※この投稿は米国時間 2025 年 4 月 4 日に、Google Cloud blog に投稿されたものの抄訳です。
2025 年 4 月 3 日(木)、Ivanti は Ivanti Connect Secure(ICS)VPN アプライアンスのバージョン 22.7R2.5 以前に影響する重大なセキュリティ脆弱性 CVE-2025-22457 を公表しました。CVE-2025-22457 はバッファ オーバーフローの脆弱性であり、悪用に成功するとリモートコードが実行される可能性があります。Mandiant と Ivanti は、ICS 9.X(サポート終了)および 22.7R2.5 以前のバージョンにおいて、実際に悪用されている事例を確認しており、すべての利用者にできるだけ早くアップグレードすることを推奨しています。
CVE-2025-22457 の悪用が最初に確認されたのは 2025 年 3 月中旬でした。悪用が成功した後、新たに特定された 2 つのマルウェア ファミリー(TRAILBLAZE インメモリのみのドロッパー、BRUSHFIRE パッシブ バックドア)のデプロイが確認されました。さらに、以前に報告された UNC5221 につながるマルウェア SPAWN エコシステムのデプロイも確認されました。UNC5221 は、中国との関連が疑われるエスピオナージ 脅威アクターであり、Google は以前、エッジデバイスへのゼロデイ攻撃が行われていることを 2023 年まで遡って確認しています。
CVE-2025-22457 のパッチは、2025 年 2 月 11 日に ICS 22.7R2.6 でリリースされています。この脆弱性は、文字数に制限があるバッファ オーバーフローであるため、当初はリスクの低い DoS (サービス拒否)攻撃の脆弱性であると考えられていました。おそらく脅威アクターは、ICS 22.7R2.6 の脆弱性に対するパッチを研究し、複雑なプロセスを経て、22.7R2.5 以前のバージョンを悪用してリモートコードを実行できることを突き止めたと考えられます。
Ivanti は、悪用された脆弱性に対するパッチをリリースしています。Ivanti のユーザーは、システムをできるだけ早く保護するために、セキュリティ アドバイザリに記載されている措置を実施することを強くおすすめします。
脆弱性の悪用後の TTP (戦術、手法、手順)
悪用が成功した後、Mandiant は、新たに特定されて追跡対象となった TRAILBLAZE と BRUSHFIRE の 2 つのマルウェア ファミリーが、シェル スクリプト ドロッパーを介してデプロイされたことを確認しました。また、マルウェア SPAWN エコシステムのデプロイも確認しています。さらに、以前に観測された振る舞いと同様に、攻撃者は検出を回避するために、完全性チェッカー ツール(ICT)の変更を試みていました。
シェル スクリプト ドロッパー
CVE-2025-22457 の悪用が成功した後、Mandiant は、TRAILBLAZE ドロッパーを実行するシェル スクリプトが利用されていることを確認しました。このドロッパーは、実行中の
/home/bin/web
プロセスに BRUSHFIRE パッシブ バックドアを注入するものです。最初の段階では、/home/bin/web
プロセスを検索することから始まります。このプロセスは、別の /home/bin/web
プロセスの子プロセスです(この目的は、実際に接続をリッスンしている web プロセスに注入することと考えられます)。次に、以下のファイルと関連するコンテンツが作成されます。
-
/tmp/.p
:/home/bin/web
プロセスの PID を含む -
/tmp/.m
: 対象のプロセスのメモリマップ(人間が読み取れる形式)を含む -
/tmp/.w
: 対象のプロセスのweb
バイナリのベースアドレスを含む -
/tmp/.s
: 対象のプロセスのlibssl.so
のベースアドレスを含む -
/tmp/.r
: BRUSHFIRE パッシブ バックドアを含む -
/tmp/.i
: TRAILBLAZE ドロッパーを含む
次に、シェル スクリプトは /tmp/.i
を実行します。これは、インメモリのみのドロッパーの第 2 段階で、TRAILBLAZE として追跡対象となったものです。次に、以前に作成されたすべての一時ファイル(/tmp/.p
を除く)と /data/var/cores
ディレクトリの内容を削除します。次に、/home/bin/web
プロセスのすべての子プロセスを強制終了し、/tmp/.p
ファイルを削除します。これらの動作はすべて非永続的であり、システムやプロセスが再起動された場合は、ドロッパーを再実行する必要があります。
TRAILBLAZE
TRAILBLAZE は、生のシステムコールを使用する C 言語で記述されたインメモリのみのドロッパーです。可能な限り最小限になるように設計されているため、Base64 としてシェル スクリプトに収まります。TRAILBLAZE は、特定した /home/bin/web
プロセスにフックを注入します。その後、そのプロセス内のコードケーブに BRUSHFIRE パッシブ バックドアを注入します。
BRUSHFIRE
BRUSHFIRE は、C 言語で記述されたパッシブ バックドアで、SSL_read
フックとして機能します。まず、元の SSL_read
関数を実行し、返されたデータが特定の文字列で始まるかどうかを確認します。データがこの文字列で始まる場合、XOR で復号してから、そのデータに含まれるシェルコードを実行します。受信したシェルコードが値を返す場合、バックドアは SSL_write
を呼び出してその値を送り返します。
SPAWNSLOTH
以前のブログ投稿で詳しく説明したように、SPAWNSLOTH は SPAWNSNAIL バックドアに関連付いたログ改ざんコンポーネントとして機能します。dslogserver
プロセスをターゲットにして、ローカル ロギングとリモート syslog 転送の両方を無効にします。
SPAWNSNARE
SPAWNSNARE は C 言語で記述されたユーティリティで、Linux をターゲットにします。コマンドライン ツールを使用せずに、圧縮されていない Linux カーネル イメージ(vmlinux)をファイルに抽出し、AES を使用して暗号化します。
SPAWNWAVE
SPAWNWAVE は SPAWNANT の進化版であり、SPAWN* マルウェア エコシステムの他のメンバーの機能を組み合わせたものです。SPAWNWAVE は、公に報告されている SPAWNCHIMERA および RESURGE マルウェア ファミリーと重複しています。
アトリビューション
Google Threat Intelligence Group(GTIG)は、CVE-2025-22457 の悪用と、それに続くマルウェア SPAWN エコシステムのデプロイを、中国との関連が疑われるエスピオナージ アクター UNC5221 によるものと特定しています。GTIG は以前、CVE-2025-0282 のゼロデイ攻撃のほか、CVE-2023-46805 や CVE-2024-21887 の悪用に UNC5221 が関与していることを報告しています。
さらに、GTIG は以前にも、UNC5221 が CVE-2023-4966 のゼロデイ攻撃を実施し、NetScaler ADC および NetScaler Gateway アプライアンスに影響を与えたことも確認しています。UNC5221 の活動は、さまざまな国や業種をターゲットにしており、広範なツールセットを活用して、パッシブ バックドアの注入や正規コンポーネントのトロイの木馬化などを、さまざまなエッジ アプライアンスで展開しています。
UNC5221 は、これまで一貫して成功を収めており、活動のペースも積極的であることから、GTIG では、今後もエッジデバイスへのゼロデイ攻撃を継続すると考えています。さらに、CVE-2025-0282 の悪用について詳しく説明した以前のブログ投稿で指摘したように、GTIG では、UNC5221 の侵入活動中に、侵入した Cyberoam アプライアンス、QNAP デバイス、ASUS ルーターの難読化ネットワークを利用して、侵入元を隠蔽していることを確認しています。
まとめ
UNC5221 によるこうした最新の活動は、世界中のエッジデバイスを標的とした高度な脅威が現在も進行中であることを示しています。このキャンペーンは、N デイ脆弱性 CVE-2025-22457 を悪用しており、UNC5221 のような攻撃者がエッジデバイスに一貫して狙いを定めていることを浮き彫りにしています。また、攻撃者はデバイスに関する深い知識を活用し、ゼロデイ脆弱性と N デイ脆弱性の両方を利用するという新たな実績をこれまでの経歴に加えています。こうした活動は、GTIG が確認している、中国との関連が疑われるエスピオナージ グループによる広範な戦略と一致しています。こうしたグループは、重要なエッジ インフラストラクチャの悪用やカスタム マルウェアに多額の投資を行っています。
推奨事項
Mandiant は、CVE-2025-22457 に対処するために、Ivanti Connect Secure(ICS)アプライアンスをバージョン 22.7R2.6 以降にアップグレードし、利用可能なパッチを速やかに適用することを推奨しています。さらに、外部および内部の完全性チェッカー ツール(ICT)を使用し、不審な活動が確認された場合は Ivanti サポートに連絡することも推奨しています。これに加えて、防御側は、ウェブプロセスに関連するコアダンプのモニタリング、ICT の statedump ファイルの調査、アプライアンスに提示されたクライアント TLS 証明書の異常検出を積極的に行う必要があります。
謝辞
本調査に継続的にご協力およびご支援いただいた Ivanti の Daniel Spicer 氏とそのチームの皆様に、感謝の意を申し上げます。今回の分析は、Google Threat Intelligence グループと Mandiant FLARE のアナリストの皆様の協力がなければ実現しえませんでした。特に、FLARE の Christopher Gardner 氏と Dhanesh Kizhakkinan 氏に感謝の意を表します。
セキュリティ侵害インジケーター( IOC )
このブログ投稿で概要を説明している活動を捕捉し特定するために、セキュリティ コミュニティを支援する目的で、登録ユーザー向けにセキュリティ侵害インジケーター(IOC)を GTI コレクションに加えました。
YARA Rules
rule M_APT_Installer_SPAWNANT_1
{
meta:
author = "Mandiant"
description = " SPAWNANT を検出。 SPAWNANT は
Ivanti デバイスをターゲットとするインストーラ。 目的は、
SPAWN ファミリー(SPAWNSNAIL、
SPAWNMOLE)の他のマルウェアを永続的にインストールし、追加のウェブシェルをドロップすること。 "
strings:
$s1 = "dspkginstall" ascii fullword
$s2 = "vsnprintf" ascii fullword
$s3 = "bom_files" ascii fullword
$s4 = "do-install" ascii
$s5 = "ld.so.preload" ascii
$s6 = "LD_PRELOAD" ascii
$s7 = "scanner.py" ascii
condition:
uint32(0) == 0x464c457f and 5 of ($s*)
}
rule M_Utility_SPAWNSNARE_1 {
meta:
author = "Mandiant"
description = "SPAWNSNARE は C 言語で記述されたユーティリティで、Linux システムを標的にする。
Linux カーネルの非圧縮イメージをファイルに抽出して
AES で暗号化する。"
strings:
$s1 = "\x00extract_vmlinux\x00"
$s2 = "\x00encrypt_file\x00"
$s3 = "\x00decrypt_file\x00"
$s4 = "\x00lbb_main\x00"
$s5 = "\x00busybox\x00"
$s6 = "\x00/etc/busybox.conf\x00"
condition:
uint32(0) == 0x464c457f
and all of them
}
rule M_APT_Utility_SPAWNSLOTH_2
{
meta:
author = "Mandiant"
description = "SPAWNSLOTH で見つかった文字列を特定するためのハンティング ルール "
strings:
$dslog = "dslogserver" ascii fullword
$hook1 = "g_do_syslog_servers_exist" ascii fullword
$hook2 = "ZN5DSLog4File3addEPKci" ascii fullword
$hook3 = "funchook" ascii fullword
condition:
uint32(0) == 0x464c457f and all of them
}
-Mandiant、執筆者: John Wolfram、Michael Edie、Jacob Thompson、Matt Lin、Josh Murchie