本ブログは、英語版ブログ「https://www.proofpoint.com/us/threat-insight/post/ta505-begins-summer-campaigns-new-pet-malware-downloader-andromut-uae-south」の翻訳です。
概要
Proofpointの観測によると、脅威アクター達はランサムウェアを主なペイロードとして使うことをやめており、2018年中はダウンローダー、バックドア、インフォメーションスティーラー、リモートアクセス型トロイの木馬(RAT)などの配信を増加させてきました。このトレンドの最前線にいる非常に活動的なアクターであるTA505は、2018年11月に「ServHelper」と名付けた新しいバックドアの配信を開始しました。ServHelperには2つの種類があり、1つはリモートデスクトップ機能にフォーカスしたもので、もう1つは主にダウンローダーとして機能するものでした。
そして2019年6月、TA505は新しいダウンローダーマルウェア「AndroMut」を配信し始めたようです。AndroMutは、そのコードと動作の両面で、老舗のマルウェアファミリーであるAndromedaといくつかの類似点があります。またProofpointは、AndroMutが「FlawedAmmyy」と呼ばれるマルウェアをダウンロードすることも確認しました。FlawedAmmyyは2016年初頭に最初に観測されたフル機能のRATで、合法的なシェアウェアツールである「Ammyy」の流出したソースコードをベースにして開発されています。
- こちらも併せてお読みください: Leaked Ammyy Admin Source Code Turned into Malware
- こちらも併せてお読みください: Andromeda Under the Microscope (Avast)
キャンペーン分析
Proofpointの研究者は、AndroMutを使用してFlawedAmmyyをダウンロードする2つの異なるキャンペーンを観察しました。どちらもTA505によるものです。
最初のキャンペーンは、韓国のユーザーをターゲットにしており、以下のようなメッセージが使われました:
送信者名:
- 백승기
件名:
- 쌍용 인보이스 1234
URL
- 記事末尾のIOCを参照してください
送信者名:
- 최성은
件名
- 송금증 $123.12
添付ファイル名:
- 20.06.2019 송금증 123.12.doc
- 20.06.2019 송금증 123.12.xls
- 20.06.2019 송금증 123.12.htm
- 20.06.2019 송금증 123.12.html
送信者名:
- "Kim, DongHoon (Dongtan_Con)"
件名:
- 견적서
添付ファイル名:
- Cml-123456-1.xls
HTMまたはHTML添付ファイルには、Officeファイルのダウンロードリンクが含まれていました。これにより配信されるWordまたはExcelファイルは、状況に応じてFlawedAmmyyローダーまたはAndroMutをダウンロードして実行するMsiexecコマンドを実行するためにマクロを使用します。Proofpointの研究者は、AndroMutがFlawedAmmyyをダウンロードした事例を観測しました。
図1:TA505がAndroMutを配信するために使ったメールの例
図2:TA505がAndroMutを配信するために使ったドキュメントの例
2番目のキャンペーンは、シンガポール、アラブ首長国連邦、米国の金融機関のユーザーを対象としていました。使われたメッセージは以下のとおりです:
送信者名:
- Mir Imran Medhi
件名:
- Invoice & DOs
添付ファイル名:
- invoice-5601.doc
- invoice.xls
送信者名:
- Ong Kai Chin
件名:
- Profoma Invoice_1234
添付ファイル名:
- invoice-1234.doc
送信者名:
- Rejeesh Aj
件名:
- request for holding cheque
添付ファイル名:
- request.doc
- Rq20061901.doc
繰り返しになりますが、配布されたWordまたはExcelファイルは、状況に応じてFlawedAmmyyローダーまたはAndroMutをダウンロードして実行するMsiexecコマンドを実行するためにマクロを使用します。ProofpointはAndroMutが関与した事例で、FlawedAmmyyのダウンロードを観測しました。
図3:TA505がAndroMutを配信するために使った添付ファイル付きの電子メールの例
AndroMutマルウェアの解析
AndroMutはC ++で書かれた新しいダウンローダーマルウェアで、Proofpointの研究者が2019年6月に発見し、観測を始めました。名前の「Andro」の部分は、いくつかの特徴がAndromeda [1]として知られるダウンローダーマルウェアに似ていることに由来しており、「Mut」は分析されたサンプルが作成するミューテックス「mutshellmy777」に基づいています。
Windows APIコール
このマルウェアは、Windows API呼び出しのほとんどを実行時にハッシュによって解決します。ハッシュアルゴリズムはFireEye [2]によって「ror13AddHash32Dll」と呼ばれており、DLLとAPI名の各文字を13ずつROR(Rotate Right)してから、それらを加算します。APIハッシュの例は次のとおりです:
- lstrcpyW - 0xE33D73B4
- CreateMutexW - 0x95898DFF
- socket - 0xED83E9BA
文字列の復号化
AndroMutは、次の2つの方法のいずれかで文字列を復号化します。
- 暗号化された文字列はbase64で復号化され、その後ECBモードでAES-256によって復号化されます。各文字列は独自の鍵を持ち、32バイトの16進数文字列のように見えます(図4)。
図4:Type1暗号化文字列の例
- 暗号化された文字列はスタック文字列として格納されます。それぞれの文字列は独自の数学的問題を解くことによって解読されますが、これらの問題に数学的な意味は無さそうです。図5は、ストリング「cmd /C」の復号化の例を示しています。等価なPythonコードのスニペットがGithubで入手できます[3]。
図5:Type2暗号化文字列の例
Anti-Analysis
Windows APIハッシュと文字列暗号化に加えて、AndroMutは以下のAnti-Analysisテクニックを使用します:
- 次のプロセス名を探してサンドボックス化をチェック:
- cmdvirth.exe (COMODO)
- SbieSvc.exe (Sandboxie)
- VMSrvc.exe (Virtual PC)
- xenservice.exe (Xen)
- マウスの動きを確認
- レジストリで“ HKEY_CURRENT_USER\SOFTWARE\Wine”サブキーを探すことによってWineエミュレータをチェック
- プロセス環境ブロック(PEB)のNtGlobalFlagフィールドに設定されているデバッグフラグを探して、デバッガをチェック
- 「Puleg」ミューテックスを設定し、ミューテックスハンドルにHANDLE_FLAG_PROTECT_FROM_CLOSEフラグを設定してから、ハンドルを閉じようとすることによって、デバッガをチェック
- 重要なデータを使用した後に明示的にメモリをゼロに
永続性
ユーザーの権限に応じて、「ごみ箱」内に作成したLNKファイルを実行するタスクをスケジュールするか"Registry run"メソッドを介して実行することで、永続性を獲得します。
コンフィグレーション
AndroMutは5つのコンフィグレーション要素を含んでおり、それらをType 1暗号化文字列として格納します:
- Command and control(C&C)ホスト
- C&Cポート
- C&C URI
- C&Cで使用される暗号化キー
- C&Cで使用されるJSONキー
Command and Control
URLはコンフィグレーションをベースに構築され、C&C通信はHTTP POST要求を使用して確立されます。リクエストに対するレスポンスの例を図6に示します:
図6:C&Cレスポンスの例
リクエストデータとレスポンスデータはどちらも、コンフィグレーション済みのJSONキーを含むJSONオブジェクトです(分析したサンプルでは、キーは「w」でした)。キーの値は、設定されたC&Cキーを使用して、ECBでAES-256を使用して16進復号化および復号化することによって復号化できます(分析したサンプルでは、キーは「736769476A5162373558736B71703962」でした)。
平文によるリクエストの例は次のようになります:
{
"data": {
"arch": true,
"cmd": 1,
"os": "Win7",
"rights": true,
"tid": "<16 uppercase hex digits>"
}
}
これは、次のキーを含むデータキーを含むJSONオブジェクトです:
- tid - Bot ID
- os - Windows のバージョン
- arch - “true” が x64 を示す
- rights - “true” が管理者特権を示す
- cmd - コマンドレスポンスコード
平文のレスポンスの例は次のようになります:
{
"status": "200",
"wmjf": "rtjlafogqsebkxuy"
}
「status」キーはさまざまなコマンドに割り当てられます。残りのキーはコマンド固有の引数です。AndroMutは以下のコマンドを実行することができます。
- 100 - 自身を削除して終了
- 200 - 初期ビーコンレスポンス。引数は使用されず、ランダムなパディングのように見えます
- 300 - Base64は「data」値をデコードし、「name」値を使用してそれを%TEMP%ディレクトリに保存してから、CreateProcessW Windows APIを使用して実行します。例として以下を参照してください:
{
"data": "TVqQAAMA...",
"name": "okbrjzxp.tmp",
"size": "797048",
"status": "300",
"type": "application/x-msdownload"
}
その他の「status」コードは次のとおりです:
- 301 - 「300」コマンドと似ていますが、「cmd[.]exe[/]C」を使用してファイルを実行します
- 302 - 「300」コマンドと似ていますが、LoadLibraryEx Windows APIを使用してファイルを実行します
- 303 - 自己更新
ペイロード
Proofpointは、本ブログ執筆時点でAndroMutが上記のTA505キャンペーンでFlawedAmmyyリモートアクセス型トロイの木馬(RAT)[4]を配信したことを観測しています。
他のマルウェアとの類似点
Proofpointの研究者は、AndroMutが新しいマルウェアファミリーであると考えていますが、分析結果に他のファミリーとの類似点も含まれていることは言及しておく必要があるでしょう。Proofpointは、これと他の2つのマルウェアダウンローダー(Andromeda [1]およびQtLoader [5] [6])との間で、信頼性は低いものの、いくつかの重複があると考えています。また、AndromedaとQtLoaderの間にも、いくつかの類似点がありました。
結論
TA505は、ここ数年の脅威ランドスケープを形作ってきた主要なアクターであり、それは主に2017年末から2018年に行われたキャンペーンの膨大なボリュームに起因します。ここ2年の間、Proofpointの研究者はTA505や他の多くのアクターがダウンローダー、RAT、インフォメーションスティーラー、およびバンキング型トロイの木馬に注力していることを観測しています。2019年6月の新たな動きは、TA505のいつもの「フォロー・ザ・マネー(金銭目的)」行動パターンに則り、米国、アラブ首長国連邦、およびシンガポールの商業銀行業界を主要なターゲットとしたことを示しています。
この新しいAndroMutダウンローダーとFlawedAmmy RATとの組み合わせは、TA505の2019年夏の新しい「ペット」になるでしょう。
リファレンス
[1] https://malpedia.caad.fkie.fraunhofer.de/details/win.andromeda
[2] https://github.com/fireeye/flare-ida/tree/master/shellcode_hashes
[3] https://github.com/EmergingThreats/threatresearch/tree/master/andromut
[4] https://www.proofpoint.com/us/threat-insight/post/leaked-ammyy-admin-source-code-turned-malware
[5] https://malpedia.caad.fkie.fraunhofer.de/details/win.qtbot
[6] https://twitter.com/sysopfb/status/921396006431969280
Indicators of Compromise (IOCs)
IOC |
IOC Type |
Description |
hxxp://greenthumbsup[.]jp/20.06.2019_746.38.doc |
URL |
TA505 Document |
hxxp://fakers[.]co[.]jp/20.06.2019_130.22.doc |
URL |
TA505 Document |
hxxp://nagomi-753[.]jp/20.06.2019_800.77.doc |
URL |
TA505 Document |
hxxp://nanepashemet[.]com/20.06.2019_781.37.xls |
URL |
TA505 Excel File |
52f0aaff3654110e82586d21b07c8a3de23dc9efb3f4001daf412286282315c0 |
SHA256 |
TA505 Document |
d0aaf465a2569abbdcbafc049be1c1a643572f4ca185058833310435bfa53358 |
SHA256 |
TA505 Document |
eb3792fc83cd65823bc466e7253caf12064826b058230666d2ed51542ac59275 |
SHA256 |
TA505 Excel File |
f21039af47e7660bf8ef002dfcdb0c0f779210482ee1778ab7e7f51e8233e35c |
SHA256 |
TA505 Document |
3e3eb26211459eb2d8b52a2429a52e7e12d2145d7733823d7415663537a0b6ca |
SHA256 |
TA505 HTML |
8621fa54946096ed38aee5cbcc068c0620416a05c17328a527673e808847850d |
SHA256 |
TA505 Excel File |
c4963dcf6b32459740f6a3d3b4d06d9dc06f15087ca01775956df36206543301 |
SHA256 |
TA505 Document |
a905838db6e6617edd9d25baaaaee9c209381d456e809081977e27c3e0b15793 |
SHA256 |
TA505 Document |
59af9102a921130fd1d120f6cee7fc7cdfc28292a7a4a8c24233126604aa9443 |
SHA256 |
TA505 Document |
98b584b31457b21d0d48fcc78093439638e15dd1705e54182d9aa4ffad014c3a |
SHA256 |
TA505 Excel File |
bb5054f0ec4e6980f65fb9329a0b5acec1ed936053c3ef0938b5fa02a9daf7ee |
SHA256 |
AndroMut |
hxxp://kreewalk[.com:80/viewforum.php |
URL |
C&C |
5eddc55c0c445baf2752d56229fa384b7e3f1c7e76b22f43e389c6a711aa713a |
SHA256 |
FlawedAmmyy |
ET および ETPRO Suricata/Snort シグネチャ
2836975 ETPRO TROJAN AndroMut Checkin