サイバー脅威
ツールキット「MOONSHINE」やバックドア「DarkNimbus」を駆使する攻撃グループ「Earth Minotaur」のマルチプラットフォーム戦略
攻撃グループ「Earth Minotaur」は、ツールキット「MOONSHINE」を用いてAndroid版メッセージアプリの脆弱性を突き、監視機能に長けたバックドア「DarkNimbus」を標的端末に送り込みます。
- 脆弱性悪用のためのエクスプロイトツールキット「MOONSHINE」を駆使する攻撃グループ「Earth Minotaur」の活動について、分析しました。今回発見されたMOONSHINEは、2019年の報告当初よりも機能面で強化され、より多くの脆弱性を狙うことが可能となっています。2024年時点で、本ツールキットのサーバが55件以上確認されています。
- MOONSHINEは、Android用メッセージアプリの脆弱性を突くツールであり、主にチベットやウイグルのコミュニティを狙った活動に利用されています。
- 今回の攻撃では、これまで未報告のAndroid版バックドア「DarkNimbus」が導入されています。DarkNimbusには、Windows版も存在します。
- Earth Minotaurは、MOONSHINEを用いてWeChatの脆弱性を突き、AndroidとWindowsの両端末にDarkNimbusを送り込もうとします。これは、クロスプラットフォーム攻撃に相当する可能性があります。
- MOONSHINEは、特にChromiumベースのブラウザやアプリケーションに含まれる既知の脆弱性を狙います。そのため、ソフトウェアの定期的な更新が重要な対策となります。
ツールキット「MOONSHINE」を用いる攻撃グループ「Earth Minotaur」
トレンドマイクロでは2019年以降、エクスプロイトツールキット「MOONSHINE」による活動の状況を監視してきました。その過程で、MOONSHINEが稼働するサーバの1つにセキュリティ不備を抱えたものがあり、MOONSHINEの動作ログやツールキット本体が公開されていました。詳細な分析により、MOONSHINEを利用する攻撃グループ「Earth Minotaur」の戦略や、その被害者に関連する情報が特定されました。
MOONSHINEは、チベットのコミュニティを狙った活動に使用されるツールキットとして発見されました。また、ウイグルのコミュニティを狙った活動にも使用されたと見られています。MOONSHINEの主な目的は、メッセージアプリの脆弱性を突き、モバイル端末をバックドア型マルウェアに感染させることです。今回トレンドマイクロが発見した新規バージョンは、以前のものと比べて新たな脆弱性を扱える他、セキュリティ解析の妨害機能も強化されています。また、2024年の時点で、稼働中のMOONSHINE用サーバが少なくとも55件特定されています。以上のように、本ツールキットは現在なお活発に利用されています。
攻撃グループ「Earth Minotaur」は、主にチベットやウイグルのコミュニティを狙い、ツールキット「MOONSHINE」を用いて標的のAndroid端末にバックドア型マルウェアを送り込みます。当該バックドアはこれまで報告されていなかったものであり、トレンドマイクロでは、これを「DarkNimbus」の呼称で追跡しています。また、Android版の他にWindows版も発見されるなど、クロスプラットフォーム対応のバックドアであることがうかがわれます。本稿では、「MOONSHINE」の新規バージョンやバックドア「DarkNimbus」の解析結果に加え、Earth Minotaurによるソーシャルエンジニアリングの手口も含めた全容を解説します。
攻撃の流れ
Earth Minotaurは、はじめに不正なリンクの埋め込まれたメッセージを作成し、メッセージアプリ経由で標的のユーザに送信します(図1)。この際、リンクのクリック率を高めるためにメッセージの内容を巧妙に調整し、チャット上の特定人物になりすますなど、ソーシャルエンジニアリングの手口を使用します。実際に被害者がリンクをクリックすると、MOONSHINEのサーバに転送され、そこからバックドアのインストールが行われます。
Earth MinotaurがMOONSHINE経由で作成した攻撃用リンクは、正規なリンクと映るように振る舞います。具体的に、本リンクをクリックした被害者はMOONSHINE用サーバに転送(リダイレクト)されますが、攻撃が完了した時点で、正規のサイトに再転送されます。結果、被害者側で攻撃に気付けない可能性が高まります(詳細は後の「MOONSHINEを用いた手口」で解説)。MOONSHINEのサーバ上に公開されていた動作ログに基づくと、中国で配信された攻撃用リンクは、主に下記の内容で偽装されていました。
- 政府の発表
- COVID-19に関する中国語のニュース
- 宗教、チベット、ウイグルに関する中国語のニュース
- 中国の旅行情報
こうしたリンクのアクセス元を調べたところ、その大半が、中国所在のIPアドレスとなっていました。また、一部のリンクについては、中国以外のIPアドレスからもアクセスされやすい傾向が見られました(図2)。さらに、当該リンクの全てが、チベットやウイグルの音楽やダンスをテーマとするオンライン動画に再転送する作りとなっていました。
動作ログを分析したところ、リンクへのアクセスが複数国から同時に発生するパターンも見られました。そのため、リンクの埋め込まれたメッセージは個人単位ではなく、複数人からなるグループチャットに送られていた可能性があります。
MOONSHINEによる攻撃の手口
Earth Minotaurは、MOONSHINEのサーバを介して攻撃用のリンクを作成します。MOONSHINEの新規バージョンが作成するリンクには、事前に定義済みの設定データが埋め込まれます。これには、偽装用の正規なリンクやタイムスタンプ、タグ情報などが含まれ、Base64でエンコードされた状態で、リンクのクエリ文字列として付加されます。以下に、攻撃リンクの構成例を示します。
http://{ホスト名/api/v1/things/web?going=wPol3ljdKj{Base64でエンコードされた正規のリンク} wPol3ljdKjW5qTvAdmgs{Base64でエンコードされたタイムスタンプやハッシュ値}W5qTvAdmgsLo8UTetjN l{タグ情報}Lo8UTetjNl
リンクをクリックした被害者は、MOONSHINEのサーバに転送されます。これに対してMOONSHINEは、リンク内の設定データに応じた操作を実行した上で、被害者を偽装先の正規なリンクに再転送します(図3)。結果、被害者の目には正常な処理が行われたように映り、不正に気付けない可能性が高まります。
設定データの1つである「タイムスタンプ」は、リンクの有効期限を記録します。期限が過ぎた場合、サーバは解析妨害を意図して、攻撃用のコードを被害者側に返送しなくなります。また、技術的に目を見張る点として、リンク内のタイムスタンプには、その値を元に算出されたソルトハッシュ値が付加されます。これは、タイムスタンプの改変を禁じる手立てです。最後にタグ情報は、攻撃の記録や管理を目的としたものであり、MOONSHINEのバックエンド側で利用されます。
MOONSHINEは、攻撃コードを返却する前にHTTPリクエストヘッダーの内容を調べ、被害者が使用しているブラウザ付きアプリのバージョン情報をチェックします。チェックによって脆弱性があると判定された場合、それを不正利用するための攻撃コードを返却します。一方、脆弱性がないと判定された場合は、攻撃コードを返すことなく、被害者を偽装先の正規なリンクに再転送します。
MOONSHINEは、Android版のメッセージアプリを攻撃するために、ブラウザエンジン「Chromium」に関連する数多くの脆弱性を利用します。Chromiumは、メッセージアプリの内部用ブラウザエンジンとして広く採用されています。こうしたアプリが当該のChromiumをアップデートせず、サンドボックス保護を有効化していない場合、そこが脆弱性となり、攻撃者にバックドアなどをインストールされる可能性が高まります。トレンドマイクロの調査に基づくと、MOONSHINEの攻撃対象としてはChromiumの他に、Chromium由来のブラウザエンジン「Tencent Browser Server(TBS)」も含まれ、さまざまなバージョンに対応しています。
こうした脆弱性の多くは、2019年の時点で「CitizenLab」から報告されていたものです。2020年以降の脆弱性は「CVE-2020-6418」のみであり、今回発見されたMOONSHINEの新規バージョンにおいて、利用が確認されました。
最近に入って「Cisco Talos Intelligence Group」より、メッセージアプリ「WeChat」を標的とする脆弱性「CVE-2023-3420」の詳細が開示されました。本脆弱性もまた、MOONSHINEの攻撃に組み込まれる可能性があります。
現状、実被害の発生に至ったアプリは、WeChatに限られます。しかし、MOONSHINEのコードに基づくと、WeChat以外にも、ChromeやTBSのバージョンを内部的に管理する多数のアプリが攻撃の対象となっています。
さらにMOONSHINEは、巧妙なフィッシングによって被害者を誘導し、アプリのブラウザ・バージョンをダウングレードさせる機能を備えています。本機能は、被害者がTBSベースのアプリを利用中で、かつ、そのバージョンがMOONSHINEの攻撃対象から外れている場合に発動します。この時、MOONSHINEサーバは、攻撃コードの代わりにフィッシングページを返却し、ブラウザエンジンのバージョンが古い旨を示唆するテキストや、アップグレード用のリンクを提示します(図4)。しかし、実際にリンク先から取得されるブラウザエンジンは古いものであり、脆弱性が含まれています。以上の手口によってMOONSHINEは標的アプリのブラウザエンジンをダウングレードした上で、再度攻撃を実行します。
バックドアの配備手段
脆弱性の利用に成功した場合、攻撃コードは事前に用意されたシェルコードを実行し、標的端末にバックドアを配備します。この際の手続きは、以前のELFローダを用いた方式とは異なります。今回のシェルコード(図5)は、WeChatの正規なXWalkブラウザの中枢部を、不正な改変版に直接置き換える点で異なります。XWalkは、WeChatのクローズソース・プロジェクトであり、フレームワーク「Crosswalk」から派生したものと考えられます。攻撃者のサーバには、バックドア機能の仕込まれたXWalkのAPKファイルが、バージョン毎に用意されています。今回のシェルコードは、標的の脆弱性やバージョンに応じたAPKファイルをダウンロードし、WeChat内のXWalkを置き換えます。本シェルコードの動作概要を、下記に示します。
- 不正なXWalkのAPKファイルを攻撃者のサーバからダウンロードし、名前を「base_bk.apk」に変更する。
- ダウンロードした「base_bk.apk」で、元の「base.apk」を置き換える。
- 元のファイルのMD5ハッシュ値が記載されたファイル「filelist.config」や「reslist.config」を空にする。これらのMD5ハッシュ値は、ファイルの整合性チェックに使用されるものである。
- フォルダ「app_xwalkconfig」のパーミッション設定を変更する。
- 空のファイルをダウンロードし、「base_bk.apk」を上書きする。
不正なXWalkの中枢部では、関数「startBrowserProcess」が改変されている他(図6)、バックドアのエントリポイントが埋め込まれています。バックドア機能の実行に際しては、はじめに関数「stuber」が呼び出され、必要な環境設定が行われます(図7)。この初期処理の概要を、下記に示します。
- ファイル「filelist.config」を空にする。
- バックドア側で必要なファイル「libwcdb.so」をリモートサーバからダウンロードする(wcdbは、モバイル用の軽量データべースに相当)。
- XWalk用APKファイルのMD5ハッシュ値を算出し、攻撃者が用意した改変版であるかを確認する。改変版でない場合は、再度ダウンロードし、上書きする。
- バックドアのメイン機能を呼び出す。
バックドア「DarkNimbus」
Androidプラットフォーム
XWalkに仕込まれているメインのバックドアは、首尾一貫したAndroid監視ツールです。本調査では、当該バックドアの独立したバージョンが発見され、それが2018年頃から開発され、以降も活発に更新されていることが判明しました。また、バックドアのバージョンによっては、関数内に「DKNS」という文字列が散見されました。そのためトレンドマイクロでは、本バックドアを「DarkNimbus」の呼称で追跡しています。
DarkNimbusは、C&Cサーバとの通信にXMPPプロトコルを使用します。XMPP通信ハンドラの実装手段として、オープンソースプロジェクト「Smack」が採用されています。また、ファイル転送を目的とする別サーバとの通信時には、HTTPSプロトコルを使用します。
本バックドアは、感染端末の基本情報やインストール済みアプリ、位置情報(GPS)の収集をサポートします。特に、個人情報として連絡先一覧や通話履歴、SMS、クリップボードの内容、ブラウザのブックマーク、さまざまなメッセージアプリの会話履歴を窃取します。この他、通話の録音、写真の撮影、スクリーンショットの採取、ファイルの操作、コマンドの実行を含む機能もサポートしています。こうした個々のバックドア機能に対し、「cmd」から始まる5桁のコマンドIDが割り振られています。
DarkNimbusは、本来であれば端末操作のサポート目的で使用される「アクセシビリティ・サービス」を介し、メッセージアプリの会話内容を監視、窃取します。対象のメッセージアプリがフォアグラウンドで実行されている時にアクセシビリティ・サービスの「画面テキスト認識機能」を用いることで、アプリ内のテキストを読み取ります。対象とされるメッセージアプリの一覧を、下記に示します。
- DingTalk
- MOMO
- Skype
- TalkBox
- Voxer
なお、今回MOONSHINEが配布したDarkNimbusのバージョンでは、WeChatのみが攻撃対象となっています。他のメッセージアプリを攻撃する機能は、実装から除去されています。
Windowsプラットフォーム
本調査では、Windows向けに設計されたバックドアも発見されました。その開発が行われたのは、コンパイルのタイムスタンプやハードコーディング文字列から判断すると、2019年7月から10月にかけてのことと考えられます。しかし、トレンドマイクロのテレメトリ情報やバイナリ内部の文字列に基づくと、実際に利用されたのは、2020年12月のこととなります。
Windows版のファイルには、当該マルウェアファミリーのバージョンを示す文字列が2個あり、それぞれ異なっていました。1つ目は、ログファイルに記載された「..Start.. 0.0.9a」という文字列です。2つ目は、コマンド「cmd_10001(詳細は後述の表4に記載)」によって送信されるJSONデータのキー「mm_version」に対応する値「2.0.1」であり、ハードコーディングで定義されています。
今回は、Windows版に相当する検体が複数発見されました。また、C&C通信のプロトコルとして、下記の2パターンが確認されました。
- 標準プロトコルでは、IPアドレス「117.175.185[.]81」のポート「8001」に接続し、収集済みのデータをPOSTで送信し、次のコマンドが来るまで待機する。
- 別のプロトコルでは、CloudFlareに属するIPアドレス「1.1.1.1」のポート「8005」に対してメッセージ「DKGETMMHOST」を送信する。続いて、返された応答データの中から、文字列「DKGETMMHOST」や「DKFESN」をキーに検索を行い、最終的なC&CサーバのIPアドレスを割り出す。トレンドマイクロの分析として、攻撃者がCloudFlareを侵害したとは考えにくい。これは、どちらかと言うと「中間者攻撃(MitM:Man-in-the-Middle)」を前提としたものであり、通信経路上の中間者がマルウェア側にC&CのIPアドレスを直接伝達する方式と見られる。
Windows版バックドアの機能
バックドア「DarkNimbus」のWindows版は、C++で作成されたものであり、スレッドを起動することにより、複数の機能を実行します。各機能に対するコマンドIDのネーミング方式はAndroid版と同様ですが、実装自体は異なっています。
コマンドの実行結果は、JSON形式でC&Cサーバに送信されます。また、JSONデータの作成処理は、軽量のC++向けJSONツール「CJsonObject」で実装されています。
DarkNimbusが起動するスレッドの大半は、サーバに送信するデータのコピーを取り、Base64でエンコードした上で、ファイルに保存します。ファイル名として、ハードコーディングされた文字列のMD5ハッシュ値が使用されます。
攻撃者の特定
トレンドマイクロの分析に基づくと、Earth Minotaurは、これまで未報告の侵入セットに相当すると考えられます。ツールキット「MOONSHINE」を最初に報告した2019年のレポートでは、背後にいる攻撃者が「POISON CARP」の名で呼ばれていました。Earth MinotaurとPOSION CARPを比較したところ、双方ともMOONSHINEを利用し、類似の標的を狙いますが、それ以上の接点は見出されませんでした。バックドア「DarkNimbus」は2018年の時点で開発されていましたが、POSION CARPが過去にそれを利用したという事例は確認されていません。そのため、トレンドマイクロでは、Earth MinotaurとPOISON CARPを異なる侵入セットとして分類しています。
2020年にトレンドマイクロは、POISON CARPに関連すると見られた攻撃グループ「Earth Empusa」について報告しました。一方、Metaからの報告では、Earth EmpusaをPOISON CARPから独立したグループと見なすべきという見解が示されました。また、「Earth Empusa」と「Earth Minotaur」についても、両者を紐づける証跡は得られていません。
本調査では、下記ドメインで稼働する新規のMOONSHINEサーバが発見され(図8)、2023年11月に使用されていたことが分かりました。
info[.]symantke[.]com
注目すべきこととして、2023年12月に攻撃グループ「UNC5221」がIvantiを狙って実行したゼロデイ攻撃では、第2レベルまで一致する下記ドメインが使用されました。
symantke[.]com
以上より、UNC5221もMOONSHINEを利用している可能性が示唆されます。しかし、UNC5221とEarth Minotaurの繋がりを示す証跡は、得られていません。
2020年10月にDr. Webは、ShadowpadとPlugXの類似性に関する分析結果を報告し、SFKアーカイブに含まれるShadowpadのファイルが以下として検知された旨を述べました。
Backdoor.Shadowpad.4
当該のSFKアーカイブには、下記の3ファイルが格納されています。
- TosBtKbd.exe:「Toshiba」の署名が付された正規の実行ファイルであり、DLLサイドローディングの脆弱性を持つ。
- TosBtKbd.dll:Shadowpadの検体に相当し、上記の「TosBtKbd.exe」によってサイドロードされる。
- TosBtKbdLayer.dll:DarkNimbusの検体に相当し、「BackDoor.Siggen2.3243」として検知される。上記の「TosBtKbd.dll」によってロードされる。
Dr. Webの報告によると、当該検体はShadowpadやPlugXの調査中に発見されたものですが、背後にいる実行グループや対応する攻撃キャンペーンの特定には至っていません。上記のDarkNimbusに相当する検体は、2019年7月から10月にかけて開発されたものと見受けられます。Shadowpadは2017年に発見され、当初はAPT41によって専有されていましたが、2019年以降は、複数の中国系グループの間で共有されています。そのため、Shadowpadの利用を根拠に攻撃グループを直接特定することは、難しいと考えられます。
また、今回調査したShadowpadの検体と、2020年1月にESETが攻撃グループ「Winnti」に関するレポート内で報告した検体を比較すると、ペイロードの圧縮・展開アルゴリズムが同一であることが分かりました(図9)。しかし、文字列の復号に使用される定数は、異なっています。
この他、ESETが挙げた検体と類似のC&Cサーバに接続し、同じアルゴリズムで文字列を暗号化する検体が発見されました(図10)。
今回トレンドマイクロが発見したDarkNimbusのローダについて、ペイロードや文字列暗号化アルゴリズムの一致する検体が、Secure Worksの報告にも記載されています。当該検体はベトナムの組織を狙ったものとされていますが、既存グループとの紐付けには至っていません。
また、これらの特徴を共有し、下記のC&Cに接続するShadowpadの検体も発見されました。
news[.]tibetonline[.]info
2019年に出現した本検体は、未報告のものであり、上記ドメインを踏まえると、チベットを標的にしている可能性があります。本ドメインは、2013年、2015年、2017年においても、中国関連の攻撃キャンペーンに焦点を当てた報告で度々報告されてきました。
以上の発見事項は、既知の攻撃グループとの紐付けを行う上で十分なものではありませんが、少なくとも、中国系のさまざまな攻撃キャンペーン間に見られる接点や、マルウェアファミリの共有状況を明確に示すものです。さらに、Shadowpadを用いる中国系の攻撃グループが、また新たに発見されたと言えるでしょう。
まとめ
Earth Minotaurは高度な技術を有する攻撃グループであり、ツールキット「MOONSHINE」を駆使してチベットやウイグルのコミュニティを狙った活動を展開しています。トレンドマイクロの分析に基づくと、MOONSHINEは依然として機能強化の過程にあり、Earth MinotaurやPOISON CARP、UNC5221を含むさまざまな攻撃グループ間で共有されています。本稿では、Earth MinotaurがMOONSHINEをどのようにカスタマイズし、メッセージアプリ「WeChat」を攻撃するかについて解説しました。また、長期的な諜報作戦の手段として用いられるバックドア「DarkNimbus」について、標的端末に配備する手口も含めて、詳細に分析しました。
一連の攻撃を防ぐ上では、不審なメッセージに埋め込まれたリンクなどを誤ってクリックしないように、警戒心を維持することが重要です。そうすることで、MOONSHINEをはじめとする不正なサーバへの誘導や、端末の侵害を阻止できる可能性が高まります。また、定期的にアプリケーションを最新版にアップデートすることで、既知の脆弱性に対する保護対策を的確に取り込むことが可能となります。
トレンドマイクロによる脅威情報の活用
進化する脅威に備え、トレンドマイクロの製品をご利用の方は、Trend Vision One™を通してさまざまなインテリジェンス・レポート(Intelligence Report)や脅威インサイト(Threat Insight)にアクセスできます。脅威インサイトは、サイバー攻撃の脅威が生じる前に対策を確立し、準備体制を整える上で役立ちます。さらに、不正な活動や手口を含めた攻撃者に関する情報を、幅広く網羅しています。こうした脅威情報を活用することで、ご利用の環境を保護し、リスクを軽減し、脅威に的確に対処するための対策を自発的に講じていくことが可能となります。
Trend Vision Oneのアプリ「Intelligence Reports」(IOC Sweeping)
Earth Minotaur Leverages MOONSHINE Exploit kit to Compromised Mobile Devices for Surveillance Operations(ツールキット「MOONSHINE」やバックドア「DarkNimbus」を駆使する攻撃グループ「Earth Minotaur」のマルチプラットフォーム戦略)
Trend Vision Oneのアプリ「Threat Insights」
Threat Actors: Earth Minotaur(攻撃グループ:Earth Minotaur)
Emerging Threats: Earth Minotaur Leverages MOONSHINE Exploit kit to Compromised Mobile Devices for Surveillance Operations(高まる脅威:ツールキット「MOONSHINE」やバックドア「DarkNimbus」を駆使する攻撃グループ「Earth Minotaur」のマルチプラットフォーム戦略)
スレットハンティングのクエリ
Trend Vision Oneのアプリ「Search」
Vision Oneをご利用のお客様は、アプリ「Search」の機能を用いることで、ご利用中の環境を解析し、本稿で挙げた不正な活動の兆候を検知、照合できます。
DarkNimbusやShadowpadがC&CサーバのIPに接続
eventId:3 AND ((dst:117.175.185.81 AND dpt:8001) OR (dst:125.65.40.163 AND dpt:46991) OR (dst:112.121.178.90 AND dpt:44444) OR (src:117.175.185.81 AND spt:8001) OR (src:125.65.40.163 AND spt:46991) OR (src:112.121.178.90 AND spt:44444))
Vision Oneをご利用中で、かつ「Threat Insights」(現在プレビュー版)が有効となっている場合、さらに多くのハンティング用クエリをご確認いただけます。
侵入の痕跡(IoC:Indicators of Compromise)
侵入の痕跡(IoC)は、こちらからダウンロードできます。
謝意
本調査にあたっては、Cisco Talos Intelligence GroupのAshley Shen氏より、攻撃ツール「MOONSHINE」に関する情報をご共有いただきました。
参考記事:
MOONSHINE Exploit Kit and DarkNimbus Backdoor Enabling Earth Minotaur’s Multi-Platform Attacks
By: Joseph C Chen, Daniel Lunghi
翻訳:清水 浩平(Core Technology Marketing, Trend Micro™ Research)