ユニット 2 / 11

ログと SIEM 分析: 人工知能によるイベントとノイズの分離

利益:

  • 人工知能は何千ものログ行を要約してクラスタリングし、タイムラインを確立して疑わしいパターンを強調表示しますが、アナリストは生のログを使用してイベントが実際の攻撃であると判断することを理解します。
  • SIEM アラームを評価するときにベースライン (通常の動作) を適用する機能、コンテキストなしで誤検知を排除する方法、および異常を解釈できない方法
  • 人工知能によって確立された一連のイベントを生のログで検証し、偽の相関関係を削除する習慣を身につける能力

セキュリティ アナリストは 1 日のほとんどをログの読み取りに費やしています。ログは、システム上で起こったこと、つまり誰がいつログインしたか、どのファイルがアクセスされたか、どの接続が拒否されたかをタイムスタンプするテキスト行です。問題はログが少なすぎることではなく、ログが多すぎて息苦しいことです。中規模の組織では、1 日に数億行のログ行が生成されます。この山では、実際の攻撃の痕跡が干し草の山の中の針のように見えます。 SIEM (セキュリティ情報およびイベント管理 - 単一センター内のさまざまなソースからログを収集して関連付け、ルールベースのアラームを生成するシステム) は、この針を見つけるために存在します。しかし、SIEM が生成するアラームのほとんどは誤検知 (実際には脅威ではない無駄なアラーム) でもあります。アナリストの本当の仕事は、このノイズから実際の信号を抽出することです。

人工知能は、この分類において強力な助けとなります。何千ものログ行を数秒で読み取って人間の言語で要約し、繰り返し発生するパターンを分類し、一連のイベントを「最初にこれが起こり、次にあれが起こった」と説明し、アラームが疑わしいと思われる理由を説明することができます。しかし、AI はその施設のコンテキスト内でログが何を意味するのかを知りません。「午前 3 時のアクセス」は、ある施設では攻撃であり、別の施設では通常の夜勤です。そのため、AI はログを要約してフラグを立てますが、アナリストはイベントが本当の攻撃であるかどうかを判断し、生のログで検証します。

ログ分析の手順

AI を使用してステップバイステップのログ/SIEM 分析を実行する方法は次のとおりです。

  1. 収集して匿名化します。関連するログフラグメントを削除します。実際の IP、ユーザー名、内部ホスト名をプレースホルダー (USER_A、IC_IP_1) に置き換えます。生データをそのまま外部ツールにエクスポートしないでください。
  2. コンテキストを教えてください。 AI にログのソース (ファイアウォール、Windows イベント ログ、Web サーバー)、通常の動作とは何か、何を探しているのかを伝えます。コンテキストのないログ分析は誤解を招きます。
  3. 要約して集計します。 AI にイベントの種類ごとに数千行をグループ化し、発生数を抽出し、タイムラインを作成するように依頼します。
  4. 疑わしいパターンにフラグを立てます。 「ログイン失敗後のログイン成功 1 回」、「短期間に多数のファイル アクセス」、「不明なプロセスに属するネットワーク接続」などのパターンを強調表示します。
  5. 生の証拠で検証してください。実際のログ行で AI がフラグを立てる各パターンを見つけて確認します。 AIが見逃す領域も自分でスキャンしてください。
  6. 決定と登録。アナリストとして実際のイベントを宣言し、チケットを開き、AI が単なるアクセラレーターであることを文書化します。

いくつかの用語: ログ ソースは、ログを生成するシステムです。相関関係とは、さまざまなソースからのイベントをまとめて意味を理解することです (VPN ログイン + ファイル アクセス + データ転送 = 漏洩の可能性)。ベースラインは、システムの通常の動作の尺度です。異常はベースラインと比較してのみ意味を持ちます。 UEBA (User and Entity Behavior Analytics) は、各ユーザーの通常の行動を学習し、逸脱にフラグを立てる AI ベースのアプローチです。

比較表

アプローチ

どのように機能するのか

強み

弱さ

ルールベースのSIEM

「if-then」ルールを修正

透明性があり、説明しやすい

未知の攻撃を見逃す、誤検知が多い

シグネチャベースの検出

既知の悪いパターンと一致します

既知の脅威に迅速に対応

新しい/変更された攻撃に対してブラインド

アノマリー/ウエバ(AI)

正常からの逸脱を見つける

未知のものを捉えることができる

異常 = 攻撃しない。誤検知のリスク

AIによる要約

ログイン言語の概要

スピード、読みやすさ

脈絡がない、幻覚の危険性がある

アナリスト(人間)

コンテキスト付きのコメント

決断、責任

遅い、疲れる、スケールしない

適切な設定は、1 つを選択するのではなく、階層化することです。SIEM と署名が大まかにノイズを除去し、AI が要約して強調表示し、アナリストが検証して決定します。

ミニケース3個

ケース 1 — 50,000 行、6 分。アナリストがWebサーバーからの5万行のアクセスログをAIに匿名化。 AI は、単一の外部 IP が 3 時間で 12,000 件のリクエストを含む /admin ルートをクロールし、480 の異なるパラメーターを試し、200 件の応答を 3 回受信したと推定します。アナリストは、生のログでこれら 3 つの成功したリクエストを見つけ、それが実際のパス列挙攻撃であることを確認し、IP をブロックします。 50,000 行を手作業で読むには何時間もかかります。要約では6分に短縮されましたが、それはアナリストの決定でした。

ケース 2 — 人為的な相関関係。別のアナリストは AI に「攻撃チェーンをこのログに記述してください」と指示します。 AI は、「02:11 に USER_B が権限を昇格し、データをエクスポートした」という流動的なストーリーを構築します。アナリストは、生のログをレポートに書き込む前に開きます。一方、ログには特権昇格もデータ転送もありません。このモデルは、典型的な一連のイベントを「攻撃ストーリー」に当てはめています。アナリストは主張を抽出します。教訓: AI が伝えるすべてのチェーンはログで検証される必要があります。

ケース 3 — 夜勤の誤検知。 UEBA モデルは、午前 3 時に 900 個のファイルにアクセスするユーザーに「高リスクの異常」としてフラグを立てます。アナリストはコンテキストをチェックします。ユーザーはバックアップ オペレーターであり、このジョブは毎晩 03:00 に実行されます。ベースラインは考慮されていませんでした。アラームは誤検知です。アナリストはルールを設定し、この演算子を例外リストに追加します。異常は必ずしも攻撃ではありません。文脈がなければ、アラームはノイズです。

弱いプロンプト / 強いプロンプト

弱いプロンプト:

このログを調べて、攻撃があるかどうか教えてください。[10.14.2.7 - ahmet.yilmaz - 200 - /admin ...]

このプロンプトには実際の IP とユーザー (プライバシー侵害) が含まれており、ログ ソースや通常の動作は伝えられず、AI に証拠や誤検知の評価を求めません。 AI は、「はい、攻撃があります」という一言でユーザーを誤解させる可能性があります。

強力なプロンプト:

あなたの役割: 分析草案を準備する SOC アナリストのアシスタント。決断しないでください、攻撃を宣言しないでください。これは、Web サーバーの匿名化されたアクセスログです (IP とユーザーはマスクされています)。通常のトラフィック: 営業時間中は 100 ~ 300 リクエスト/時間、ほとんどが /product および /cart ルートです。あなたのタスク: (1) タイプとソース別にイベントを分類し、発生数を指定します。(2) ベースラインから逸脱するフラグ パターンを示します。(3) 各フラグがどのログ行に基づいているかを示します。(4) それぞれの誤検知の確率とその理由を書き留めます。フィッティングライン/IOC挿入。確信が持てない場合は、「[分析者が検証]」をマークしてください。[ここに匿名のログ]

強い主張は役割を制限し、コンテキストとベースラインを提供し、証拠との連携と誤検知の評価を必要とします。

コピー可能なプロンプトテンプレート

ログ概要テンプレート次の匿名 [ログ ソース: 例: [ファイアウォール] ログを要約します: (1) イベント タイプごとにグループ化し、各グループの発生数を示します。(2) 一意のソース/ターゲットの数を抽出します。(3) タイムライン (最初から最後のイベント、ピーク時間) を確立します。(4) 5 つの顕著な異常を証拠ラインとともにリストします。意思決定;要約すると。ログ: [貼り付け]

相関テンプレート時間とエンティティの経過に伴う匿名イベントを相関させ、起こり得るイベントの連鎖を構築します。ただし、各ステップについて、どのログ行に基づいているかを示し、根拠のないステップには「[根拠なし - 検証する必要があります]」とマークします。別の善意の説明も書いてください。イベント: [貼り付け]

誤検知排除テンプレート このアラームについては、攻撃の解釈について少なくとも 3 つの善意の (誤検知) 説明を生成し、それぞれを検証するためにどのような追加のログ/証拠を確認する必要があるかを書き留めます。次に、追加のどの証拠が攻撃に有利で、どれが攻撃に反対であるかを判断します。アラーム: [貼り付け]

タイムライン抽出テンプレート: 単一の時系列タイムラインがこれらの匿名ログから抽出されます: [時間] [エンティティ] [イベント] [ソース ログ] の形式の各行。タイムスタンプなしでイベントを追加します。ギャップを埋めないでください。欠品の場合は「【欠品】」とご記入ください。ログ: [貼り付け]

よくある間違い

  • 文脈のない分析。ログ ソースと通常の動作 (ベースライン) について言及せずに行われたコメントは誤解を招く可能性があります。 「異常」は文脈によって意味が生まれます。
  • AIが確立したチェーンを検証していない。このモデルは、通常の出来事を攻撃ストーリーに結び付けることができます。生ログの各ステップを確認します。
  • 異常を攻撃と間違える。 UEBA の兆候は仮説です。バックアップ、メンテナンス、新しいソフトウェアなどの無害な原因を排除します。
  • 生データをマスキングせずにエクスポートします。実際の IP/ユーザー/ホストは、KVKK 違反であると同時に、攻撃者へのネットワーク マップの贈り物でもあります。
  • 否定的な概要を信用せず、閲覧をやめてください。 AI が「何も重要ではない」と言った場合でも、独自の体系的なクエリ (重大なインシデント タイプ、新しい IOC) を実行します。
ヒント: AI にログを要約させるときは、必ず「証拠ラインを表示する」ように依頼してください。一連の証拠がなければ、いかなる発見も真剣に受け止めないでください。この 1 つのルールにより、ほとんどの幻覚が遮断されます。
注意: AI が「誤検知」と言ったからといって SIEM アラートを無視すると、実際の攻撃が隠蔽される可能性があります。また、AIが「重要ではない」と呼ぶアラームを独自にチェックします。閉鎖の決定はアナリストに属し、記録されます。

要約すると

ログ分析と SIEM 分析の本質は、膨大なノイズの山から実際の信号を抽出することです。この分類では、AI がログを数秒で要約し、パターンをクラスター化し、タイムラインを確立し、容疑者を浮き彫りにします。ただし、組織的な背景は分からず、出来事をでっち上げることはできます。したがって、正しい設定は階層化されています。ルール/署名が大まかに選別され、AI が要約してフラグを立て、アナリストが生のログで検証して決定を下します。 3 つの原則によって保護されます。コンテキスト (ベースラインなしで異常が解釈されることはありません)、証拠 (各検出結果は生のログ行に関連付けられます)、独立した制御 (AI が「クリーン」と呼ぶ領域もスキャンされます)。そして常に匿名で作業します。

アプリケーションタスク

サンプル ログ フラグメント (独自のシステムまたはサンプル データ セットから匿名化されたもの) を取得します。まずは「ログ集計」テンプレートでAIに集計します。次に、最も注目すべき 3 つの検出結果のそれぞれに「誤検知の除去」テンプレートを適用し、生のログで各検出結果を自分で検証します。最後に、AI の要約とあなたの生の読みの違いに注意してください。AI は何を見逃したのか、何を補ったのか、何を正しく理解したのか?

チェックリスト

  • [ ] ログを匿名化しました。実際の IP/ユーザー/ホストはマスクされます。
  • [ ] AI にログソースと通常の動作 (ベースライン) を与えました。
  • [ ] 各所見の証拠ログ行をリクエストし、生のログで検証しました。
  • [ ] 私は AI によって確立された一連の出来事のあらゆる段階を確認し、捏造を排除しました。
  • [ ] 各アラームについて、少なくとも 1 つの誤検知の説明を検討しました。
  • [ ] AI が「クリーン/重要ではない」と呼ぶ領域もスキャンしました。
  • [ ] アナリストとして、私は決定を下し、インシデントを記録しました。 AI をアクセラレーターとして文書化しました。