クメールシャドウ、カンボジア政府機関を標的にしたスパイ活動キャンペーンを展開
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
Khmer Shadowとして追跡されている新たに特定された脅威クラスターが、カンボジアの政府組織、特に防衛および公共事業部門を対象に、スパイ活動を行っています。攻撃者はカスタムC++ローダーNIGHTFORGEを使用して、Havoc Demonペイロードをメモリに直接サイドロードします。キャンペーンは、高度な回避方法も採用しており、ROT13コード変換や地獄のゲートシステムコール解決を含んで、可視性を低減し、セキュリティ対策を回避しています。
調査
Acronis TRUは、会議をテーマにした自己展開型アーカイブを初期の配信手法として使用した二つの別々のキャンペーンを発見しました。アナリストはNIGHTFORGEローダーを調査し、その不正活動を隠すための動的システムコール解決と未フック化されるNTDLLの能力を文書化しました。調査はまた、共有されたJARMフィンガープリントと再利用されたCloudflare Origin Certificatesを軸に、複数のコマンドアンドコントロール環境を紐付けました。
緩和策
組織は、特に正規に署名されたバイナリ(例: VMwareNamespaceCmd.exe )が関与している場合に、疑わしいDLLサイドローディング行動の強力な監視を実施するべきです。防御者はまた、正当な親プロセスによって不正にスケジュールされたタスク作成や異常な子プロセスの生成を監視し、 gpupdate.exeなどが予期しない親プロセスによって開始されているかを監視するべきです。直接的なシステムコール活動とメモリ居住型ペイロードを検出可能なエンドポイント保護により、カバレッジをさらに向上させることができます。
応答
Khmer Shadowの活動が検出された場合、影響を受けたシステムは直ちに隔離され、コマンドアンドコントロールの通信を阻止するべきです。調査員は、 %LOCALAPPDATA% ディレクトリを分析し、永続するVMwareNamespaceに関連するアーティファクトを特定するべきです。ネットワークログも既知のコマンドアンドコントロールドメインへのアウトバウンドHTTPSトラフィックについてレビューし、侵害されたシステムで使用されている資格情報をリセットする必要があります。
"graph TB %% クラス定義セクション classDef action fill:#99ccff classDef malware fill:#ff9999 classDef tool fill:#cccccc classDef process fill:#ccffcc classDef network fill:#ffff99 %% ノード定義 action_phishing["<b>アクション</b> – <b id='T1566.001'>T1566.001 スピアフィッシング添付ファイル</b><br/><b>説明</b>: メールで悪意のある添付ファイルを送信する。<br/><b>ファイル</b>: Contact_Letter_To_Ms_Pech_ICB_Cambodia_On_Collaboration.pdf.exe"] class action_phishing action proc_sideload["<b id='T1218'>T1218 システムバイナリプロキシ実行</b><br/><b>説明</b>: 正規のバイナリを使用して悪意のあるコードを実行する。<br/><b>バイナリ</b>: VMwareNamespaceCmd.exe<br/><b>サイドローディングされたDLL</b>: vmtools.dll"] class proc_sideload process malware_nightforge["<b id='NIGHTFORGE'>マルウェア</b>: NIGHTFORGE ローダー<br/><b>アクション</b> – <b id='T1140'>T1140 ファイルまたは情報の難読化/解読</b><br/><b>説明</b>: カスタムXOR暗号化を使用してシェルコードを解読する。<br/><b>アクション</b> – <b id='T1027.007'>T1027.007 動的API解決</b><br/><b>説明</b>: Hell's Gate システムコール解決を使用してEDRを回避する。"] class malware_nightforge malware action_persistence["<b id='T1137'>T1137 オフィスアプリケーションのスタートアップ</b><br/><b>説明</b>: COM APIを使用して永続性を確保する。<br/><b>メカニズム</b>: VMwareNamespaceという名前の登録されたスケジュールタスク<br/><b>頻度</b>: 10分ごとに繰り返し。"] class action_persistence action tool_kaynldr["<b id='KaynLdr'>ツール</b>: KaynLdr<br/><b>アクション</b> – <b id='T1620'>T1620 反射型コードロード</b><br/><b>説明</b>: メモリ内に最終段階を反射的にロードする。"] class tool_kaynldr tool malware_havoc["<b id='Havoc'>マルウェア</b>: Havoc Demon Implant<br/><b>説明</b>: メモリで動作する最終段階のインプラント。"] class malware_havoc malware action_c2["<b id='T1102.002'>T1102.002 ウェブサービス: 双方向コミュニケーション</b><br/><b>説明</b>: HTTPS POSTによるコマンドアンドコントロールの確立。<br/><b>C2 URL</b>: www[.]sharingfile[.]cloud<br/><b>回避</b>: 標準のChromeブラウザトラフィックを模倣。"] class action_c2 network %% 接続セクション %% フィッシングがバイナリプロキシ実行へと繋がる action_phishing –>|誘導する| proc_sideload %% プロキシ実行がNIGHTFORGEローダーをロード proc_sideload –>|実行する| malware_nightforge %% NIGHTFORGEが永続性を確立 malware_nightforge –>|確立する| action_persistence %% NIGHTFORGEがKaynLdrを反射型ロードに使用 malware_nightforge –>|使用する| tool_kaynldr %% KaynLdrがHavoc Demonを注入 tool_kaynldr –>|注入する| malware_havoc %% Havoc DemonがC2を通じて通信 malware_havoc –>|C2を確立する| action_c2 "
攻撃フロー
検出
可能性のある悪意のあるファイル二重拡張子(プロセス作成経由)
表示
可能性のあるVmtools動的ライブラリサイドローディング試行(画像ロード経由)
表示
異常なトップレベルドメイン(TLD)DNSリクエストによる怪しいコマンドアンドコントロール(DNS経由)
表示
Khmer Shadowの背後にあるターゲットされた諜報活動を検出するためのIOC(HashSha256)
表示
Khmer Shadowの背後にあるターゲットされた諜報活動を検出するためのIOC(SourceIP)
表示
Khmer Shadowの背後にあるターゲットされた諜報活動を検出するためのIOC(DestinationIP)
表示
Khmer Shadow C2ドメイン活動の検出[Windowsネットワーク接続]
表示
シミュレーション実行
前提条件: テレメトリ&ベースライン事前チェックが合格している必要があります。
基本事項: このセクションは、検出ルールをトリガーするために設計された対抗技術(TTP)の正確な実行を詳述します。コマンドと説明は特定されたTTPを直接反映し、検出ロジックが期待する正確なテレメトリを生成することを目的とすべきです。抽象的または無関係な例は誤診につながります。
-
攻撃の物語とコマンド: 攻撃者は、ターゲットネットワーク内のワークステーションにHavoc Demonインプラントを展開することに成功しました。コマンドアンドコントロール(C2)を確立し、基本的な周辺防御を回避するため、インプラントはKhmer Shadow活動に関する最近の脅威インテリジェンスで特定された特定のドメインセットと通信するように構成されています。インプラントは、
sharingfile.cloudにHTTP GETリクエストを行い、その存在を示し、さらなる指示を待つ。このアクションは、疑わしいドメイン文字列を含むプロキシログエントリを生成するように設計されています。 -
回帰テストスクリプト:
# Khmer Shadow C2検出ルールをトリガーするためのシミュレーションスクリプト # 疑わしいドメインへのHTTPリクエストを通じてC2チェックインを模倣する。 $C2_Domain = "http://sharingfile.cloud/api/v1/checkin" $UserAgent = "Havoc-Demon-Implant-v1.0" Write-Host "[!] シミュレーションされたC2通信を開始しています: $C2_Domain" -ForegroundColor Red try { # Invoke-WebRequestを使用してネットワーク活動をシミュレート # カスタムユーザーエージェントを使用して特定のツール署名を模倣 $response = Invoke-WebRequest -Uri $C2_Domain -UserAgent $UserAgent -Method Get -ErrorAction SilentlyContinue Write-Host "[+] リクエストを正常に送信しました(注: ドメインがシンクホールドまたはオフラインの場合、失敗が期待されます)。" -ForegroundColor Green } catch { Write-Host "[+] リクエストを試みました。疑わしいドメインへの接続試行のプロキシログを確認してください。" -ForegroundColor Yellow } -
クリーンアップコマンド:
# このシミュレーションによって持続的な変更はされていません。 # シミュレーションの痕跡を削除するためにコマンド履歴をクリアします。 Clear-History Write-Host "[+] クリーンアップが完了しました。" -ForegroundColor Green