- Cisco Talos は、「MagicRAT」という新しいリモートアクセス型トロイの木馬(RAT)を発見しました。開発と展開を行っているのは APT グループの Lazarus です。米国政府の見解では、同グループは北朝鮮の支援を受けています。
- Lazarus は VMware Horizon プラットフォームの脆弱性をエクスプロイトし、その後 MagicRAT を展開しました。
- MagicRAT と「TigerRAT」という別の RAT との関連性も見つかりました。TigerRAT については最近韓国インターネット振興院(KISA)が情報を公開しており、Lazarus が関与しているとされています。
- TigerRAT はこの 1 年間で進化を遂げており、本ブログ記事で説明する新しい機能が組み込まれています。
概要
Cisco Talos は、「MagicRAT」という新しいリモートアクセス型トロイの木馬(RAT)を発見しました。APT グループ Lazarus が展開しているものと Talos では考えています(信頼性は中~高程度)。米国サイバーセキュリティ インフラストラクチャ セキュリティ庁(CISA)は、Lazarus が北朝鮮の支援を受けているとしています。この新しい RAT が発見されたマシンは、公開されている VMware Horizon プラットフォームの脆弱性のエクスプロイトによって侵害されていました。RAT の機能は比較的単純ですが、開発には Qt フレームワークが使われています。これはひとえに、人間による分析を難しくし、機械学習やヒューリスティック分析により自動検出される可能性を下げるためと思われます。
MagicRAT が感染システムに展開されると、カスタムビルドのポートスキャナなどの追加のペイロードが起動されることを示す証拠も見つかりました。さらに、MagicRAT の C2 インフラストラクチャが、TigerRAT など既知の Lazarus インプラントの新しい亜種をホストするためにも使用されていることが分かりました。
MagicRAT の実際の展開が確認されたことから、カスタム版の新しいマルウェアをすばやく開発し、TigerRAT など既知のマルウェアと併用して世界中の組織を標的にしようとする Lazarus の狙いが見えてきます。
攻撃者の素性
攻撃者の特定
Cisco Talos は、これらの攻撃が北朝鮮の支援を受けた攻撃グループ Lazarus によって実行されたものと考えています(信頼性は中~高程度)。その根拠は、戦術、手法、手順(TTP)やマルウェアのインプラント、インフラストラクチャに、Lazarus による既知の攻撃との類似点があることです。
Talos は、MagicRAT を配布する C2 サーバーが、過去に報告された Lazarus による Dtrack RAT ファミリを利用した攻撃でも使用されていたことを確認しました。また、TigerRAT をホストして、MagicRAT に感染したマシンに配布している C2 サーバーも発見しました。TigerRAT は、最近韓国インターネット振興院(KISA)によって Lazarus APT グループが展開しているとされたマルウェアファミリです。
一部の感染マシンでは、しばらくの間 MagicRAT が展開された後で削除され、続いて「VSingle」という別のカスタム開発のマルウェアがダウンロードおよび実行されたことが確認されました。VSingle については JPCERT が情報を公開しており、やはり Lazarus が展開しているインプラントだとされています。
技術分析
MagicRAT
MagicRAT は C++ プログラミング言語でプログラムされています。Qt フレームワークが使われており、32 ビット版および 64 ビット版の RAT にこのフレームワークが静的にリンクされています。Qt フレームワークは GUI を開発するためのプログラミングライブラリですが、この RAT には GUI は搭載されていません。コードを複雑にして人間による分析を難しくするために Qt フレームワークを使用しているというのが Talos の見解です。また、Qt フレームワークでプログラミングされたマルウェアの例は、あるとしても極めて稀です。そのため、機械学習やヒューリスティック分析による検出の信頼性も低くなります。
32 ビット版は、Microsoft Windows プラットフォームに対応するため、mingw/cygwin を使用して GCC v3.4 でコンパイルされています。一方 64 ビット版は、VisualC64 バージョン 7.14 でコンパイルされています。
RAT では、コード全体で Qt クラスが使用されています。構成は QSettings クラスに動的に保存され、最終的にはディスクに保存されます。これは、QSettings クラスの一般的な機能です。
マルウェアの構成(作成者が定義した QSettings を含む)は、パス「\ProgramData\WindowsSoftwareToolkit」にあるファイル「visual.1991-06.com.microsoft_sd.kit」に保存されます。明らかに、オペレーティングシステムの一部と思い込ませることを狙ったファイル名とパスです。
以下の画像は、構成ファイルの例です。分析中に、構成ファイルの 3 つのセクションを特定しました。
- [os]:コマンドアンドコントロール(C2)の URL を記載
- [General]:一般的な情報を保持
- [company]:C2 との通信で使用されるデータを保持
分析したサンプルのすべてに、感染を登録したうえで感染したエンドポイントで実行するコマンドを受信するために使用される 3 つの C2 のエンコードされた URL が記載されていました。URL は、「windows」、「linux」、「mac」のキーを使用して構成ファイルに保存されています。値には「LR02DPt22R」というプレフィックスが付き、その後に base64 でエンコードされた URL が続きます。
MagicRAT には、感染マシン上にスケジュールされたタスクを作成するコマンドがハードコードされています。RAT 実行時にこのコマンドを実行し、自身の永続性を確立します。
コマンド | 目的 |
schtasks /create /tn “OneDrive AutoRemove” /tr “C:\Windows\System32\cmd.exe /c del /f /q C:/TEMP/[MagicRAT_file_name].exe” /sc daily /st 10:30:30 /ru SYSTEM | 特定の時間に開始されるようスケジュールされたタスク [T1053/005] |
schtasks /create /tn “Microsoft\Windows\light Service Manager” /tr C:/TEMP/[MagicRAT_file_name].exe /sc onstart /ru SYSTEM | 別の時間に異なるパスで開始されるようスケジュールされたタスク [T1053/005] |
%HOME%/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup/OneNote.lnk | スタートアップフォルダに作成されたリンク [T1547/001] |
永続性を確立すると、RAT は C2 に接続します。
実行の初期ステージでは、MagicRAT は、攻撃者が操作しているシステムと環境を十分特定できる程度にシステムの偵察を行います。そのため、コマンド whoami、systeminfo、ipconfig /all を実行します。最後のコマンドの場合、ファイル「zero_dump.mix」を C2 にアップロードすると結果が返されます。
MagicRAT の機能はかなり単純で、感染したシステム上でリモートシェルを使用して任意のコマンドを実行する、エンドポイント上のファイルの名前変更、移動、削除を行うというものです。インプラントがスリープするタイミングを決める、C2 の URL を変更する、感染システムからインプラントを削除するという機能もあります。
MagicRAT の新しい亜種も発見しました。2022 年 4 月に生成され、実際に展開されています。このサンプルには、BAT ファイルを使用して感染したエンドポイントから自身を削除する機能が含まれています。
その他のマルウェア
MagicRAT の新しいサンプルで使用されている C2 サーバーの 1 つである 64[.]188[.]27[.]73 では、GIF の URL を装った 2 つの別個のインプラントがホストされていました。これで、MagicRAT は C2 に要求を行い、GIF ファイル(実際には実行ファイル)をダウンロードできます。
軽量ポートスキャナ
MagicRAT の C2 で発見された GIF ファイルの 1 つは「pct.gif」という非常に単純なポートスキャナです。メインコードは下の画像のようなものです。
接続先の IP、ポート番号、ポートスキャンの出力の書き込みを指定する値(ディスク上のログファイルまたは標準出力)という 3 つの引数を取ります。接続に成功すると、実行ファイルは「Connection success!」という文字列を、標準出力か、現在のユーザーの一時ディレクトリにある「Ahnupdate.log」というログファイルのいずれかに書き込みます。
TigerRAT
MagicRAT の C2 でホストされている 2 つめのインプラントは、TigerRAT というリモートアクセス型トロイの木馬(RAT)です。TigerRAT については、2021 年に KISA と KRCERT が、TigerRAT とそのダウンローダー「TigerDownloader」について説明した『Operation ByteTiger』という資料の中で情報公開しています。
このインプラントは、任意のコマンド実行やファイル管理など、いくつかの RAT 機能で構成されています。インプラントの機能としては、次のようなものがあります。
- システム情報の収集(ユーザー名、コンピュータ名、ネットワーク インターフェイス情報、製品やバージョンなどのシステム情報)
- エンドポイントで任意のコマンドを実行(set/get CWD、exe 経由でのコマンド実行)
実行できる任意のコマンドには、次のようなものがあります。
- スクリーンキャプチャ
- Socks によるトンネリング
- キーロギング
- ファイル管理:偵察の実行、ファイルの列挙/削除、ファイルの作成と書き込み、ファイルの読み取りとコンテンツの C2 へのアップロード、プロセスの作成
- システムからの自己削除/アンインストール
最新の TigerRAT バージョンには新機能が 1 つあり、次の機能セットを近々導入する予定があることも示唆されています。こうした機能の 1 つが「USB ダンプ」です。作成者は、Web カメラからのビデオキャプチャを実装する準備としてスケルトンコードも作成していますが、実装はまだされていません。
USB ダンプ
USB ダンプ機能により、次のことができるようになります。
- パス「LOCAL_APPDATA\GDIFONTC」のファイルの列挙
- ファイルの削除
- 特定の拡張子(.docx、.hwp、.doc、.txt、.pdf、.zip、.zoo、.arc、.lzh、.arj、.gz、.tgz)のファイルを指定されたドライブやフォルダで検索し、既存のアーカイブに追加(データを流出させる準備)。この機能が、新機能の中で主要なものです。
以下の画像は、ファイル拡張子をチェックするために使用されるコードです。
さまざまな機能を削除してみたり追加してみたりと、通常 Lazarus のインプラントには機能が継ぎ接ぎされています。このことは、最新の TigerRAT サンプルからも明らかです。
Lazarus の最新バージョンでは、USB ダンプと Web カメラキャプチャ用のスケルトンコードといった新しい機能が追加された一方で、ポート転送機能は削除されています。また、TigerRAT の古い亜種(2020 ~ 2021 年に確認されたもの)は暗号化された文字列で構成されていましたが、最新の亜種はプレーンテキストの文字列で構成されています。
カバレッジ
今回の脅威は、以下の製品で検出してブロックすることが可能です。
Cisco Secure Endpoint(旧 AMP for Endpoints)は、この記事で説明したマルウェアの実行を阻止するのに最適です。Cisco Secure Endpoint の無料トライアルはこちらからお申し込みください。
Cisco Secure Web Appliance の Web スキャンは、悪意のある Web サイトへのアクセスを防止し、上述したような攻撃で使用されるマルウェアを検出します。
Cisco Secure Email(旧 E メールセキュリティ)は、攻撃の一環として攻撃者が送りつける不正な電子メールをブロックします。Cisco Secure Email の無料トライアルはこちらからお申し込みください。Threat Defense Virtual、適応型セキュリティアプライアンス、Meraki MX など、
Cisco Secure Firewall(旧次世代ファイアウォールおよび Firepower NGFW)アプライアンスは、この脅威に関連する悪意のあるアクティビティを検出できます。
Cisco Secure Malware Analytics(Threat Grid)は、悪意のあるバイナリを特定し、シスコのすべてのセキュリティ製品に保護機能を組み込みます。
Umbrella(シスコのセキュア インターネット ゲートウェイ(SIG))は、社内ネットワークの内外で悪意のあるドメイン、IP、URL への接続をブロックします。Umbrella の無料トライアルはこちらからお申し込みください。
Cisco Secure Web Appliance(旧 Web セキュリティアプライアンス)は、危険性のあるサイトを自動的にブロックし、ユーザーがアクセスする前に疑わしいサイトをテストします。
特定の環境および脅威データに対する追加の保護機能は、Firewall Management Center から入手できます。
Cisco Duo は、ユーザーに多要素認証を提供し、承認されたユーザーのみがネットワークにアクセスできるようにします。
オープンソースの Snort サブスクライバルールセットをお使いであれば、Snort.org で購入可能な最新のルールパックをダウンロードすることで、最新状態を維持できます。
Orbital クエリ
Cisco Secure Endpoint ユーザーは、Orbital Advanced Search を使用して複雑な OSquery を実行し、エンドポイントが特定の脅威に感染しているかどうかを確認できます。類似の脅威に対応する osquery の具体例については、こちらをクリックしてください。
IOC(侵入の痕跡)
IOC リストは、こちらにある Talos の GitHub リポジトリからも入手できます。
MagicRAT
f6827dc5af661fbb4bf64bc625c78283ef836c6985bb2bfb836bd0c8d5397332
TigerRAT
f78cabf7a0e7ed3ef2d1c976c1486281f56a6503354b87219b466f2f7a0b65c4
1f8dcfaebbcd7e71c2872e0ba2fc6db81d651cf654a21d33c78eae6662e62392
bffe910904efd1f69544daa9b72f2a70fb29f73c51070bde4ea563de862ce4b1
196fb1b6eff4e7a049cea323459cfd6c0e3900d8d69e1d80bffbaabd24c06eba
解凍された TigerRAT
1c926fb3bd99f4a586ed476e4683163892f3958581bf8c24235cd2a415513b7f
f32f6b229913d68daad937cc72a57aa45291a9d623109ed48938815aa7b6005c
23eff00dde0ee27dabad28c1f4ffb8b09e876f1e1a77c1e6fb735ab517d79b76
ca932ccaa30955f2fffb1122234fb1524f7de3a8e0044de1ed4fe05cab8702a5
ポートスキャナ
d20959b615af699d8fff3f0087faade16ed4919355a458a32f5ae61badb5b0ca
URL
hxxp[://]64[.]188[.]27[.]73/adm_bord/login_new_check[.]php
hxxp[://]gendoraduragonkgp126[.]com/board/index[.]php
hxxp[://]64[.]188[.]27[.]73/board/mfcom1.gif
hxxp[://]64[.]188[.]27[.]73/board/pct.gif
hxxp[://]64[.]188[.]27[.]73/board/logo_adm_org.gif
hxxp[://]64[.]188[.]27[.]73/board/tour_upt.html
IP
193[.]56[.]28[.]251
52[.]202[.]193[.]124
64[.]188[.]27[.]73
151[.]106[.]2[.]139
66[.]154[.]102[.]91
本稿は 2022 年 09 月 07 日に Talos Group のブログに投稿された「MagicRAT: Lazarus’ latest gateway into victim networks」の抄訳です。