Roaming Mantis パート6:Wroba.g/Wroba.oの変化と欧州への標的拡大

Roaming Mantisに関する最新情報。2021年に観測された変化について。

Roaming Mantisは、Android端末を標的とし、スミッシングでモバイルマルウェアを拡散する悪質な攻撃活動です。当社は2018年以来Roaming Mantisを追跡しており、その活動に関する5つのブログ記事を公開しています。

前回の記事からしばらく空きましたが、2021年にはRoaming Mantisの新たな活動を観測し、この活動で主に使用されるAndroid向けトロイの木馬「Wroba.g」(またはWroba.o、別名:Moqhao、XLoader)にいくつかの変化を確認しています。また、Roaming Mantisの主な標的は日本、台湾、韓国でしたが、ここにフランスとドイツが加わりました。

Roaming Mantisの被害者の地理的分布

最新の調査では、Roaming Mantisがスミッシングを通じた感染を欧州へ拡大しようとしていることが分かりました。ドイツおよびフランスでの活動は非常に活発で、ドイツの警察フランスのメディアが取り上げるほど問題視されています。これらの記事では、スミッシングのメッセージやランディングページとして使われている感染したWebサイトについて注意喚起がなされています。

スミッシングに関して警告するWebサイト(ドイツ、フランス)

スミッシングに関して警告するWebサイト(ドイツ、フランス)

スミッシングのメッセージは、一般的に、非常に短い説明文とランディングページへのURLで構成されています。リンクをクリックしてランディングページを開いた場合、ユーザーの環境によって2つの攻撃が用意されています。iOSデバイスの場合はAppleの公式サイトなどを模したフィッシングページに誘導され、Androidデバイスの場合はマルウェア「Wroba」がダウンロードされます。

スミッシングリンクから、Wrobaのダウンロードまたはフィッシングページへの誘導が発生する

スミッシングリンクから、Wrobaのダウンロードまたはフィッシングページへの誘導が発生する

2021年7月から2022年1月の間に収集した検知データから、Wroba.gおよびWroba.oがさまざまな地域で検知されたことが分かりました。最も影響を受けたのはフランス、日本、インド、中国、ドイツ、韓国でした。

Trojan-Dropper.AndroidOS.Wroba.gおよびTrojan-Dropper.AndroidOS.Wroba.oの地理的な広がり

Trojan-Dropper.AndroidOS.Wroba.gおよびTrojan-Dropper.AndroidOS.Wroba.oの地理的な広がり

ここで、日本在住のセキュリティエキスパートである@ninoseki氏がInternet Week 2021Githubで公開した、Roaming Mantisのランディングページに関する興味深いデータを紹介します。このデータは、Roaming MantisがWroba.g/Wroba.oを使用して最も標的としている7地域について、2021年9月の特定の日に観測されたAPKファイルのダウンロード数、ランディングページのドメイン数、IPアドレスを示したものです。

ダウンロードされたAPKファイルの数、ランディングページのIP/ドメインの数

ダウンロードされたAPKファイルの数、ランディングページのIP/ドメインの数

以下の表は、APKファイルのダウンロード数に基づいたランキングです。最も影響を受けているのはフランスで、日本、ドイツなどが後に続きます。一部の地域は、前述した当社の検知結果とも重複していることが分かります。

地域 検知数 なりすまされたブランド
IP ドメイン ダウンロード
1 フランス 5 1,246 66,789 Google Chrome
2 日本 4 539 22,254 ヤマト運輸
3 ドイツ 1 162 2,681 Google Chrome
4 韓国 2 8 2,564 ePOST
5 米国 5 123 549 Google Chrome
6 台湾 1 62 302 智能宅急便(「ヤマト運輸」の中国語表記)
7 トルコ 3 5 27 Google Chrome

 

ランディングページにおけるリサーチャー避けテクニック

Roaming Mantisグループは、2020年から2021年にかけて、検知を逃れるために、ランディングページのスクリプトにさまざまな難読化技術を用いていました。

ランディングページのスクリプトに含まれるさまざまな難読化技術

ランディングページのスクリプトに含まれるさまざまな難読化技術

こうした難読化に加え、標的ではない地域のIPアドレスからの接続をブロックし、偽の「404」ページを表示します。

ユーザーエージェントのチェック機能は、2019年から変更されていません。ランディングページは、ユーザーエージェントによって接続元デバイスを判断し、iOSデバイスであればフィッシングページへ誘導、Androidデバイスであれば悪意あるAPKファイルをダウンロードさせます。

技術分析:Wroba.g/Wroba.oのローダーモジュール

kuronekoyamato.apkを例にWroba.g/Wroba.oの検体を詳細に分析したところ、ローダーモジュールとペイロードにいくつかの変更が見られました。まず、プログラミング言語が、JavaからKotlinに変更されています。Kotlinは、Javaと完全に相互運用できるように設計されたプログラミング言語です。また、multidexによる難読化がなくなった代わりに、埋め込まれたペイロード(\assets\rmocpdx\15k7a5q)のデータ構造に変更が加えられていました。

埋め込まれたペイロードのデータ構造の変更

埋め込まれたペイロードのデータ構造の変更

最初の8バイトはジャンクコード(グレー)で、その後にペイロードサイズ(オレンジ)、1バイトのXORキー(赤)、暗号化されたペイロード(緑)、さらにジャンクコード(グレー)が続いています。さらに、APKファイルの中にはELFファイル(\lib\armeaib-v7a\libdf.so)が含まれており、第2段階のペイロード、復号、ロード機能の一部にJava Native Interface(JNI)を使用するように設計されていました。ペイロードの復号処理とアルゴリズムは、以下の3ステップから成ります。

ランディングページのスクリプトにおけるさまざまな難読化技術

ランディングページのスクリプトにおけるさまざまな難読化技術

まずは、ジャンクデータを除く復号用データを埋め込みデータ構造から抽出します。次に、暗号化されたペイロードを、XORキーを用いてデコードします。デコード後、これまでの検体と同様にzlibを用いてデータを解凍し、最終的にペイロードであるDalvik Executable(DEX)ファイルを抽出します。

以下のPythonスクリプトを使用して、ペイロードを復号することができます。

#!/usr/bin/env python3

import sys
import zlib
import base64

data = open(sys.argv[1], “rb”).read()
key = data[11]
size = data[10] | data[9] << 8 | data[8] << 16
enc = data[12:12+size]
dec_x = bytes(enc[i] ^ key for i in range(len(enc)))
dec_z = zlib.decompress(dec_x)

with open(sys.argv[1]+”.dec”,”wb”) as fp:
­  fp.write(dec_z)

この検体の場合、復号されたペイロードは\data\data\ggk.onulfc.jb.utxdtt.bk\files\dとして実行され、悪意あるメインモジュールを標的のデバイスに感染させます。

技術的分析:Wroba.g/Wroba.oのペイロード

Wroba.g/Wroba.oペイロードの更新については、Kasperskyのエキスパートは、ペイロード部分に細かなアップデートを2つ確認しました。一つは、対応する言語でフィッシングページを表示するために、感染したデバイスの地域設定をチェックする機能です。過去の検体では、香港、台湾、日本の3つの地域をチェックしていました。しかし、今回のアップデートでは、新たにドイツとフランスが追加されました。このアップデートと先に紹介した地理的分布を併せると、ドイツとフランスがWroba.g/Wroba.oを使用するRoaming Mantisの主な標的になっていることが分かります。

もう一つの変更点は、バックドアコマンドにあります。「get_photo」「get_gallery」という2つのバックドアコマンドが追加され、「show_fs_float_window」というコマンドが削除されました。全体では、21個のバックドアコマンドが埋め込まれています。

2つの新しいコマンド「get_gallery」「get_photo」を含む、バックドアコマンドのリスト

2つの新しいコマンド「get_gallery」「get_photo」を含む、バックドアコマンドのリスト

新しい2つのバックドアコマンドは、感染したデバイスからギャラリーや写真を盗むために追加されました。ここから、犯罪者には2つの目的があると考えられます。一つは、運転免許証、健康保険証、銀行カードなどの情報を盗み、QRコード決済サービスやモバイル決済サービスなどの契約を結ぶというものです。また、盗んだ写真を使って脅迫やセクストーションなどの方法で金銭を得ることも可能です。なお、ペイロードのその他機能に変更はありません。詳細については、冒頭に紹介した過去の記事をご覧ください。

結論

当社が「Roaming Mantis」のキャンペーンを最初に観測してから、約4年が経過しました。この犯罪グループはそれ以来、HEUR:Trojan-Dropper.AndroidOS.Wrobaをはじめとするさまざまなマルウェアファミリーや、フィッシング、マイニング、スミッシング、DNSポイズニングなどの攻撃手法を用いて攻撃活動を継続しています。さらに現在は、主な標的地域に欧州の2国を加えるなど、地理的な拡大も見せています。強い金銭的動機が背後にあることから、Roaming Mantis の攻撃は2022年も続くと予測します。

Wroba.oのMD5ハッシュ

527b5eebb6dbd3d0b777c714e707659c
19c4be7d5d8bf759771f35dec45f267a
2942ca2996a80ab807be08e7120c2556
4fbc28088b9bf82dcb3bf42fe1fc1f6d
0aaf6aa859fbdb84de20bf4bf28a02f1
5bafe0e5a96b1a0db291cf9d57aab0bc
ddd131d7f0918ece86cc7a68cbacb37d

ヒント