脅威ハント

Data Explorer で脅威のハンティングを使用して、データをインポート、グループ化、結合、および操作することで、仮説を証明したり、その仮説を反証したりすることができます。 例えば、重要性の高いリソースが疑わしい外部の DNS サーバーに接続されているかどうかを知ることができます。

ハントとは、仮説を証明または仮説の誤りを立証するために、未知の脅威を事前に調査することです。 ハントは、ステップ (質問)、変数 (回答)、およびスナップショット (証拠) から構成されます。

ステップとは、ハンターがいくつかのデータを確認するために尋ねる質問のことです。 ステップには、Kestrel ステートメントとハンターのコメントが含まれます。

スナップショットとは、変数の静的なビューのことです。 スナップショットは、レポートで参照される証拠として保存されます。

ステップ

ステップは、ハントの中心となる部分です。 ステップには、データを取得するための Kestrel ステートメントとハンターのコメントが含まれます。 ステップ名は、ステップを識別するためにのみ使用されます。 名前を指定しない場合は、ステートメント内のコマンドに基づいてデフォルト名が適用されます。

コマンド

Kestrel コマンドを入力するときは、プロンプト・テンプレートを使用して Kestrel ステートメントを記述することを選択できます。

Data Explorer は次のコマンドをサポートします。

  • GET - データ・ソースの検索: STIX パターンを使用して、接続されているすべてのデータ・ソースからデータを検索します。
  • APPLY - 分析の追加: データを分析し、強化します。
  • GROUP - 列によるグループ化: 変数内の列に基づいて、グループ化された表を作成します。
  • JOIN - 変数の結合: 列の値を使用して 2 つの変数を結合します。
  • DISP - スナップショットの作成: ある変数から特定の列を選択してレポートのスナップショットに表示します。
  • FIND - 変数内のエンティティーの検索: 指定されたエンティティーのリストに接続されているエンティティーを検索して戻します。
  • NEW - 変数の作成: 指定されたデータから直接取得されるエンティティーを持つ変数を作成します。
  • SORT - 列のソート: 変数内のエンティティーを再配列し、新しい順序と同じエンティティー・セットを新しい変数に出力します。
  • COPY - データを新しい変数にコピーする: 既存の変数をコピーして別の変数を作成します。
  • MERGE - エンティティの結合: 論理和集合を使用して、複数の変数内のエンティティーをマージします。

Kestrel ステートメント

Kestrel は、未知の脅威を見つけるために構築された脅威ハンティングの言語です。 既存の防御では検出されなかった異常かつ悪意のある行動を検出できます。 ステートメントには、複数のコマンドとパラメーターを含めることができます。 Data Explorer で脅威ハンティングを正しく使用するには、Kestrel を理解しておく必要があります。 詳しくは、「Kestrel 脅威ハンティング言語」を参照してください。

Kestrel 分析

分析により、セキュリティー・データの分析と強化を行います。 APPLY コマンドを使用して Kestrel ステートメントを作成すると、前のハンティング・ステップで作成した変数に対してこれらの分析を実行できます。

  • skcluster - 選択した列にクラスタリング結果を提供します。 詳しくは、「scikit-learn クラスタリング」を参照してください。
    • パラメーター:
      • columns: クラスタリング・アルゴリズムに渡す列/属性のリスト。
      • method: クラスタリング・アルゴリズムの名前。kmeans (デフォルト) または dbscan のいずれかを指定します。
        ヒント:
        kmeans の例
        APPLY skcluster ON var WITH method=kmeans, n_clusters=3, columns=src_byte_count,dst_byte_count
        dbscan の例
        APPLY skcluster ON var WITH method=dbscan, eps=0.5, columns=src_byte_count,dst_byte_count
    • 入力:

      タイプ: 任意

  • suspicious-process-scoring - プロセス・オブジェクトのサスペクト・スコアを計算します。
    • パラメーター: なし。
    • 入力:

      types: process

  • tis-enrich - ipv4-addr やドメイン、URL、ファイル (ハッシュ) などのオブジェクトに脅威インテリジェンスを追加します。
    • パラメーター: なし。
    • 入力:

      タイプ: ipv4-addripv6-addrdomain-nameurlnetwork-traffic、または file

  • outliers - データ・セットから外れ値スコアを計算します。 0 に近いスコアは正常です。1.0 に近くなると異常です。
    • パラメーター:
      • columns: 外れ値検出アルゴリズムに受け渡す列/属性のリスト。
      • method: 外れ値検出アルゴリズムの名前。「自動」(デフォルト。適切な方法を自動的に決定します)、「zscore」、または「分離フォレスト」のいずれか。 zscore は 1 変量の方法であり、単一の数値属性のみを入力として使用できます。
      • k: 標準偏差の整数乗数 (メソッドが「zscore」の場合にのみ使用されます)。 デフォルトは 3 です。
      • contamination: データ・セット内の外れ値の比率 (メソッドが「isolationforest」の場合のみ使用されます)。 デフォルトは「auto」です。
    • 入力:

      タイプ: 任意