AhnLab Security Emergency response Center(ASEC)では、過去のブログ記事「韓国国内の VPN インストーラーに含まれて拡散している SparkRAT」[1]で、韓国国内の VPN プログラムのインストーラーに SparkRAT を含んで誘導していた事例を紹介した。この VPN は主に中国で円滑なインターネット接続を必要とするユーザーがインストールする事例が多く、ブログ公開後に処置が行われた。
しかし、最近同じ VPN メーカーのインストーラーで SparkRAT をインストールするマルウェアが再度配布された事例を確認した。マルウェアの配布は一定期間後に中断されたが、攻撃フローの類似性や、攻撃プロセスで SparkRAT が使用される点からして、同じ攻撃者によるものと推定される。
このブログでは最近再び確認された攻撃事例を取り扱いながら、過去の事例との違いを中心にまとめていく。.NET で開発されたパッカーの代わりに、Go 言語で開発された Dropper マルウェアが使用された点や、リモートデスクトップ機能のために追加で MeshCentral の MeshAgent をインストールする点が相違点としてあげられる。
1. 攻撃フロー
初回配布方式は過去と同じく、VPN メーカーの Web サイトを攻撃して、インストーラーをマルウェアに変更したものと見られる。そのため、ユーザーが VPN インストーラーをダウンロードして実行すると、従来の正常な VPN インストーラーと一緒にマルウェアがインストールされた。

以下はマルウェアのインストールプロセスに関するフロー図である。まず不正なインストーラーが生成したダウンローダーマルウェアが SparkRAT をダウンロードしていた。その後、攻撃者は SparkRAT に不正なコマンドを渡して、感染システムに MeshAgent を追加でインストールしている。インストールされた MeshAgent が遠隔操作ページに接続し、管理対象エージェントに自身を登録するため、攻撃者は MeshCental 公開サーバーに登録されたデバイスを操作できるようになる。

2. GoLang マルウェア
過去に行われた攻撃との違いに関しては、.NET の代わりに Go 言語で開発されたマルウェアが多数使用されたという点があげられる。攻撃者は攻撃プロセスにおいて Go 言語で開発された Dropper およびダウンローダーマルウェアを使用しているが、SparkRAT もまた同じであるため、攻撃に使用されたマルウェアのすべてが GoLang ベースであるという点が特徴である。
攻撃に使用された Dropper は、偽装したインストーラーマルウェアと MeshAgent をインストールするマルウェアの2つである。難読化された GoLang マルウェアだが、すべて類似した形態を取っている。実行すると、PE 内部に存在しているマルウェアを生成および実行するが、偽装インストーラーには追加で生成したファイル「start.exe」をタスクスケジューラに登録する機能が含まれている。

schtasks.exe /Create /ru SYSTEM /f /SC ONLOGON /rl highest /tn “system update” /tr [%LOCALAPPDATA%]/start.exe
「start.exe」はダウンローダーマルウェアで、同じく Go 言語で開発されている。難読化はされておらず、外部から追加マルウェアをダウンロードして実行する機能を担っている。このアドレスからダウンロードできるのは、過去の攻撃事例と同じく SparkRAT である。


3. SparkRAT
攻撃に使用された SparkRAT は Go 言語で開発された RAT マルウェアであり、コマンド実行、情報の窃取、プロセスおよびファイル制御のような基本的な機能を提供している。他にも Windows だけでなく Linux、MacOS をすべてサポートするという特徴がある。


攻撃者は SparkRAT を利用して PowerShell コマンドを渡し、MeshAgent をインストールしていた。また、Dropper マルウェアは -fullinstall 引数を渡して、ユーザーに認知されずにバックグラウンドでインストールが行われるようにしていた。

4. MeshAgent
一般的に攻撃者は、バックドアタイプのマルウェアをインストールした後にも、リモートデスクトップをサポートするマルウェアやソフトウェアを追加でインストールする傾向がある。これは追加の不正な振る舞いを実行する時、CLI 方式より GUI 方式を使用する方が利便性の面で優れているためと予想される。そのため、最近配布されている RAT (Remote Access Trojan)マルウェアの大半は、VNC や RDP のようなリモートデスクトップ機能をサポートする傾向がある。
ASEC では過去に「様々な遠隔操作ツールを悪用する攻撃者たち」という記事で、攻撃者が使用する様々な遠隔操作ツールをそれぞれの事例別に取り扱ったことがある。この攻撃では攻撃者が MeshAgent を使用しているが、類似した AnyDesk や TeamViewer、Ammyy、Tmate[2]、そして NetSupport[3]のような様々なツールが使用される可能性がある。
SparkRAT の場合は RAT ではあるが、比較的最近に作成されたマルウェアであるため、まだリモートデスクトップ機能をサポートしていない。すなわち、攻撃者はインストールされた SparkRAT を利用して悪意のあるコマンドを実行したり、情報収集、追加ペイロードのダウンロードなど、感染システムに対する制御権を獲得した後でも、このような限界を取り払うために追加で MeshAgent をインストールしたものと考えられる。
MeshCentral はオープンソースで、無料で遠隔操作を提供する管理ツールである。MeshCentral で提供している MeshAgent は、コマンド実行やファイルダウンロードのようなあらゆるシステム制御コマンドだけでなく、VNC、RDP のようなリモートデスクトップ機能をサポートしている。もちろん、一般のユーザーは遠隔でシステムを管理するためにこれを利用するが、上記のような機能があるため、悪意のある目的で使用される可能性が大いに存在する。

MeshCentral の特徴としては、様々なアーキテクチャをサポートするという点が挙げられる。ユーザーまたは攻撃者は、MeshCentral サーバーでそれぞれのアーキテクチャに該当する MeshAgent を選択し、インストールコマンドやインストーラーをダウンロードできる。

インストールコマンドを実行したり、インストーラーをダウンロードして MeshAgent を実行すると、MeshAgent は MeshCentral サーバーに接続し、実行中のシステムを管理対象システムに登録する。これはすなわち、攻撃者が上記のようにしてダウンロードした MeshAgent を攻撃対象システムで実行すると、感染システムが管理対象になるということを意味している。

MeshAgent は遠隔操作に必要なシステムの基本情報を送信し、電源およびアカウント制御、チャットやメッセージポップアップ、ファイルのアップロード / ダウンロード、そしてコマンド実行のような機能を提供する。他にもリモートデスクトップをサポートするが、特に RDP および VNC のようなリモートデスクトップ機能を Web ベースでサポートしている。このような点は、攻撃者が感染システムを制御する目的で MeshAgent を使用する時に得られるメリットであり、それ以外にも電子メールの認証だけで簡単に使用できるというメリットがある。

MeshCentral サーバーで MeshAgent をダウンロードする時、ダウンロードされたファイルの最後に存在するシグネチャ領域には、ユーザーに適した設定情報が保存されている。MeshAgent は「%PROGRAMFILES%\Mesh Agent」パスに自身をインストールしながら、同じパスに「MeshAgent.msh」という設定ファイルを生成するが、このファイルの内容は MeshAgent ファイルの中に存在している設定情報である。

MeshName=ad
MeshType=2
MeshID=0x50E8FD710C689DA3BC4019B7450F43FDFCF21AEDEB7690D5DFD07F74EE0A4E780EEB5D09831D6664E34838AAD12EECE0
ServerID=BEC956642E30BE68AB6B3ED2F40F4E784CBA349DE3EB7E116F5B22319425FB4FE4C5A6831A5CE5524C569F6F42190B24
…
5. 結論
ASEC では過去に VPN インストーラーに SparkRAT が含まれて配布された事例を公開した。同一であると推定される攻撃者が、最近再び VPN メーカーの Web サイトを攻撃し、SparkRAT をインストールするマルウェアを配布した。また、MeshAgent を一緒にインストールすることで、感染システムの制御権を獲得していた。
ユーザーがホームページから不正なインストーラーをダウンロードしてインストールすると、不正なインストーラーはマルウェアだけでなく、既存の VPN インストーラーも一緒にインストールするため、マルウェアに感染したことを認知しにくい。ユーザーは V3 を最新バージョンにアップデートしてマルウェアへの感染を事前に遮断できるように注意を払わなければならない。
ファイル検知
– Dropper/Win.Agent.C5431031 (2023.05.21.03)
– Downloader/Win.Agent.C5431029 (2023.05.21.03)
– Backdoor/Win.SparkRAT.C5431028 (2023.05.21.03)
– Dropper/Win.MeshAgent.C5431027 (2023.05.21.03)
– Trojan/Win.MeshAgent.C5431026 (2023.05.21.03)
ビヘイビア検知
– Persistence/MDP.RunKey.M1038
– Malware/MDP.Download.M1197
IOC
MD5
– 0574f906b97f2e74ae49b6e900b5c60d : 不正なインストーラー (167775087_qy8iu7xo_*****VPNSetup.exe)
– 162e17324f63f2e1d2c32f7c842b3917 : SparkRAT ダウンローダー (start.exe)
– 8fce3a48d46b9c3d252806e7292647e6 : SparkRAT (services.exe)
– 4a9369fcff5e934ab644c9aca6e42532 : MeshAgent Dropper (update.exe)
– 15d24570f3844987acce866d6541ba21 : 不正な MeshAgent (go-memexec-2989748128.exe)
ダウンロードアドレス
– hxxp://54.180.27[.]29/cc/himart/api/kodbox-main/gr.png : SparkRAT ダウンローダー
– hxxp://54.180.27[.]29/cc/himart/api/kodbox-main/ms-update.exe : MeshAgent Dropper
C&C アドレス
– aggbvdfbbafdg.moeuda[.]link:443 : SparkRAT
関連 IOC および詳細な解析情報は、AhnLab の次世代脅威インテリジェンスプラットフォーム「AhnLab TIP」サブスクリプションサービスを通して確認できる。
Categories:マルウェアの情報