脅威ハンティング: 概要と実装方法
脅威ハンティングの実践的な用語解説: 意味、アラート仕分けとの違い、ハンターが実際に使う方法について。
脅威ハンティングは、既存の検知を突破している攻撃者を探すため、ネットワークとエンドポイントを積極的に検索する実践です。シンプルで不安な仮定から始まります。悪意のあるものが既に内部にいる可能性があり、それに対してアラートが発火していないということです。SIEM ルールの発火を待つ代わりに、ハンターは仮説を立てて、それを確認または否定する証拠を探しに行きます。
検知だけでは十分でない理由
シグネチャベースおよびルールベースの検知は既知のパターンを捉えます。LOLBins (living-off-the-land binary) の利用、正規の認証情報、または遅く低量の手法を使う攻撃者は、数週間その閾値以下にとどまることができます。脅威ハンティングはデータに対して人間が積極的に疑問を持つことでそのギャップを埋めます。午前 2 時の財務ワークステーションからの PowerShell 呼び出しは意味がありますか。なぜ svchost.exe が逆引き DNS を持たない IP に対してアウトバウンド接続を作成していますか。
こはインシデント対応ではありません。インシデント対応は何が起きたかを知った後に始まります。ハンティングはまだ何が起きたか分からないときに始まり、より大きなイベントが質問を強制する前にそれを見つけることが目標です。
3 つの一般的な開始地点
ほとんどのハンティングは 3 つの角度のうち 1 つから始まります。
- インテリジェンスドリブン: 新しい脅威レポートが TTP (スケジュール済みタスクの永続性への悪用など) を記述しており、それが環境に存在するかどうかを確認します。
- 状況認識: 組織にとって実際に異常なことを確認します。サービスアカウントが以前認証したことのない国から認証している、または通常はサーバーとのみ通信するワークステーション間で SMB トラフィックのスパイクが起きています。
- 分析ドリブン: 通常の動作のベースライン (プロセスツリー、ログイン時間、DNS クエリボリューム) を構築し、それに対する統計的外れ値を探します。
MITRE ATT&CK は仮説を構造化するためにほとんどのチームが使う参照です。「マルウェアを探す」ではなく、T1053 (Scheduled Task/Job) のような手法を選んで、それが Windows Event Logs または EDR テレメトリでどのように見えるか、そして今すぐクエリできるかを尋ねます。
実際のワークフローがどのように見えるか
ハンティングは通常このループに従います。
- 特定でテスト可能な仮説を立てます (「侵入を確認する」ではなく「過去 30 日間のパッチウィンドウ外に作成された新しいスケジュール済みタスクを確認する」)。
- 必要なデータソースを識別します。プロセス作成用の Sysmon Event ID 1、スケジュール済みタスク作成用の Windows Security Event ID 4698、EDR プロセスツリー、またはネットワークコンテキスト用の Zeek conn ログです。
- クエリとピボット。実際には Microsoft Sentinel での KQL の記述、Splunk での SPL、または Elastic インデックスに対する生のクエリを意味します。
- 結果を仕分けます。ほとんどは誤検知または無害な管理アクティビティであり、その仕事はそのノイズを本当に異常なものまで絞り込むことです。
- 確認された侵害、検知ギャップ、または単なる結果かどうかにかかわらず、結果を文書化します。
この記事は AI の支援を受けて執筆し、Korra Studio の Michal Pilch(CISSP)が確認のうえ公開しました。
これは Korra Studio ナレッジベースの 1 つのノートです。プラットフォームはすべてのトピックと 1 対 1 メンタリングをペアで提供します。
無料で始めるarrow_forward