悪魔が後からやってくる: Havoc StagerがMicrosoft Defender DLPに隠れる
Detection stack
- AIDR
- Alert
- ETL
- Query
要約
ブラジルの脅威アクターが偽の電子請求書を配布している NF-e 悪意のあるMSIインストーラーを届けるZIP添付。MSIは、実際にはHavocステージャーとして機能する偽のMicrosoft Defender Endpoint DLP DLLをドロップします。起動すると、ステージャーはリモートのコマンド&コントロールサーバーに接続し、インメモリのHavocペイロードを取得し、 ログオンスクリプト レジストリ値を通じて持続性を作成します。同様の変種が、マレーシア登録のドメインでも観察されており、同じ配達ラッパーを使用しています。
調査
LevelBlue SpiderLabsはZIPアーカイブ、VBSドロッパー、MSIパッケージを分析し、署名されたMicrosoftバイナリである mpextms.exeと、署名されていない endpointdlp.dll ステージャーをペアリング。ステージャーには、コマンド&コントロールホスト、URLパス、ミューテックス文字列を含むクリアテキスト設定値が含まれていました。ネットワークキャプチャは、特定のIPアドレスへのGETおよびPOSTトラフィックと明示的なユーザーエージェント値を明らかにしました。研究者は、同じバージョンメタデータとインポートハッシュを共有する9つの関連ステージャー変種を特定しました。
緩和策
ディフェンダーは、Microsoft Defender Endpoint DLPまたはDragon Data Protectionコンポーネントを装った署名なしのDLLを検出し、変更を監視する必要があります HKCUEnvironmentUserInitMprLogonScriptと、既知のミューテックス値を警告。公開されたYARAルールは、Havocペイロードが読み込まれる前にステージャーを検出するために展開されるべきです。セキュリティチームはまた、アーカイブ内で配信されるすべてのMicrosoftブランドバイナリのAuthenticode署名を確認する必要があります。
応答
このアクティビティが検出された場合、関連IPアドレスとドメインをブロックし、MSIおよびDLLファイルを隔離し、悪意のある ログオンスクリプト レジストリエントリを削除してください。ホストのフォレンジックスを行い、インメモリのHavocペイロードがアクティブでないことを確認し、影響を受けたユーザーの資格情報をローテーションしてください。関連するビジネスチームに通知し、類似のNF-eをテーマとした添付ファイルをブロックするようメール保護を更新するべきです。
攻撃フロー
検出
可能な持続性ポイント [ASEPs – Software/NTUSER Hive] (via registry_event)
表示
疑わしいCURL使用 (via cmdline)
表示
IOC(HashSha256)を検出:The Demon Arrives Later: A Havoc Stager Hides Behind Microsoft Defender DLP
表示
IOC(HashMd5)を検出:The Demon Arrives Later: A Havoc Stager Hides Behind Microsoft Defender DLP
表示
IOC(SourceIP)を検出:The Demon Arrives Later: A Havoc Stager Hides Behind Microsoft Defender DLP
表示
IOC(DestinationIP)を検出:The Demon Arrives Later: A Havoc Stager Hides Behind Microsoft Defender DLP
表示
Havocステージャーのネットワーク活動の検出 [Windowsネットワーク接続]
表示
UserInitMprLogonScriptレジストリ変更による持続性 [Windowsレジストリエベント]
表示
シミュレーション実行
前提条件: テレメトリー&ベースラインプレフライトチェックが合格している必要があります。
理論: このセクションは、検出規則をトリガーするために設計された敵対技術(TTP)の正確な実行を詳細に説明します。コマンドと物語は、識別されたTTPを正確に反映し、検出ロジックで期待される正確なテレメトリーを生成することを目的とします。
-
攻撃の物語とコマンド:
被害者マシンに初期の足場を得た攻撃者は、ユーザーログオン間での持続性を維持したいと考えます。彼らはUserInitMprLogonScript値を選びます。それはユーザーのシェルが開始する 前に 実行され、初期のコード実行を提供します。攻撃者は隠されたバイナリmpextms.exe(のリネーム版rundll32.exe)をユーザーのAppDataフォルダに配置し、認証情報を抽出する悪意のあるDLLendpointdlp.dllを作成します。レジストリ値を"%APPDATA%mpextms.exe" "%APPDATA%endpointdlp.dll"に設定することにより、攻撃者は各ログオン時にDLLが署名されたrundll32.exeプロキシによってサイドローディングされることを確実にし、 T1218.007 and T1027.013 を満たし、単純なバイナリホワイトリストを回避します。 -
回帰テストスクリプト:
# ------------------------------------------------- # ステップ1: 悪意のあるバイナリをドロップ(シミュレート) $payloadDir = "$env:APPDATAMalicious" New-Item -ItemType Directory -Path $payloadDir -Force | Out-Null # イミテーション 'mpextms.exe' - 現実性を高めるためrundll32.exeをリネームして使用 $src = "$env:SystemRootSystem32rundll32.exe" $dstExe = Join-Path $payloadDir "mpextms.exe" Copy-Item -Path $src -Destination $dstExe -Force # シミュレートされた悪意のあるDLL(テスト目的で空のファイル) $dllPath = Join-Path $payloadDir "endpointdlp.dll" New-Item -ItemType File -Path $dllPath -Force | Out-Null # ステップ2: 持続性のレジストリエントリを作成 $regPath = 'HKCU:Environment' $regName = 'UserInitMprLogonScript' $regValue = "`"$dstExe`" `"$dllPath`"" Set-ItemProperty -Path $regPath -Name $regName -Value $regValue -Force Write-Host "持続性エントリ作成: $regName = $regValue" # ------------------------------------------------- -
クリーンアップコマンド:
# レジストリの持続性エントリを削除 Remove-ItemProperty -Path 'HKCU:Environment' -Name 'UserInitMprLogonScript' -ErrorAction SilentlyContinue # ドロップされたファイルを削除 $payloadDir = "$env:APPDATAMalicious" Remove-Item -Path $payloadDir -Recurse -Force -ErrorAction SilentlyContinue Write-Host "クリーンアップ完了。"