カスタム・プロパティー式を使用したカスタム・プロパティーの定義

カスタム・プロパティー式を使用して、イベント・ペイロードのカスタム・プロパティーを定義します。 JSON 解析は有効な JSON オブジェクトが検出されると開始されるため、イベント全体が JSON フォーマットである必要はありません。 同様に、LEEF 解析および CEF 解析は、イベント内で有効な LEEF/CEF メッセージが検出された場合にのみ開始されます。 正規表現解析は、ペイロード全体で実行されます。

このタスクについて

IBM QRadar は、以下のカスタム・プロパティー式タイプをサポートします。
  • 正規表現
  • JSON
  • LEEF
  • CEF
  • 名前と値のペア
  • ジェネリック・リスト
  • XML

さまざまな式を使用して、同じイベントでさまざまなカスタム・プロパティーをキャプチャーすることができます。 また、複数のイベント形式からカスタム・プロパティーをキャプチャーできる場合は、複数のタイプの式の組み合わせを使用して、同じカスタム・プロパティーをキャプチャーすることもできます。

手順

  1. QRadar にログインし、 「管理」 タブをクリックします。
  2. 「データ・ソース」 セクションで、 「カスタム・イベント・プロパティー」をクリックし、 「追加」をクリックします。
  3. 「プロパティー・タイプの選択」 セクションで、 「抽出ベース」を選択します。
  4. 「テスト・フィールド」に、カスタム・プロパティーのテストに使用するイベント・ペイロードを入力します。
  5. 「プロパティー定義」 セクションで、以下の手順を実行します。
    1. 既存のプロパティーに式を追加する場合は、 「既存のプロパティー」 を選択し、リストからプロパティーを選択します。
    2. 新規プロパティーを定義する場合は、 「新規プロパティー」 を選択して、プロパティーの名前を入力します。
    3. ルール、レポート、および検索にこのプロパティーを使用するには、 「ルール、転送プロファイル、および検索の索引付けで使用可能」 チェック・ボックスを選択します。
      ルールおよび索引にプロパティーを使用するには、このチェック・ボックスを選択する必要があります。 このチェック・ボックスを選択すると、レポートおよび検索の効率が向上しますが、レポートおよび検索にプロパティーを使用するためにこれを選択する必要はありません。 このチェック・ボックスを選択すると、イベントが最初に受信されたときに、イベントが保存される前にプロパティーが解析されます。 その結果、負荷がイベント収集サービスにかかります。
    4. プロパティーの 「フィールド・タイプ」 を選択します。
      カスタム・プロパティーのタイプとして IP を選択した場合、 QRadar は IPv4のみをサポートします。
    5. オプション: プロパティーの説明を入力します。
  6. 「プロパティー式の定義」 セクションで、以下の手順を実行します。
    1. 「有効」 チェック・ボックスを選択したままにします。それ以外の場合は、チェック・ボックスをクリアしてプロパティーを無効にします。
    2. 「ログ・ソース・タイプ」 リストから、プロパティーのログ・ソース・タイプを選択します。
    3. 式が特定のログ・ソースのイベントに対してのみ評価される場合は、 「ログ・ソース」 リストからログ・ソースを選択します。 すべてのログ・ソースに対して式を評価する場合は、選択しないでください。
    4. 特定のイベント名または QID を持つイベントに対してのみ式が評価される場合は、 「イベント名」 をクリックし、式を関連付ける QID を参照します。
    5. 特定の下位カテゴリーを持つイベントに対して式が評価される場合は、 「カテゴリー」を選択し、イベントの 「上位カテゴリー」 を選択してから、 「下位カテゴリー」 を選択します。
      ヒント: 選択したログ・ソース・タイプおよびログ・ソースのすべてのイベントについて式が評価される場合は、 「下位カテゴリー」 および 「上位カテゴリー」「すべて」に設定していることを確認してください。
    6. 「抽出方法」 フィールドから、プロパティーに使用する抽出方法を選択します。
      表 1. プロパティーの抽出方法
      抽出方法 有効な式の形式
      正規表現 正規表現を入力してグループ番号をキャプチャーします。  
      JSON キー・パス
      有効な JSON 式は、次の形式です。
      /"<name of top-level field>"
      ネストされた JSON フォーマットのイベントの場合、有効な JSON 式は次の形式です。
      /"<name of top-level field>"/"<name of sub-level field_1>".../"<name of sub-level field_n>"

      「user」フィールドを抽出するには、 JsonKeypath フィールドに /"user" と入力します。

      「user」サブオブジェクトから「last_name」の値だけを抽出するには、次の式を入力します。
      /"user"/"last_name"
      以下の例は、フラット JSON レコードのイベントの単純なケースを示しています。
      {"action": "login", "user": "Firstname Lastname"}
      以下の例は、ネストされたオブジェクトを持つ JSON レコードのイベントの複雑なケースを示しています。
      { "action": "login", "user": { "first_name": "Firstname", "last_name": "Lastname" } }
      LEEF キー 有効な LEEF 式は、単一のキー参照または特殊な LEEF ヘッダー・フィールド参照の形式になります。

      'usrName' プロパティを抽出するには、LEEF Key フィールドに usrName と入力します。

      これらの例で抽出できるキーは以下のとおりです。
      • devTimeFormat
      • devTime
      • usrName
      • 名前
      • authType
      • src
      ヘッダー・キー・プロパティーを抽出するには、「LEEF キー」フィールドに以下の形式でキーを入力します。
      $eventid$
      以下の式を使用して、LEEF ヘッダー値を抽出できます。
      • $leefversion$
      • $vendor$
      • $product$
      • $バージョン $
      • $eventid$
      以下の例は、LEEF V1.0 形式のイベントの単純なケースを示しています。
      LEEF:1.0|ABC Company|SystemDefender|1.13|console_login|
      devTimeFormat=yyyy-MM-dd'T'HH:mm:ss.SSSZ	
      devTime=2017-10-18T11:26:03.060+0200	
      usrName=flastname	name=Firstname Lastname	
      authType=interactivePassword	src=192.168.0.1
      以下の例は、キャレット (^) 区切り文字が使用されている LEEF V2.0 形式のイベントの単純なケースを示しており、LEEF V1.0 の例と同じキーが含まれています。
      LEEF:2.0|ABC Company|SystemDefender|1.13|console_login|^|
      devTimeFormat=yyyy-MMdd'T'HH:mm:ss.SSSZ^
      devTime=2017-10-18T11:26:03.060+0200^usrName=
      flastname^name=Firstname Lastname
      ^authType=interactivePassword^src=192.168.0.1
      CEF キー 有効な CEF 式は、単一のキー参照、または特殊な CEF ヘッダー・フィールド参照の形式になります。

      「cs1」プロパティーを抽出するには、「CEF キー」フィールドに cs1 と入力します。

      この例で抽出できるキーは以下のとおりです。

      • 開始
      • duser
      • cs1
      • cs1Label
      • cs2
      • cs2Label
      • src
      ヘッダー・キー・プロパティーを抽出するには、「CEF キー」フィールドに以下の形式でキーを入力します。
      $id$
      以下の式を使用して CEF ヘッダー値を抽出できます。
      • $cefversion$
      • $vendor$
      • $product$
      • $バージョン $
      • ¥ id¥
      • 名前
      • 厳しさ
      以下の例は、CEF 形式のイベントを示しています。
      CEF:0|ABC Company|SystemDefender|1.13|console_login|
      Console Login|1|start=Oct 18 2017 11:26:03 
      duser=flastname cs1=Firstname 
      Lastname cs1Label=Person 
      Name cs2=interactivePassword 
      cs2Label=authType src=192.168.0.1
      「名前と値のペア」キー 有効な「名前と値のペア」式は、単一のキー参照の形式になります。
      以下の例では、「名前と値のペア」形式のイベントを示します。
      Company=ABC 
      Company;Product=SystemDefender;
      Version=1.13;EventID=console_login;
      Username=jsmith;Name=John 
      Smith;authType=interactivePassword;
      「ジェネリック・リスト」キー・パス 有効な一般リスト式は、 $<number> 表記の形式になっています。 例えば、$0 はリスト内の最初のプロパティーを表し、$1 は 2 番目のプロパティーである、というようになります。
      以下の例では、ジェネリック・リストの形式のイベントを示します。
      ABC Company;1.13;console_login;jsmith;
      John Smith;interactivePassword;
      XML キー 有効な XML 式は、単一のキー参照の形式になります。

      プロパティー値を設定するための XML フィールドへのパスを入力します。 XML キー・パスの先頭には、XML オブジェクトのルートを示すスラッシュ (/) を指定し、その後ろに 1 つ以上の XML フィールド名を二重引用符で囲んで指定する必要があります。

      XML 形式のイベントを次の例に示します。
      <EPOEvent><MachineInfo>
      <MachineName>NEPTUNE</MachineName>
      <MachineName>VALUE23</MachineName><AgentGUID>
      9B-B5-A6-A8-37-B3</AgentGUID><IPAddress 
      someattrib="someattribvalue">
      192.0.2.0</IPAddress>
      <OSName>Windows 7</OSName><UserName>I 
      am a test user</UserName></MachineInfo></EPOEvent>
    7. 「プロパティー定義」 セクションで数値 「フィールド・タイプ」 を選択した場合は、 「形式」 セクションの 「抽出された数値の形式」 フィールドで数値形式を選択して、カスタム・プロパティーのロケールの数字グループ区切り文字を定義します。
    8. 「プロパティーの定義」 セクションで「日付/時刻」 「フィールド・タイプ」 を選択した場合は、 「抽出された日付/時刻の形式」 フィールドと 「ロケール」 フィールドに 「形式」 セクションの形式を入力して、カスタム・プロパティーのロケールの日時を定義します。
    9. プロパティー式の定義をテストするには、 「テスト」 をクリックします。
  7. 「保存」をクリックします。