アナリスト注:プルーフポイントでは、UNK_という識別子を使用して、現在も発展途上にあり、数値によるTA指定を付与するほど長期間観測されていない活動クラスターを定義しています。
主な調査結果
- 2026年5月以降、プルーフポイントの脅威リサーチャーは、UNK_MassTractionと名付けた、中国との関連が疑われる脅威クラスターを追跡しています。このクラスターは、米国およびカナダの大学の物理学部および工学部が運用するRoundcubeメールサーバーを悪用しています。
- このキャンペーンでは、Roundcubeに存在する複数のn-day脆弱性を悪用し、認証情報を窃取するとともに、その後のアクセスのためにWebシェルを設置するか、VShellバックドアをサーバーのメモリ上に展開します。
- この攻撃者は、標的ネットワークへの侵入経路としてRoundcubeサーバーを悪用している可能性が高く、検知を回避するために感染チェーンを意図的に巧妙に設計しています。
背景
2026年5月以降、プルーフポイントは、Roundcubeに存在するクロスサイトスクリプティング(XSS)の脆弱性であるCVE-2024-42009を悪用する新たな活動クラスターを観測しました。この活動はUNK_MassTractionとして追跡されています。このキャンペーンは、米国およびカナダの主要大学における物理学部および工学部を標的としており、国家安全保障に関係する部門や、天体物理学および粒子物理学を研究する組織に所属する管理者や教授に重点を置いていました。標的はこれらの部門に限定されているように見えましたが、この攻撃はメールをメールクライアントで開くだけでメールサーバーへのアクセスを実現できるため、受信者自体は重要ではなかった可能性があります。
一方で、標的となった部門はいずれもn-day脆弱性の影響を受けるバージョンのRoundcubeを使用していたことから、UNK_MassTractionはキャンペーンを実施する前に標的に対する偵察活動を行っていたことが示唆されます。この活動には、Trellixが公開したキャンペーンとの類似点があります。このキャンペーンでは、CVE-2023-2868に類似したファイル名解析の脆弱性を利用してVShellを配信していました。しかし現時点では、プルーフポイントはその報告された活動とUNK_MassTractionとの関連を確認していません。

図1. UNK_MassTractionの感染チェーン
このキャンペーンでは、最初にクロスサイトスクリプティング(XSS)の脆弱性を悪用して、被害者のブラウザ内でJavaScriptを実行します。このアクセスを利用して、ブラウザに保存されている認証情報を窃取するJavaScriptペイロードを読み込み、その後、2つ目の脆弱性を悪用してメールサーバー上に足掛かりを確保します。その方法としては、Webシェルを設置するか、VShellバックドアをメモリ上で実行します。
配信と悪用
大学の学部を標的としたメールは、侵害された送信元アカウントだけでなく、DMARCポリシーが緩いためになりすまし可能なドメインも悪用して送信されていました。誘導メールの内容は一般的なものであり、プルーフポイントが観測できた範囲よりも広範囲を標的としていたことが示唆されます。また、この一見無害なメッセージは、マーケティングメールやスパムメールを装うことを意図していた可能性があります。標的がメールを開いた後に内容を見過ごし、調査を行わなかったとしても、攻撃者にとってはアクセスを獲得するには十分だからです。

図2. UNK_MassTractionの誘導メール
これらのメールは、CVE-2024-42009を悪用しています。この脆弱性では、HTML内のJavaScript要素が適切にサニタイズされず、onanimationstart関数を介してJavaScriptが実行される可能性があります。脆弱なRoundcubeインスタンスのWebメールクライアントでメールが開かれると、埋め込まれたJavaScriptが実行されます。攻撃者による初期の活動では、メッセージ本文のHTML内に中国語の痕跡が残されていました。

図3. エクスプロイトが埋め込まれたメールの本文HTML
メッセージ本文に格納されているJavaScriptは、リモートでホストされている次段階のペイロードを読み込むローダーです。

図4. メッセージ本文内の10進数エンコードをデコードしたJavaScript
次段階では、プルーフポイントがIceCubeと呼ぶ高機能なRoundcube情報窃取ツールが実行されます。このツールは、まずDOMをたどることでRoundcubeのiFrameを脱出し、ブラウザ全体のDOMおよびRoundcubeの認証セッションにアクセスできるようになります。

図5. iFrameからの脱出処理と詳細なコメントを含むIceCubeのJavaScriptペイロード
このアクセスを利用して、ユーザー名やパスワード、二要素認証に関する情報、Cookieを窃取するとともに、使用言語、画面サイズ、フォーム入力値など、ブラウザに対する偵察も実施します。収集した初期情報はHTTP POSTを介してC&Cサーバーへ送信されます。その後、IceCubeはセッションのCSRFトークンを利用して、後述する別のRoundcube脆弱性を悪用するためのガジェットを設定します。このJavaScriptには複数行コメントを含む非常に詳細なコメントが記述されており、実行フェーズが明確に区分され、修正箇所も「fix」として示されています。IceCubeは大規模言語モデル(LLM)の支援を受けて作成された可能性があります。
サーバー側への侵入
情報窃取の段階に続いて、IceCubeは「helpers」と呼ぶ仕組みを利用し、Roundcubeの2つ目の脆弱性であるデシリアライズの脆弱性(CVE-2025-49113)を悪用します。この脆弱性は、組み込みのCrypt_GPG_Engineの解析処理を悪用することで、プルーフポイントがSquareShellと呼ぶシンプルなWebシェルをインストールします。IceCubeはPHPガジェットを含むPHPシリアライズデータをRoundcubeのデータベースへ送信しようとします。そのデータがデシリアライズされると、埋め込まれたコマンドが実行されます。Roundcubeがこのオブジェクトをデシリアライズし、リクエストが終了すると、PHPは__destruct()を呼び出し、_gpgconfをシェル実行経路へ渡します。この脆弱性の本質は、Roundcubeが使用するデシリアライザーがシリアライズデータ内で見つかった任意のクラスをインスタンス化してしまうため、PHPガジェットを実行できてしまう点にあります。

図6. PHPガジェットによるシェルコマンド
埋め込まれたガジェットは、まずディスク上へWebシェルを書き込もうとするシェルコマンドです。SquareShell Webシェルは、plugins/newmail_notifier/mail_preview.phpというエンドポイントからリモートでアクセス可能であり、リモートコード実行を可能にします。このWebシェルは、正規プラグインの最終更新日時をコピーするタイムスタンプ改ざん(timestomping)によって、環境内で目立たないように偽装されています。また、実行にはsystem、passthru、exec、shell_exec、assert、popenのいずれかのシステムユーティリティを利用できます。
*プルーフポイントは、関連するアドレス空間をスキャンして侵害されたサーバー上のSquareShellの存在を確認し、政府機関および業界パートナーと連携して、特定された被害組織へ通知を行いました。

図7. PHP版SquareShell Webシェルの内容
この感染チェーンには、成熟した攻撃手法がいくつか見られます。例えば、ローカルストレージの消去や被害者ブラウザ内の攻撃者の痕跡の削除、ブラウザやホストがすでに感染していないかを定期的に確認する仕組み、さらにRoundcubeサーバー侵害まで処理を進めるための複数のフェイルセーフが組み込まれています。IceCubeではこれらを「fallbacks」と呼んでいます。また、このツールは堅牢なログ機能を備えており、感染チェーンのどこかで失敗した場合でも、攻撃者が容易に原因を特定できるようになっています。
Webシェルの展開に失敗した場合、このガジェットはフォールバックチャネルからシェルスクリプトをダウンロードして実行します。このフォールバックチャネルは2026年6月に追加されたもので、それ以前は感染チェーンは静かに失敗していました。このシェルスクリプトは、アーキテクチャに依存したELFローダー(Google Threat IntelligenceではSNOWLIGHTと呼称)の実行を設定します。このシェルスクリプトは、中国系攻撃者による他のエクスプロイトを利用した侵害活動でも使用されており、非公開で共有されている攻撃能力であることが示唆されます。このスクリプトはPATHを拡張し、ローダーを配置するための適切なディレクトリを確認した後、ホストのアーキテクチャを取得し、対応するローダーをC&Cから取得して、nohupユーティリティを使用して実行します。

図8. VShellローダーのbashスクリプト
IceCubeはさらに、「deferred triggers(遅延トリガー)」と呼ぶ仕組みを設定し、感染チェーンが継続されるようにします。この遅延トリガーは、ユーザーがページを閉じたりタブを切り替えたりしたか、マウスカーソルがブラウザウィンドウ外へ移動したかを監視し、さらにログアウトボタンを乗っ取ります。これらの操作が行われると、IceCubeはそれらのイベントをフックし、CVE-2025-49113の悪用を再試行するとともに、ユーザーがRoundcubeセッションを離れたことをC&Cへ通知します。その後、これらの処理またはタイムアウトを契機として、IceCubeはサーバー上のユーザーセッションおよびマルウェアが開始したセッションを削除し、ユーザーを強制的にログアウトさせるとともに、Roundcubeサーバー上のフォレンジック証拠を除去します。
VShellバックドア
このローダーは、まず別のローダーがすでに実行中かどうかを(/tmp/log_de.logファイルの存在を確認することで)判定します。その後、[kworker/0:2]というプロセス名を偽装し、ソケット経由でC&Cサーバーへデータを送信します。さらに、C&Cサーバーから次段階となるVShellバックドアをメモリ上でロードする処理を設定します。

図9. C&Cサーバーへ接続し、応答をfexecve()で[kworker/0:2]という名前のプロセスとして実行するVShellローダーのメイン関数
VShellは、Go言語で作成された公開済みの高機能インプラントであり、中国との関連がある攻撃者によってLinux、macOS、およびWindowsへの侵害で利用されています。対話型シェルやポートフォワーディング機能は、標的ネットワークへの横展開に利用される可能性が最も高い機能です。このマルウェアファミリーについては、Google、Cisco Talos、Nviso、Trellix、EclecticIQ、Censysなどのリサーチャーによって広く分析・報告されています。
攻撃者のアトリビューション
複数の事例において、プルーフポイントは、UNK_MassTractionによるフィッシングメールの受信ヘッダー内に記録された仮想専用サーバー(VPS)のIPアドレスを特定しました。これらのIPアドレスは、複数の中国との関連がある脅威アクターによって利用されている可能性が高い秘匿インフラネットワークに属しています。この秘匿ネットワークへのアクセス、カナダおよび米国の大学に対する限定的な標的設定、VShellの使用、さらにフィッシングメール内に中国語の痕跡が存在することを総合すると、UNK_MassTractionは、中国との関連があるスパイ活動を目的とした脅威アクターであり、中程度の運用上のセキュリティ意識(Operational Security:OPSEC)を備えていると評価しています。中国系攻撃者はこれまでもメールサーバーに対するエクスプロイトを同様の方法で利用しており、メールサーバーをエッジデバイスとして扱い、標的ネットワークへの侵入の足掛かりとして利用しています。これは、類似のエクスプロイトを利用しながらも、メールサーバーへのアクセスそのものではなく、メールサーバー内の情報を主な標的とする他の攻撃者とは異なる点です。
まとめ
今回のキャンペーンの標的設定は非常に興味深いものですが、UNK_MassTractionが近い将来、理論物理学の難問やフェルミのパラドックスを解き明かすことはないでしょう。一方で、UNK_MassTractionは成熟した攻撃ツール群と、n-day脆弱性を独自に組み合わせて活用する手法を示しました。このキャンペーンは、メール配信がメールサーバー侵害の起点となり得ること、そして中国系攻撃者がメールサーバーを他のエッジデバイスと同様に扱い続けていることを改めて示しています。防御側は、自組織のメールサーバーについても、VPNコンセントレーターやその他のリモートアクセスノードと同等の優先度で防御対策を講じるべきです。
IoC (Indicator of Compromise / 侵害指標)
|
インジケーター |
種類 |
説明 |
初観測 |
|
jpcontreras@newfield[.]cl |
メールアドレス |
侵害されたメールアドレス |
2026年5月 |
|
45.150.109[.]151 |
IPアドレス |
IceCube JavaScriptバックドアの配信とC&C |
2026年5月 |
|
194.213.18[.]133 |
IPアドレス |
IceCube JavaScriptバックドアの配信とC&C |
2026年6月 |
|
45.86.229[.]111 |
IPアドレス |
VShell C&Cサーバー |
2026年6月 |
|
hxxps://45.150.109[.]151.sslip.io:23088/app/js/jquery.min.js |
URL |
IceCube JavaScriptバックドアの配信とC&C |
2026年5月 |
|
hxxps://194.213.18[.]133.sslip.io:23088/app/js/jquery.min.js |
URL |
IceCube JavaScriptバックドアの配信とC&C |
2026年6月 |
|
hxxps://45.150.109[.]151.sslip.io:23088 |
URL |
IceCube JavaScriptバックドアの配信とC&C |
2026年5月 |
|
hxxps://194.213.18[.]133.sslip.io:23088 |
URL |
IceCube JavaScriptバックドアの配信とC&C |
2026年6月 |
|
hxxp://45.86.229[.]111/slw:8080 |
URL |
VShell配信用URL |
2026年6月 ```
|
|
a02f124c5ce4180bd130a62ee03262f399c33491de3aed36e0b15155ae4926c0 |
SHA256 |
IceCube stealer |
2026年6月 |