コンテンツにスキップ

自動ケース🔗

Secureworks® Taegis™ XDR の自動ケースは、新しく作成された検出を監視し、条件を満たす検出から新しいケースを作成するように設定できます。また同様に、指定したアトリビュートに一致する既存のケースに、新しく作成された検出を追加することもできます。

重要

自動ケースルールを呼び出すのは、新しく作成された検出のみです。重大度の変更などの検出更新は、現時点では自動ケースルールをトリガーしません。

自動ケース

ルールは、パートナーレベルで定義してすべての子テナントに適用することも、個々のテナントごとに定義することもできます。ルールでは、受信する検出ストリームに対するクエリ言語の検出クエリと、検出のアトリビュート—たとえばエンティティやタイトル—によって検出をケースにグループ化する Group By 定義のセットを定義します。

自動ケースルールを作成する🔗

ヒント

まだ作成していない場合は、まず自動ケースルールで使用するケーステンプレートを作成してください。詳細については、ケーステンプレート を参照してください。

自動ケースルールを作成するには、次のようにします。

  1. Taegis Menu から、ケース > 自動ケース を選択します。
  2. 新しいルール をクリックして、自動ケースルールビルダーを開きます。

    自動ケースルールビルダーの詳細

ルールの詳細を定義する🔗

  1. ルールの目的を説明するタイトルを入力します。
  2. ドロップダウンから次のいずれかのルール状態を選択します。

    • Disabled: ルールは何も実行しません。
    • Test: 検証目的でログのみを生成します。
    • Enabled: 新しいケースを作成するか、既存のケースに検出を追加します。
    • Append: 既存のケースにのみ検出を追加し、ケースは作成しません。
  3. ケーステンプレート ドロップダウンからテンプレートを選択します。詳細については、ケーステンプレート を参照してください。

  4. (任意)ルールの説明を入力します。
  5. ルールの評価順序を設定します。数値が小さいほど優先順位が高く、先に評価されます。詳細については、ルール順序 を参照してください。
  6. (任意)ルールを整理するために 1 つ以上のタグを追加します。
  7. 続行 をクリックします。

ルール条件を決定する🔗

次のようにルール条件を設定します。

  1. ルールを適用する検出をフィルタリングする XDR クエリ言語ステートメントを追加します。XDR’s query language の詳細については、クエリエディター を参照してください。
  2. ユーザーがこのルールで作成されたケースに検出を追加できるようにする場合は、追加したい検出を見つけるための XDR クエリ言語ステートメントを追加します。XDR’s query language の詳細については、クエリエディター を参照してください。
  3. (任意)検出の優先順位付けを無視 を選択すると、ルールは検出の Threat Score を無視し、システムが対象の検出を自動的に低優先度化したかどうかに関係なく実行されます。このオプションはデフォルトでオフです。
  4. 続行 をクリックします。

検出のグループ化を設定する🔗

  1. Common Expression Language (CEL) を使用して、検出を既存のケースに追加するかどうか、およびどのケースに検出を追加するかを定義します。詳細については、Group By を参照してください。

    注意

    このフィールドは自動ケースルールを作成するために必須です。少なくとも 1 つの検出アトリビュートを指定する必要があります。

  2. Criteria Count に、検出をグループ化するために一致する必要がある、定義した検出アトリビュートの最小数を入力します。

  3. 送信 をクリックします。

ルール評価🔗

ルールが評価される際には、次の点が考慮されます。

  • 中以上の重大度の検出のみが自動ケースルールをトリガーします。低および情報の検出はルールのトリガー対象から除外されます。
  • 新しく作成された検出は、まず子テナントレベルで定義されたルールセットに対して評価され、その後 MSSP パートナーレベルで定義された順序に従って評価されます。
  • ルール評価は最初の一致で停止します。ルールに一致するには、検出がルールクエリに一致し、かつ指定されたグループ化アトリビュートを含んでいる必要があります。
  • ルールに一致すると、Group By 句によって返されたすべての結果値を使用して、指定されたグループ数以上の一致するアトリビュートを持つ既存のケースを検索します。
  • 一致が見つかった場合、検出はケースに追加され、ルールで指定されていればコメントが生成されてケースに追加されます。
  • 一致が見つからない場合、ルールの状態に応じて新しいケースが作成されます。新しいケースが作成されると、システムはルールクエリに一致する最近の検出に対して検出検索を実行し、一致する Group By アトリビュートを持つものを新しいケースに追加します。
  • ケースが手動で作成されると、システムは新しく作成されたケースに関連付けられた genesis 検出を評価し、定義済みルールとの一致を確認します。
  • ルールが一致し、そのケースがルールを定義したテナントのメンバーであるユーザーによって作成された場合、システムは上記で定義したものと同じ検出検索を実行し、自動的にケースに追加される追加の一致検出を検索します。

ルールの監視とテスト🔗

ルールは Test 状態に設定でき、この状態ではルールは評価されますが、実際にはケースに追加されません。アクションが実際に実行されたかのようにメトリクスが収集され、ログが生成されます。ルールの詳細を定義する を参照してください。

ルール処理🔗

重要

子テナントレベルで定義されたルールは、MSSP パートナールールより先に実行されます。お客様が Taegis MDR のお客様である場合、または Secureworks MSSP パートナーからサービス提供を受けている場合は注意してください。

ルール順序🔗

ルールは、ルールの order 値で定義された順序で処理されます—値が小さいほど先に処理されます。ルール処理は最初の一致後に停止します。テナントルールはパートナールールより先に処理されます。

Group By🔗

ルールの Group By 値は、Common Expression Language (CEL) を使用して、検出を既存のケースに追加するかどうかを決定します。ルールに一致すると、group_by 条件が評価されます。group_by 式によって返された結果のいずれかに一致する既存のオープンケースが見つかった場合、新しいケースを作成するのではなく、その既存のケースに検出が追加されます。

各式は、単一の結果またはリストのいずれかを返すことができます。複数の式が定義されている場合、結果のセット全体が 1 つのフラット化された OR リストに結合されます。

たとえば、次の例では、検出に関連付けられたエンティティとして識別されたユーザー名のリストを返します。既存のオープンケースに、結果として得られたユーザー名のいずれか 1 つを持つ検出が含まれている場合、その検出は既存のケースに追加されます。

${alertUsernames(alert)}

検出内のユーザー名の すべて が一致することを強制するには、ユーザー名のリストを単一の文字列値に変換する必要があります。これは join マクロを使用して実行できます。

${join(alertUsernames(alert))}

より複雑な例では、次の例は、指定されたアドレス(127.0.0.1 または 0.0.0.0)に 一致しない、検出に関連付けられたエンティティとして識別された IP のリストを返します。既存のオープンケースに、結果として得られた IP のいずれか 1 つを持つ検出が含まれている場合、その検出は既存のケースに追加されます。

${alertIPs(alert).filter(e, !(e in ['127.0.0.1', '0.0.0.0']))}

次の例では、複数の検出アトリビュートを group_by 句の単一の値に結合する、単一の group_by 句を定義しています。その場合、検出が追加されるには、これらすべてのアトリビュートが既存のオープンケースと一致する必要があります。

${join(alertHostnames(alert).filter(e, e != 'localhost')+alertSensorIds(alert))}

デフォルトでは、group_by 値が一致すれば、どのルールでも任意のオープンケースに追加できます。このルール自身が作成したケースにのみこのルールが追加できるようにするには、group_by 値にルール名を追加できます。

${alertHostnames(alert).map(h, h + 'The Name of This Rule')}

注意

Group By の一致はルール固有ではありません。つまり、Group By 値が一致すれば、どのルールでも任意のケースに追加できます。

Group By リスト内の個別の各行は一致結果になる可能性があります。一致は OR 条件を使用して評価されます。AND 条件で一致させるには、単一の行を定義する必要があります。場合によっては、Group By count を使用して AND 条件の結果にすることが可能です。

検出の追加🔗

ルールは、ケースが作成されたとき、または検出がケースに追加されたときに、そのケースに関連付けられた検出に対して評価されます。ケースに関連付けられた検出がルールに一致した場合、ルールの追加フィルターで定義されたとおりに、追加の検出がケースに追加されることがあります。

注意事項🔗

  • ケースに関連付けられた最初の 100 件の検出のみが評価されます。
  • ルールに追加フィルターがない場合、追加する関連検出を検索するためにルールフィルターが使用されます。
  • 実行前に、次の条件が常にクエリに追加され、上書きすることはできません。ケースに追加されるには、検出がこれらの条件を満たす必要があります。
    • 検出の重大度が 0.6 以上
    • 検出ステータスが OPEN(検出がすでに別のケースに関連付けられていないこと)
    • earliest/latest timestamp が detection created at timestamp の +/- 4 時間以内
  • 最大 100 件の検出を自動的に追加できます。
  • 自動的に追加された検出は、今後の検出評価(Group By の一致)に使用されます。

検出処理🔗

中以上の重大度の検出は、作成または公開されるたびに順次処理されます。各検出についてルールが評価され、その検出に最初に一致したルールに対してケースが作成されるか、ケースに追加されます。ルールの filter は検出との一致に使用されますが、検出は append_filter に対しても評価され、append_filtergroup_by 条件の両方に一致した場合はケースに追加されることに注意してください。

追加状態を持つルール、または append_filter が定義されているルールは、filter または append_filtergroup_by の両方が一致するまで、順番に評価され続けます。検出が filter に一致しても group_by に一致しない場合、その検出は順序付けされたルール一覧の次のルールに対して評価されます。

自動ケースルールを編集する🔗

ルールを編集するには、目的のルールの Actions 列にある鉛筆アイコン をクリックします。詳細ルール条件、または 検出グループ化条件 を編集し、送信 を選択して保存します。

自動ケースルールアクション

自動ケースルールをエクスポートおよびインポートする🔗

  • ルールをエクスポートするには、目的のルールの Actions 列にあるエクスポートアイコン をクリックします。ルール設定は YAML 形式でエクスポートされます。

  • YAML 形式のルール設定をインポートするには、テーブル上部の + インポート をクリックしてファイルを選択します。

自動ケースルールを削除する🔗

設定済みのルールを削除するには、目的のルールの Actions 列にあるごみ箱アイコン を選択し、削除 を選択してアクションを確認します。

ルールログ🔗

ルールログタブでは、ユーザーは自動ケースルールまたはテンプレートへの変更のログ、および自動ケースによって検出に対して実行されたアクションのログを表示できます。最初は空の、フィルタリング可能なテーブルが含まれています。

フィルターを使用し、次の識別子のいずれかを入力してください: Rule IDCase IDDetection ID、または Template ID。これによりアクションのログが返されます。

自動ケースルールログ

Summary Message 列からログを選択すると、アクションの詳細情報と関連メタデータの JSON ビューを表示できます。

自動ケースルグログの詳細

ヒント

個別のインスタンスにアクセスするときは、URL 内で RuleCaseDetection、または Template の識別子を確認できます。

<taegis_xdr_url>/cases/<case_id>/summary