[注意] 文書形式で拡散するエモテット(Emotet)マルウェア

AhnLab ASEC分析チームは、国内ユーザーをターゲットとした不正なVBAマクロが含まれているWordファイルが出回っていることを確認した。この不正なVBAマクロは、WMIによってpowershellを実行し、Emotetマルウェアをダウンロードさせる。Wordファイルを開くと、[図1]のようにVBAマクロを実行するように誘導するメッセージの画像が存在する。誘導メッセージは[図2]のように様々な形式のものが出回っている。

[図1] 不正なVBAマクロが含まれているWord

 

[図2] マクロ誘導メッセージ

現在出回っているVBAマクロは[図3]のようにダミーコードおよびコメントを利用して難読化されており、[図4]は難読化が解除されたVBAマクロである。   

[図3] 難読化されたVBAマクロ
[図4] 難読化が解除されたVBAマクロ

コードを分析した結果、昨年の11月にEmotetマルウェアを含んだVBAマクロはcmdによってpowershellを実行していた一方で、現在拡散しているマクロはWMI(winmgmts:Win32_Process)によってpowershellを実行する方式に変更されたことを確認した。

[図5] WmiPrvSEによって実行されるpowershell

WMIによって実行されるpowershellコマンドは[表1]のようにBase64でエンコードされた形式であり、デコードされたコマンドは[図6]の通りである。このコマンドは5つのURLのうちアクセス可能なURLを通してEmotetマルウェアをダウンロードし、UserProfileパスに77.exeというファイル名で保存して実行する機能を遂行する。この機能は、当社のセキュリティソフトの行為検出によってブロックされる。

powershell -enco PAAjACAAaAB0AHQAcABzADoALwAvAHcAdwB3AC4AbQBpAGMAcgBvAHMAbwBmAHQALg…(省略)…ABiADUAMQAwADYAYgBjADQAMABjADcANAA9ACcAeABjADEAYwAxADAAeAAyADgAOAAwADMANgAnAA==
[表1] エンコードされたpowershellコマンド
[図6] デコードされたpowershellコマンド

ダウンロードされたEmotetマルウェアは、「–XXXXXXXX」形式の引数値によって実行されることが特徴である。引数値はファイルパスをもとに計算され、当該引数値が存在しない場合、再度実行する。

[図8] マルウェアのパラメータ

マルウェアが実行されるとWindowsディレクトリが存在するドライブ(C:\)のボリュームシリアル情報を照会する。この情報は、重複実行を防止するためのMutex生成、およびファイル名生成ルールのキーとして使用される。

[図9] ボリュームシリアル情報の照会

以降、C:\Users\[ユーザー名]\AppData\Local\[新規ファイル名]\[新規ファイル名].exeパスに自己複製を行う。この時、ファイル名は[表2]一覧から2種類の項目を組み合わせて生成する。この2種類を選択するアルゴリズムは感染PCのボリュームシリアル情報をキーとして使用するため、感染したPCごとに異なる名前のファイルが生成される。

engine, finish, magnify, resapi, query, skip, wubi, svcs, router, crypto, backup, hans, xcl, con, edition, wide, loada, themes, syc, pink, tran, khmer, chx, excel, foot, wce, allow, play, publish, fwdr, prep, mspterm, nop, define, chore, shlp, maker, proc, cap, top, tablet, sizes, without, pen, dasmrc, move, cmp, rebrand, pixel, after, sms, minimum, umx, cpls, tangent, resw, class, colors, generic, license, mferror, kds, keydef, cable
[表2] 感染ファイル名の一覧 

また、上記と同じアルゴリズムで[表3]一覧を使用してファイル名を生成し、そのファイルを削除する。これは、新しいバージョンのマルウェアに感染したときに、もともと存在するマルウェアを削除するためであると分析している。

chunk, counter, drawa, isve, two, next, mapi, rtapi, nlsdl, defs, tenant, rstrt, window, machine, mira, system, stream, cursor, structs, history, watched, hash, report, program, durable, offc, rsat, folders, shell, yellow, sounds, adjust, toner, tlb, sorted, loop, post, txt, icons, intel, inset, move, reports, trc, based, wim, lumber, violet, dom, easy, cvt, center, even, readand, xinput, mem, cues, layer, tools, wfd, running, mail, gesture, misc 
[表3] 削除ファイル名の一覧 

ファイル名の生成ルールは同一であるため、同じPCで同じ一覧が与えられた場合、結果も同じとなる。これにより、過去バージョンのマルウェアがどのようなファイル名を持っているか、特定することができる。過去バージョンのマルウェアは[表2]の一覧でファイル名を生成し、このマルウェアの次のバージョンは[表3]の一覧でマルウェアファイルを削除するということが推定できる。実際に[表3]一覧でファイル名を生成し、感染したEmotetマルウェアをASDインフラを通して確認することができた。

[図10] 過去のEmotetマルウェア

以降、CPUアーキテクチャ、マルウェアのファイルCRC値、PEBのSessionId、Windowsバージョン等の情報と、現在実行中のプロセスのリストを暗号化し、攻撃者のサーバーに転送する。サーバーのディレクトリパスも、ファイル名を生成するときと同様の方法でランダムに生成する。

[図11] 転送パケット

この過程で受信した応答に基づき、新しいバイナリをダウンロードすることができる。したがって、攻撃者はいつでもユーザーの感染したPCに対して追加のマルウェアをインストールすることができるようになる。

現在、V3では下記のように様々な感染プロセスに対して行為基盤の検出およびGeneric診断を通してこのマルウェアをブロックしている。また、Word文書ファイル内の画像を利用してマクロ使用を誘導するため、出どころがわからない文書ファイル内のマクロを実行するにあたっては、ユーザーの注意が必要である。

[行為の診断]

Malware/MDP.Create.M2172

Malware/MDP.Emotet.M2077

[ファイルの診断]

VBA/Downloader.S55

[Download URL]

hxxp://bluelionconflictsolutions.com/wp-includes/5sk54068/

hxxp://www.winzerhof-kridlo.com/up/gqfm32861/

hxxp://www.coscorubber.com/lzhfb/3lzijk275/

hxxp://huyndai3sthanhhoa.com/pictures/p9104/

hxxps://wearetxvets.com/bat.function/p1bjn92466/

[C2情報]

201.184.105.242

0 0 vote
Article Rating
guest
0 Comments
Inline Feedbacks
View all comments