detecting-wmi-persistence について
このスキルは、MITRE ATT&CK T1546.003 を中心に、WMI イベントサブスクリプションによる永続化を調査する手順を示します。Sysmon イベント、WMI サブスクリプションの確認、既知の正常な設定との照合を通じて、不審な仕組みを特定し対処します。
主な機能
- 01Sysmon イベント 19、20、21 の分析
- 02不審な WMI コンシューマーとフィルターの特定
- 03フィルターとコンシューマーの結合関係の確認
- 04WMI 永続化の保存場所の調査
- 05調査結果の検証と記録
活用シーン
- 01不審な WMI アクティビティの調査
- 02Sysmon 関連アラートへの対応
- 03WMI 永続化メカニズムの探索
- 04WMI 検知に関するパープルチーム演習
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ mukul975/ anthropic-cybersecurity-skills --skill detecting-wmi-persistenceインストール後、Claude Code で/detecting-wmi-persistenceを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
LICENSEreferences/api-reference.mdscripts/agent.py詳細
WMI 永続化の検出
使用するタイミング
- WMI イベントサブスクリプションによる永続化(MITRE ATT&CK T1546.003)を調査するとき
- エンドポイントのテレメトリで不審な WMI アクティビティを検出した後
- インシデント対応中に、攻撃者の永続化の仕組みを特定するとき
- Sysmon のアラートがイベント ID 19、20、21 でトリガーされたとき
- WMI ベースの永続化をテストするパープルチーム演習中
前提条件
- WMI イベントログ記録(イベント ID 19、20、21)を有効にして Sysmon v6.1 以降をデプロイ済みであること
- Windows セキュリティイベントログの転送が設定済みであること
- Sysmon データを取り込んだ SIEM があること(Splunk、Elastic、Sentinel)
- エンドポイントで WMI の列挙を行うための PowerShell アクセスがあること
- 手動での WMI サブスクリプションの確認に Sysinternals Autoruns を使用できること
ワークフロー
- テレメトリの収集: Sysmon のイベント ID 19(WmiEventFilter)、20(WmiEventConsumer)、21(WmiEventConsumerToFilter)を解析します。
- 不審なコンシューマーの特定: コードを実行する CommandLineEventConsumer および ActiveScriptEventConsumer の種類にフラグを立てます。
- イベントフィルターの分析: EventFilters 内の WQL クエリを調べ、プロセス開始のトリガーやタイマーベースの実行がないか確認します。
- バインディングの相関分析: 不審なフィルターとコンシューマーを結び付ける FilterToConsumerBindings を突き合わせます。
- 永続化の場所の確認: WMI 名前空間 root\subscription と root\default を照会し、アクティブなサブスクリプションを確認します。
- 検出結果の検証: 既知の正常な WMI サブスクリプション(SCCM、AV 製品など)と照合します。
- 文書化と是正: 悪意のあるサブスクリプションを削除し、検出ルールを更新します。
主要な概念
| 概念 | 説明 |
|---|---|
| Sysmon イベント 19 | WmiEventFilter の作成を検出 |
| Sysmon イベント 20 | WmiEventConsumer の作成を検出 |
| Sysmon イベント 21 | WmiEventConsumerToFilter のバインディングを検出 |
| T1546.003 | Event Triggered Execution: WMI Event Subscription |
| CommandLineEventConsumer | フィルターがトリガーされたときにシステムコマンドを実行 |
| ActiveScriptEventConsumer | フィルターがトリガーされたときに VBScript/JScript を実行 |
ツールとシステム
| ツール | 用途 |
|---|---|
| Sysmon | WMI アクティビティを監視する Windows イベント監視 |
| WMI Explorer | WMI 名前空間を参照するための GUI ツール |
| Autoruns | 永続化の仕組みを一覧表示する Sysinternals ツール |
| PowerShell Get-WMIObject | WMI イベントサブスクリプションの列挙 |
| Splunk | Sysmon の WMI イベントの SIEM 分析 |
| Velociraptor | エンドポイントの WMI アーティファクトの収集 |
出力形式
Hunt ID: TH-WMI-[DATE]-[SEQ]
Technique: T1546.003
Host: [Hostname]
Event Type: [EventFilter|EventConsumer|Binding]
Consumer Type: [CommandLine|ActiveScript]
WQL Query: [Filter query text]
Command: [Executed command or script]
Risk Level: [Critical/High/Medium/Low]
Recommended Action: [Remove subscription, investigate lateral movement]
コメント
Markdown 対応