レコード処理パイプライン
このトピックでは、CSE が未処理の受信メッセージをどのようにレコードに変換するかを説明します。CSE は受信した各メッセージに 1 つのレコードを作成しますが、まれに複数のレコードを作成する場合もあります。
処理ステップの概要
レコードには、CSE ルール評価プロセスを有効および拡張するために、さまざまな方法で変換および拡張された受信メッセージの情報が含まれます。処理ステップは次のとおりです。
- メッセージからキーと値のペアが抽出される。
- Source 固有のフィールドが CSE スキーマ属性にマッピングされる。
- ユーザ名とホスト名を含むフィールドの値 (メッセージ Source によって大きく異なる) が標準形式に正規化される。
- メッセージ内の IP アドレス、URL、およびドメインに関する追加のコンテキスト情報によってメッセージが強化される。
- メッセージ フィールドが Match List (一致リスト) と比較される。このリストは通常、信頼できるエンティティのリストを定義するために使用するもので、一致が検出されると、それを反映させるためにレコードに属性が追加されます。
- メッセージ フィールドが Suppressed List (禁止リスト) と比較される。このリストはフィールド値を定義するために使用するもので、そのフィールド値がメッセージで検出されると、そのメッセージに一致するルールは発動されません。
- メッセージ フィールドが脅威インテリジェンス リストと比較される。一致が検出されると、それを反映させるためにレコードに属性が追加されます。
メッセージからのキーと値のペアの抽出
受信メッセージごとに、CSE はメッセージ内のすべての情報を反映する一連のキーと値のペアを作成します。受信メッセージの種類ごとに、その仕組みを説明します。
- 構造化されたメッセージ。構造化された形式では parse の必要がありません。CSE は構造をフラット化し、一連のキーと値のペアを作成します。
- 構造化されていないメッセージ。Grok パターンを使用して非構造化データが parse されます。すべての Grok がすべてのメッセージに対して実行されます。メッセージが複数の Grok に一致する場合は、複数のレコードが作成されます。
- Sumo Logic プラットフォームからのデータ (CIP)。CIP からのデータは CIP 側で parse され、キーと値のペアとして CSE に提供されます。
キーと値のペアは、このプロセスの次のステップであるマッピングに入力されます。
メッセージ フィールドのスキーマ属性へのマッピング
マッピング プロセスでは、メッセージから抽出されたキーと値のペアからレコードが作成され、一部のキーが CSE スキーマ属性にマッピングされます。
マッピングによってある特定の問題が解決します。異なる製品からのメッセージでは、ユーザ、アプリケーション、デバイスなどを識別するために使用されている名前が異なります。たとえば、一部のメッセージでは Source IP アドレスを sourceIP
と呼び、他のメッセージでは sourceIpAddress
が使用されている場合があります。ほとんどのメッセージに含まれている可能性が高いデータに、名前の標準セットが必要です。CSE スキーマは、この名前の標準セットを定義します。
マッピングのメリットは何でしょうか? 受信メッセージの Source に関係なく、同じ種類のデータを保持するフィールドの共通 (標準) 名がレコードで使用されるようになることです。その結果、メッセージ Source に関係なく、同じ CSE ルールをすべてのレコードに適用できます。
ユーザ名とパスワードの正規化
ユーザ名とホスト名の正規化とは、ユーザ名とホスト名を含むレコード属性の値を標準形式に変換するプロセスです。正規化された値によって、レコード内の非正規化値が置き換えられます。ホスト名とユーザ名の非正規化値は、レコードの _raw
フィールドで保持されます。
正規化する理由は何でしょうか? たとえば、CSE が email-type フィールド「bob@bobsbaitshop.com」と username-type フィールド「bob」を含むメッセージを受信するとします。正規化を使用して、「bob@bobsbaitshop.com」を「bob」に変換し、ユーザ名をメールを相関付けることができます。
正規化では、Active Directory、AWS、完全修飾ドメイン名での共通名形式をドメインおよびユーザ名形式に正規化できます。
次のスキーマ属性の値は標準形式に正規化され、レコードの非正規化フィールド値を置き換えます。
device_hostname
dstDevice_hostname
fromUser_username
srcDevice_hostname
user_username
IP アドレス、URL、ドメイン情報によるレコードの強化
CSE はレコードにいくつかの強化属性を追加します。強化属性は、レコードで検出された属性値に基づいて、追加コンテキストをレコードに提供するフィールドです。CSE は IP アドレス、URL、およびドメインの強化属性をレコードに追加します。
IP アドレスの強化
レコードに device_IP
、srcDevice_ip
、または IP アドレスを含む別のフィールドが含まれている場合、ASN 番号と組織、その IP アドレスが存在する国や都市などのジオロケーション属性がレコードに追加されます。
強化属性の名前は、元の属性名にアンダースコアと強化属性を識別する文字列を追加して形成されます。たとえば、レコードに device_IP,
が含まれている場合、強化属性は device_ip_asnNumber
、device_ip_asnOrg
、device_ip_city
などのようになります。
URL とドメインの強化
レコードに http_url
、または URL を含む別のフィールドが含まれている場合、CSE は URL を parse し、プロトコルやトップ レベル ドメイン フィールドなどの URL 要素を含む属性を作成します。
URL とドメインの両方について、CSE は FQDN とルート ドメインのエントロピ計算や、Alexa ランキングなどの一連の強化属性をレコードに追加します。
追加される各属性の名前は、元の属性名にアンダースコアと強化属性を識別する文字列を追加して形成されます。たとえば、http_url
を含むレコードに追加される属性は、http_url_tld
、http_url_protocol
、http_url_alexaRank
などのようになります。
一致リスト処理
CSE の Match List (一致リスト) 機能では、重要な識別子のリストを利用できます。受信メッセージにこのような識別子が存在する場合は、メッセージを通常のルール処理から除外するか、何らかの方法で別に処理すべきであることを示します。通常、一致リストは IP アドレス、URL、ホスト名のような項目の「許可リスト」を定義するために使用されます。多くの CSE ルールは一致リストを参照します。一致リストは事前定義済みで、環境内に存在する痕跡をこのリストに入力します。
たとえば、脆弱性スキャナーは、攻撃者の動作を意図的に模倣しているため、セキュリティ データで誤ったアラームを作動させることがよくあります。この動作が安全で予期されるものであれば、スキャナーのアクティビティによってルールが発動されるのは望ましいことではありません。一致リストはそのためにあります。CSE アナリストは、スキャナーの IP アドレスを含む「vuln_scanners」という一致リストを入力できます。
CSE はすべてのメッセージの内容を一致リストと比較します。一致が見つかると、listMatches
と matchedItems
という 2 つのフィールドが追加されます。listMatches
にはレコードに対して一致したリストの名前が含まれ、matchedItems
には一致した実際のキーと値のペアが含まれます。この追加されたデータは、検索とルールで活用できます。CSE ルールでは、ルール条件に一致するレコードから、レコード内の IP アドレスが「vuln_scanners」一致リストにあることを確認し、ルールを発動すべきではないことを認識できます。詳細については、「一致リストの作成」を参照してください。
禁止リスト処理
CSE の Suppressed List (禁止リスト) 機能は一致リストと似ています。禁止リストは、IP アドレスやファイル ハッシュなどの特定のフィールド タイプの値のリストです。禁止リストにある値が受信メッセージに含まれていると、その受信メッセージに一致するルールは発動されません。
脅威インテリジェンス処理
CSE には、一致リストと似ている脅威インテリジェンスというもう 1 つの機能があります。一致リストと同様、脅威インテリジェンス リストは CSE アナリストによって設定された痕跡と識別子のリストです。一致リストと似ていますが、脅威インテリジェンス リストは明らかにシグナルを発動すべき悪影響を及ぼす識別子を対象としています。このため、脅威インテリジェンス リストの項目に一致するレコード フィールドをルールが検出したときは、必ずシグナルが生成されます。
CSE の脅威インテリジェンス リスト処理は、一致リスト処理と似ています。受信メッセージはすべての脅威インテリジェンス リストと比較されます。一致が検出されると、CSE はレコードの listMatches
フィールドを一致した脅威リストの名前、メッセージから一致したキーと値のペア、「threat」という文字列で更新します。詳細については、「CSE ルールについて」トピックの「脅威インテリジェンス」セクションを参照してください。