求人情報を偽装した2つの高度な多段階攻撃チェーン
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
2つの異なる多段階攻撃チェーンが、仕事関連のソーシャルエンジニアリングを利用してマルウェアを配信します。キャンペーン1は、DLLサイドローディングといくつかの永続化メカニズムを使用するPythonベースのローダーを介してPureRATを展開するためにZIPアーカイブに依存しています。キャンペーン2は、起動するLNKファイルを配信します mshta.exe、これはカスタムインメモリインプラントを取得して実行します。
調査
調査により、キャンペーン1は既知のPXA Stealerオペレーションに関連したインフラストラクチャの重複があるベトナム関係の犯罪クラスターに関連していることが判明しました。キャンペーン2は、公開されている重複が識別されていないカスタムキャンペーンとして現れました。これら両方の攻撃チェーンは、AMSIとETWのパッチ適用、及び反射コードローディングを含む高度な回避技術を使用しています。
緩和策
ディフェンダーは、ユーザー書込み可能ディレクトリから署名されていないDLLをロードするMicrosoftの署名済みバイナリを監視し、リモートURLを含む実行を検出するべきです。 mshta.exe 非標準の高いポートへのイーグレスフィルタリングと、COMベースのスケジュールタスク作成の監査は、これらの感染チェーンを妨害するのに役立ちます。メモリの整合性の監視を強化することも重要です。
対応策
悪意のある活動が検出された場合、復旧はWMIサブスクリプションやCOMハイジャックを含む複数の永続化メカニズムを考慮する必要があります。1つのファイルやスケジュールされたタスクを削除するだけでは、自己修復する動作のためにキャンペーン1を完全に排除できない可能性があります。対応者はステージングディレクトリを調査し、特定されたすべての永続化アーティファクトを包括的に除去するべきです。
攻撃フロー
この部分はまだ更新中です。
検出
不審なフォルダからのPython実行(cmdline経由)
短いファイル名(cmdline経由)
関連コマンドの検出による不審なLOLBAS MSHTA防衛回避行動(process_creation経由)
不審なCURL使用法(cmdline経由)
異常なトップレベルドメイン(TLD)DNSリクエストによる不審なコマンドアンドコントロール(dns経由)
IOC(HashSha256)を検出するには: あなたのアプリケーションが受信されました: 求人背後に隠れた2つの多段階攻撃チェーンの内部
IOC(SourceIP)を検出するには: あなたのアプリケーションが受信されました: 求人背後に隠れた2つの多段階攻撃チェーンの内部
IOC(DestinationIP)を検出するには: あなたのアプリケーションが受信されました: 求人背後に隠れた2つの多段階攻撃チェーンの内部
リネームされた正規のバイナリによるDLLサイドローディングの検出 [Windows Image Load]
潜在的なC2通信のための異常なTLSセッションと自己署名証明書の検出 [Windows Network Connection]
隠しファイルとZone.Identifier削除 [Windows File Event]
ユーザーディレクトリからの悪意のあるバイナリ実行の検出 [Windows Process Creation]
シミュレーション実行
-
攻撃ナラティブとコマンド: 攻撃者は初期アクセスを得て、不審を招かないように一般的な生産性アプリケーションを偽装して悪意のあるペイロードを実行しようとしています。攻撃者は正規の
mshta.exeをコピーしますSystem32からローカルフォルダに移動し、WinWord.exeに名前を変更します。そして、同じフォルダに悪意のあるDLLを配置します。WhenWinWord.exe(リネームされたMSHTA)が実行されると、システムのImage Loadテレメトリーはプロセスを記録し、Imageファイル名がWinWord.exeであるが、OriginalFileNameメタデータがそのまま残っているプロセスを記録します。この不一致は検出ルールの具体的なトリガーです。mshta.exe. This mismatch is the specific trigger for the detection rule. -
回帰テストスクリプト:
# リネームによるDLLサイドローディングのシミュレーション $workDir = "$env:TEMPSimulation_SideLoad" New-Item -ItemType Directory -Force -Path $workDir Set-Location $workDir # 1. 正規のバイナリをコピー Copy-Item "C:WindowsSystem32mshta.exe" -Destination "WinWord.exe" # 2. 実際にプロセスが何かを'ロード'できるようにダミー/無害なDLLを作成 # (注: 実際の攻撃ではこれは悪意のあるDLLです。 # テレメトリトリガのために、リネームされたバイナリを実行するだけです。) # 3. リネームされたバイナリを実行 # これはリネームされたファイルのイメージロードにSysmon Event ID 7をトリガします Write-Host "[*] 検出をトリガするためのリネームバイナリを実行中..." Start-Process ".WinWord.exe" -ArgumentList "javascript:alert('Attack Triggered');close();" -Wait Write-Host "[+] シミュレーション完了。SIEMでイメージロードの不一致を確認してください。" -
クリーンアップコマンド:
# シミュレーションファイルをクリーンアップ $workDir = "$env:TEMPSimulation_SideLoad" if (Test-Path $workDir) { Remove-Item -Recurse -Force $workDir Write-Host "[+] クリーンアップ成功。" } else { Write-Host "[-] クリーンアップ失敗: ディレクトリが見つかりませんでした。" }