オペレーション・マクロメイズ:基本的なツールと正当なインフラを使用した新しいAPT28キャンペーン
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
APT28(Fancy Bear)は、Operation MacroMazeと名付けられたスピアフィッシング作戦を実施し、西欧および中央欧州の組織を標的にしました。誘導手法として、マクロドロッパー付きの武装したWord文書を使用し、追加のスクリプトを引き出し、正規のWebhookサービスを介して盗まれたデータを移動させました。この攻撃チェーンは、インフラをpublic service webhook.siteに維持しつつ、低摩擦のツールであるVBS、バッチスクリプト、Microsoft Edgeを隠れたりヘッドレスモードで起動したりします。
調査
Lab52は、2025年9月から2026年1月の間に4つのマクロバリエーションを追跡し、ドロッパーの動作、スケジュールタスクの持続性、ブラウザ駆動のデータ漏洩における段階的な変化を指摘しました。分析者は、INCLUDEPICTUREフィールド、GUIDスタイルのファイル名、SendKeysベースの自動化を含む反復インジケーターを強調しました。また、関連するアーティファクト、URL、およびアクセス維持のために使用される特定のスケジュールタスク作成フローを抽出しました。
緩和策
Officeでの自動マクロ実行をオフにし、厳格なOutlook添付ファイル取り扱いを適用してください。不審なスケジュールタスクの作成や、ヘッドレスまたはオフスクリーンモードでの異常なMicrosoft Edgeの起動を監視してください。webhook.siteや類似の公共Webhookプラットフォームへの外向きトラフィックをブロックまたは警告します。不明なVBSおよびバッチファイルの実行を制限するアプリケーション許可リストを使用します。
対応策
活動が検出された場合、ホストを隔離し、悪意のある文書と関連アーティファクトを保存し、作成されたスケジュールタスクとドロップされたファイルを検索します。ネットワークテレメトリーをキャプチャし、データ漏洩エンドポイントを特定し、悪意のあるスケジュールタスクを削除します。資格情報の窃取について法医学的調査を行い、関係者に通知します。観測されたIOCおよび行動パターンをカバーするために検出を更新します。
graph TB %% クラス定義 classDef technique fill:#c2e0ff %% ノード定義 t1566_001[“<b>技術</b> – T1566.001<br/><b>名称</b>: スピアフィッシング添付ファイル<br/><b>説明</b>: 悪意のある添付ファイル付きメールを送信し、開くとペイロードを配信。”] class t1566_001 technique t1204[“<b>技術</b> – T1204<br/><b>名称</b>: ユーザー実行<br/><b>説明</b>: 被害者が悪意のあるファイルまたはスクリプトを実行し攻撃開始。”] class t1204 technique t1564_007[“<b>技術</b> – T1564.007<br/><b>名称</b>: アーティファクト隠蔽: VBAスタンピング<br/><b>説明</b>: VBAマクロコードを改変して悪意内容を隠しつつ機能を維持。”] class t1564_007 technique t1059_005[“<b>技術</b> – T1059.005<br/><b>名称</b>: Visual Basic<br/><b>説明</b>: VBAスクリプトでコマンド実行。”] class t1059_005 technique t1137_001[“<b>技術</b> – T1137.001<br/><b>名称</b>: Officeテンプレートマクロ<br/><b>説明</b>: Officeテンプレート経由で悪意マクロ配布。”] class t1137_001 technique t1546_002[“<b>技術</b> – T1546.002<br/><b>名称</b>: イベントトリガー実行: スクリーンセーバー<br/><b>説明</b>: トリガー時に実行される悪意スクリーンセーバー登録。”] class t1546_002 technique t1218_001[“<b>技術</b> – T1218.001<br/><b>名称</b>: コンパイルHTMLファイル<br/><b>説明</b>: CHMファイルを使用して被害端末でコード実行。”] class t1218_001 technique t1027_006[“<b>技術</b> – T1027.006<br/><b>名称</b>: HTMLスマグリング<br/><b>説明</b>: HTML内にペイロードをエンコードして防御回避。”] class t1027_006 technique t1102_001[“<b>技術</b> – T1102.001<br/><b>名称</b>: デッドドロップリゾルバー<br/><b>説明</b>: コマンド取得またはデータ送出に使用。”] class t1102_001 technique t1102_002[“<b>技術</b> – T1102.002<br/><b>名称</b>: 双方向通信<br/><b>説明</b>: C2用双方向通信チャネル確立。”] class t1102_002 technique t1102_003[“<b>技術</b> – T1102.003<br/><b>名称</b>: 単方向通信<br/><b>説明</b>: ネットワーク外へ送信する単方向チャネル使用。”] class t1102_003 technique t1074_001[“<b>技術</b> – T1074.001<br/><b>名称</b>: データステージング: ローカル<br/><b>説明</b>: 送信前にローカルで収集データを準備。”] class t1074_001 technique t1074_002[“<b>技術</b> – T1074.002<br/><b>名称</b>: データステージング: リモート<br/><b>説明</b>: 後の送信のためリモートへ転送。”] class t1074_002 technique t1560_001[“<b>技術</b> – T1560.001<br/><b>名称</b>: ユーティリティによるアーカイブ<br/><b>説明</b>: アーカイブツールでデータ圧縮。”] class t1560_001 technique t1567_004[“<b>技術</b> – T1567.004<br/><b>名称</b>: Webhook経由のデータ送出<br/><b>説明</b>: Webhook経由で外部サービスに送信。”] class t1567_004 technique %% 接続 t1566_001 –>|leads_to| t1204 t1204 –>|leads_to| t1564_007 t1564_007 –>|leads_to| t1059_005 t1059_005 –>|leads_to| t1137_001 t1137_001 –>|leads_to| t1546_002 t1546_002 –>|leads_to| t1218_001 t1218_001 –>|leads_to| t1027_006 t1027_006 –>|leads_to| t1102_001 t1102_001 –>|leads_to| t1102_002 t1102_002 –>|leads_to| t1102_003 t1102_003 –>|leads_to| t1074_001 t1074_001 –>|leads_to| t1074_002 t1074_002 –>|leads_to| t1560_001 t1560_001 –>|leads_to| t1567_004
攻撃フロー
検出
不審なタスクキル実行(cmdline経由)
表示
ウェブサイトフックエンドポイント経由のマルウェア配信の可能性(プロキシ経由)
表示
不審なパラメータで実行された不審なブラウザプロセス(cmdline経由)
表示
LOLBAS WScript / CScript(process_creation経由)
表示
ウェブサイトフックエンドポイント経由のマルウェア配信の可能性(dns経由)
表示
IOCs(HashSha256)の検出対象: Operation MacroMaze:基本ツールと正規のインフラを使用した新APT28キャンペーン
表示
Operation MacroMaze APT28 WScriptおよびCMD実行【Windowsプロセス作成】
表示
シミュレーション実行
前提条件:テレメトリー&ベースライン事前フライトチェックが完了していること。
理由:このセクションでは、検出ルールをトリガーするために設計された敵の技術(TTP)の正確な実行を詳細に説明します。コマンドと説明は、特定されたTTPを直接反映し、検出ロジックによって期待される正確なテレメトリを生成することを目的とする必要があります。
-
攻撃の説明とコマンド:
APT28スタイルの悪意のあるWordマクロがフィッシングで配布されます。文書が開かれると、マクロは小さなVBScriptを実行し、それが WScript.Shell オブジェクトを作成します。このオブジェクトを使用して
cmd.exeを起動し、ベース64でエンコードされたPowerShellリバースシェルを書き込むペイロードを一時ファイルに書き込み、実行します。この一連の操作により、Sigmaルールを満たす2つのプロセス作成イベントが生成されます:- wscript.exe (or cscript.exe)が、
WScript.Shell. - VBScriptを実行します
WScript.Shell.Run "cmd.exe /c powershell -nop -w hidden -EncodedCommand …"を呼び出し cmd.exe.
spawnします。
WScript.Shellがコマンドラインに存在することが、ルールが検出する正確な指標です。 - wscript.exe (or cscript.exe)が、
-
回帰テストスクリプト:
# ------------------------------------------------------- # MacroMazeシミュレーション – wscript.exe → cmd.exeを起動 # ------------------------------------------------------- # 1. WScript.Shellを使用してcmd.exeを実行する一時的なVBSを作成 $vbsContent = @" Set sh = CreateObject("WScript.Shell") sh.Run "cmd.exe /c echo Malicious payload executed > %TEMP%payload.txt" "@ $vbsPath = "$env:TEMPmacromaze.vbs" $vbsContent | Set-Content -Path $vbsPath -Encoding ASCII # 2. VBSをwscript.exe経由で実行(必要なテレメトリーを生成) Start-Process -FilePath "wscript.exe" -ArgumentList "`"$vbsPath`"" -WindowStyle Hidden # Optional: SIEMがイベントを取り込むための一時停止 Start-Sleep -Seconds 5 # ------------------------------------------------------- -
クリーンアップコマンド:
# 一時VBSとペイロードファイルを削除 Remove-Item -Path "$env:TEMPmacromaze.vbs" -ErrorAction SilentlyContinue Remove-Item -Path "$env:TEMPpayload.txt" -ErrorAction SilentlyContinue