ClearFakeキャンペーンがワードリストローダーを使用してAmateraを展開
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
WordlistLoaderと呼ばれる新たに特定されたローダーが、ClearFakeキャンペーンでAmateraインフォスティーラーを配布するために使用されています。このローダーは、エンコードされた英語の単語やUUIDからシェルコードを再構築し、従来の検出を回避します。Amateraはまた、シスコールのためのHeaven’s Gateやブラウザ注入のための乗っ取られたスレッドプールなど、高度な回避技術を搭載して進化しています。
調査
調査では、偽のCAPTCHAプロンプトを表示する侵害されたウェブサイトから始まる感染チェーンを調査しました。研究者はWordlistLoaderの実行プロセスを分析し、モジュールのアンフック、ハードウェアブレークポイントによるETWの回避、及びワードリストからのシェルコードデコードについて検討しました。また、Amateraバージョン4.3.3-alpha1についても、更新されたアプリケーション境界暗号回避と強化されたシスコール実装を強調しています。
緩和策
組織は、ソーシャルエンジニアリングによる悪意のあるコマンドのリスクを減少させるために、クリップボードの保護を実施すべきです。EDRソリューションは、ハードウェアブレークポイント操作やETWの回避の試みを検出可能であるべきです。セキュリティチームはまた、異常なプロセスの動作を監視し、 conhost が隠された cmd プロセスを起動し pushd を使用してリモートのWebDAV共有をマップしていることを確認してください。
対応策
記述されたコマンドパターンが検出された場合、データのさらなる流出を防止するために、影響を受けたホストを直ちに隔離するべきです。レスポンダーは、注入されたシェルコードや乗っ取られたブラウザスレッドを特定するために、メモリフォレンジックスを実行すべきです。承認されていないWebDAV接続もまた調査されるべきで、悪意のあるコマンドの発信源を明らかにするエンドポイントログも確認するべきです。
攻撃フロー
この部分はまだ更新中です。
検出
疑わしいコマンドと制御:通常でないトップレベルドメイン(TLD)のDNSリクエスト(dns経由)
LOLBinセマンティクスを持つ疑わしいRunMRUエントリ(registry_event経由)
LOLBAS Conhost(cmdline経由)
IOC(HashSha256)で検出:ClearFakeキャンペーンによるAmatera配布WordlistLoader
Amatera C2通信の検出 [Windows ネットワーク接続]
ConHostを使用したWordlistLoaderによるAmateraインフォスティーラーの配布を検出 [Windows プロセス作成]
模擬実行
前提条件:テレメトリー&ベースライン事前チェックが合格する必要があります。
理論根拠:このセクションは、検出ルールを発動させるために設計された敵の技術(TTP)の正確な実行を詳細に記述しています。コマンドと説明はTTPを直接反映し、検出ロジックによって期待される正確なテレメトリーを生成することを目的としています。抽象的または無関係な例は誤診を引き起こします。
-
攻撃の説明とコマンド: 敵はAmateraインフォスティーラーを配布しつつ、ホスト上での痕跡を最小限に抑えることを狙っています。彼らは、
conhost.exe --headlessを使って隠れたコマンドプロンプトを開始します。シェルが確立されると、攻撃者はpushdコマンドを使用してリモートのWebDAV共有(テスト目的のためにローカル UNC パスでシミュレート)をマウントし、net useの雑音を避けます。最終的に、彼らは新たにマップされたドライブにあるDLLに対してrundll32.exeを呼び出し、感染チェーンを開始するためにRunエクスポートを呼び出して、悪意のあるコンポーネントを実行します。 -
回帰テストスクリプト:
# Amatera/WordlistLoaderパターンのシミュレーションスクリプト # 注:実験室で実際のネットワーク依存を回避するために、ローカルフォルダを使用してUNCパスをシミュレートしています。 $fakeWebDavPath = "$env:COMPUTERNAMEC$TempMaliciousShare" if (!(Test-Path $fakeWebDavPath)) { New-Item -Path $fakeWebDavPath -ItemType Directory -Force } # ダミーのDLLを作成してrundll32の要件を満たします # 実際のシナリオでは、これは実際のAmateraペイロードになります。 $dummyDll = "$fakeWebDavPathpayload.dll" New-Item -Path $dummyDll -ItemType File -Force # トリガーコマンド: # このコマンドはSigmaルールの選択基準に一致するように構造化されています: # 1. --headlessでconhost.exeを使用 # 2. cmd, pushd, rundll32, ,Run, 及び $cmdPayload = "cmd.exe /c pushd $fakeWebDavPath && rundll32.exe $fakeWebDavPathpayload.dll,Run" # conhostを経由してプロセスを開始し、特定の検出ロジックをトリガー Start-Process "conhost.exe" -ArgumentList "--headless", $cmdPayload -
クリーンアップコマンド:
# シミュレートされた悪意のあるディレクトリとダミーファイルを削除 $fakeWebDavPath = "$env:COMPUTERNAMEC$TempMaliciousShare" if (Test-Path $fakeWebDavPath) { Remove-Item -Path $fakeWebDavPath -Recurse -Force }