>

適応と調整: 検索の適応

検索

Recorded Future App for Splunkには、相関関係とエンリッチメントの2種類または検索があります。 両方のタイプについて、変更方法の説明とともに以下で詳しく説明します。

相関検索

Recorded Futureは、Recorded Future Risk Listsとさまざまなログファイルを関連付ける方法を示す、サポートWeb上のサンプル検索をまとめた「 Common Splunk Search Strings for Recorded Future Risk Lists 」を提供しています。

Splunkの機能「ワークフローアクション」では、検索結果のコンテキスト依存メニューエントリを使用できます。

ワークフロー アクション

デフォルト・セットでカバーされていないアクションの説明については、Recorded FutureのWebサイトの記事「 Pivoting to Recorded Future Enrichment Data in Splunk」を参照してください。

ベース検索

相関ダッシュボードのベース検索も同じ形式に従い、より具体的な検索のベースとして使用されます。

これは、[Recorded Future IP Log Correlation Dashboard] のデフォルトのベース検索です。


    index=main sourcetype="netscreen:firewall" 最も早い=-24時間
   |eval 名前=dst
   |join [|inputlookup default_ip_risklist.csv | テーブル * ]
   |search Risk != ""
   |sort -リスク
  • index=main sourcetype="netscreen:firewall" earliest=-24h は 'main' インデックスを選択し、sourceType を 'netscreen:firewall' に設定し、過去 24 時間以内のタイムスタンプを付けます。
  • eval Name=dst は、 eval ステートメントを使用して、ログ内のフィールド 'dst' の名前を 'Name' に変更します。
  • join [|inputlookup default_ip_risklist.csv | テーブル * ] 前の検索の結果を、IP_risklist.csvルックアップ ファイルで使用可能なすべてのフィールドを含むテーブルと結合します。
  • search Risk != "" は、フィールド 'Risk' に値が割り当てられている項目 を検索することにより、リスクが割り当てられていない結果を削除します。
  • sort -リスク フィールド名の前に「-」を追加して、結果をリスクの降順で並べ替え、最もリスクの高い結果がリストの一番上に表示されるようにします。

一般的な変更は、カスタム・リスク・リストを使用することです。 記録された将来のリスクリストでは、主要な要素は名前と呼ばれます。 その内容はリスクリストの種類によって異なり、例えば、ドメインリスクリストではドメイン、脆弱性リスクリストではCVEを示します。 カスタムリスクリストを使用するには、Splunkとリスクリストの両方のデータのフィールド名と一致するように2行目を変更します。

古いバージョンの相関ダッシュボードではルックアップが使用されていましたが、Recorded Future App for Splunkのコンテキストではルック アップ がはるかに遅く、結果から一致しないイベントは削除されません。 joinsubsearchinputlookupで使用する方が高速です。

サブサーチ

これは、基本検索の一意の行数を決定する検索です。 最初のステートメントは 、統計的な 個別カウントを行うため、フィールド 'Name' の一意の値のみをカウントし、その結果をフィールド 'count' に保存します。 この値は、 ステートメントを使用して rangemap 色分けされます。


    | stats dc(Name) をカウントとして
    |RangeMap フィールド = カウント 低 = 0-0 拡張 = 1-1 デフォルト = 重大

次のサブサーチは、相関ダッシュボードの最後のテーブルを作成し、フィールド「Name」の各値の出現回数を表示します。 stats と比較すると、eventstats は結果の各行に新しいフィールド 'Count' を追加します。「Name」に関するすべての重複行は、「重複除去されたName」で削除されます。 Recorded Future マクロ 'format_evidence' は、フィールド 'EvidenceDetails' の JSON オブジェクトを解析し、そこに含まれるデータを新しいフィールドに入力します。 最後に、データは降順で並べ替えられ、最終的な情報を示すテーブルを作成する前に、リスクからすべての小数点以下を削除してクリーンアップされます。


    | eventstats Count BY Name (名前による eventstats カウント)
    |重複除去の名前
    |「format_evidence」
    |sort -リスク
    |eval リスク = round(リスク,0)
    |テーブル Risk、Name、Count、RiskString、Rule、Evidence

エンリッチメント検索

エンリッチメント ダッシュボードは、API クレジットを使用して、Recorded Future Connect API から特定のエンティティに関する詳細情報を取得します。

ベース検索

各エンリッチメント ダッシュボードの基本検索には、エンティティに関する情報を取得するための REST 呼び出しが含まれています。 APIから受信した情報をカスタマイズすることができます。 デフォルトでは、できるだけ多くのデータをユーザーに表示できるように、使用可能なすべてのフィールドが選択されています。 使用可能なフィールドは、 Recoded Future API ページにあります。 CDATAカプセル化、つまり「この検索の正規表現。 spath ステートメントは、JSON オブジェクトを解析して、検索で情報を使用できるようにするために使用されます。最後の 2 つのステートメントは、タイムスタンプをより一般的な形式に変換します。


    .+)"
    |rulesMax の名前を risk.rulesMax に変更します。
    |spath 入力=タイムスタンプ
    |eval FirstSeen=strftime(strptime('timestamps.firstSeen', "%Y-%m-%dT%H:%M:%S.%NZ"), "%b %d, %Y")
    |eval LastSeen=strftime(strptime('timestamps.lastSeen', "%Y-%m-%dT%H:%M:%S.%NZ"), "%b %d, %Y")
    ]]>
サブサーチ

エンリッチメント ダッシュボードのサブサーチの多くは、特に関連エンティティ テーブルに関しては、非常によく似ています。 1 つの例は、関連ドメインに関する以下の例です。


    | 'unpack_relatedEntities(関連インターネットドメイン名)'
    |sort -count、名前
    |名前を「ドメイン」に変更します。
    |名前を [参照] として変更します
    |テーブル ドメイン、参照

マクロ 'unpack_relatedEntities' は、入力 JSON オブジェクトを解析します。 マクロは、関連するすべてのエンティティ テーブルが同じ方法で処理されるようにするために使用されます。 結果は ソートされ、ed と 名前がd に変更され、適切なヘッダーが取得されます。 最後の行は、ダッシュボードに表示される テーブル を作成し、「ドメイン」フィールドと「参照」フィールドを表示します。

さらにヘルプ

「Recorded Future App for Splunk」は、Recorded Futureによって開発されました。

詳細情報とサポートは、サポートWebサイト( support.recordedfuture.com