Benutzerdefinierte Eigenschaften mithilfe benutzerdefinierter Eigenschaftsausdrücke definieren

Definieren Sie mithilfe eines benutzerdefinierten Eigenschaftsausdrucks eine benutzerdefinierte Eigenschaft für Ereignisnutzdaten. Da das JSON-Parsing beginnt, sobald ein gültiges JSON-Objekt erkannt wird, muss nicht das gesamte Ereignis eine JSON-Formatierung aufweisen. Entsprechend beginnt das LEEF- und CEF-Parsing nur, wenn innerhalb des Ereignisses eine gültige LEEF-/CEF-Nachricht erkannt wird. Regex-Parsing erfolgt für die gesamten Nutzdaten.

Informationen zu dieser Task

IBM QRadar unterstützt die folgenden Ausdruckstypen für angepasste Eigenschaften:
  • Regulärer Ausdruck
  • JSON
  • LEEF
  • CEF
  • Name/Wert-Paar
  • Generische Liste
  • XML

Sie können unterschiedliche Ausdrücke verwenden, um verschiedene benutzerdefinierte Eigenschaften für dasselbe Ereignis zu erfassen. Sie können auch verschiedene Ausdruckstypen miteinander kombinieren, um dieselbe benutzerdefinierte Eigenschaft zu erfassen, falls diese Eigenschaft aus mehreren Ereignisformaten erfasst werden kann.

Vorgehensweise

  1. Melden Sie sich bei QRadar an und klicken Sie auf die Registerkarte Admin .
  2. Klicken Sie im Abschnitt Datenquellen auf Angepasste Ereigniseigenschaftenund anschließend auf Hinzufügen.
  3. Wählen Sie im Abschnitt Auswahl des Eigenschaftstyps die Option Extraktionsbasiertaus.
  4. Geben Sie im Testfelddie Ereignisnutzdaten ein, die Sie zum Testen Ihrer angepassten Eigenschaft verwenden möchten.
  5. Führen Sie im Abschnitt Eigenschaftsdefinition die folgenden Schritte aus:
    1. Wenn Sie einen Ausdruck zu einer vorhandenen Eigenschaft hinzufügen, wählen Sie Vorhandene Eigenschaft und anschließend eine Eigenschaft in der Liste aus.
    2. Wenn Sie eine neue Eigenschaft definieren, wählen Sie Neue Eigenschaft aus und geben Sie den Namen der Eigenschaft ein.
    3. Wenn Sie die Eigenschaft für Regeln, Berichte und Suchen verwenden möchten, wählen Sie das Kontrollkästchen Für die Verwendung in Regeln, Weiterleitungsprofile und Suchindexierung aktivieren aus.
      Sie müssen dieses Kontrollkästchen aktivieren, um die Eigenschaft für Regeln und Indizes zu verwenden. Durch Aktivierung des Kontrollkästchens wird die Effizienz von Berichten und Suchen erhöht, aber Sie müssen es nicht aktivieren, um die Eigenschaft für Berichte und Suchen zu verwenden. Wenn Sie das Kontrollkästchen aktivieren, werden Eigenschaften analysiert, sobald das Ereignis empfangen und bevor es gespeichert wird. Dies hat zur Folge, dass die Arbeitslast auf den Ereigniserfassungsservice übertragen wird.
    4. Wählen Sie einen Feldtyp für die Eigenschaft.
      Wenn Sie IP als Typ für Ihre angepasste Eigenschaft auswählen, unterstützt QRadar nur IPv4.
    5. Optional: Geben Sie eine Beschreibung für die Eigenschaft ein .
  6. Führen Sie im Abschnitt Definition des Eigenschaftsausdrucks die folgenden Schritte aus:
    1. Lassen Sie das Kontrollkästchen Aktiviert ausgewählt. Inaktivieren Sie andernfalls das Kontrollkästchen, um die Eigenschaft zu inaktivieren.
    2. Wählen Sie in der Liste Protokollquellentyp einen Protokollquellentyp für die Eigenschaft aus.
    3. Wenn der Ausdruck nur für Ereignisse einer bestimmten Protokollquelle ausgewertet wird, wählen Sie die Protokollquelle in der Liste Protokollquelle aus. Wenn er für alle Protokollquellen ausgewertet werden soll, treffen Sie keine Auswahl.
    4. Wenn der Ausdruck nur für Ereignisse mit einem bestimmten Ereignisnamen oder einer bestimmten QID ausgewertet wird, klicken Sie auf Ereignisname und suchen Sie nach einer QID, um den Ausdruck zuzuordnen.
    5. Wenn der Ausdruck für ein Ereignis mit einer bestimmten untergeordneten Kategorie ausgewertet wird, wählen Sie Kategorieund dann die übergeordnete Kategorie und dann Untergeordnete Kategorie für das Ereignis aus.
      Tipp Wenn der Ausdruck für alle Ereignisse des ausgewählten Protokollquellentyps und der ausgewählten Protokollquelle ausgewertet wird, stellen Sie sicher, dass Sie Low Level Category und High Level Category auf Anygesetzt haben.
    6. Wählen Sie im Feld Extraktion mit die Extraktionsmethode für die Eigenschaft aus.
      Tabelle 1. Methoden zum Extrahieren von Eigenschaften
      Extraktionsmethode Gültige Form des Ausdrucks Beispiel
      Regulärer Ausdruck Geben Sie den regulären Ausdruck und die Erfassungsgruppennummer ein.  
      JSON-Schlüsselpfad
      Ein gültiger JSON-Ausdruck hat folgendes Format:
      /"<name of top-level field>"
      Für ein Ereignis in einem verschachtelten JSON-Format hat ein gültiger JSON-Ausdruck folgendes Format:
      /"<name of top-level field>"/"<name of sub-level field_1>".../"<name of sub-level field_n>"

      Um das Feld 'user' zu extrahieren, geben Sie /"user" im Feld JSON-Schlüsselpfad ein.

      Um nur den Wert 'last_name' aus dem Unterobjekt 'user' zu extrahieren, geben Sie folgenden Ausdruck ein:
      /"user"/"last_name"
      Beispiel für einen einfachen Fall eines Ereignisses für einen unstrukturierten JSON-Datensatz:
      {"action": "login", "user": "Firstname Lastname"}
      Beispiel für einen komplexen Fall eines Ereignisses für einen JSON-Datensatz mit verschachtelten Objekten:
      { "action": "login", "user": { "first_name": "Firstname", "last_name": "Lastname" } }
      LEEF-Schlüssel Gültige LEEF-Ausdrücke können in zwei verschiedenen Formen angegeben werden: entweder als Einzelschlüsselverweis oder als spezielle LEEF-Headerfeldreferenz.

      Um die Eigenschaft 'usrName' zu extrahieren, geben Sie usrName im Feld LEEF-Schlüssel ein.

      In beiden Beispielen können folgende mögliche Schlüssel extrahiert werden:
      • devTimeFormat
      • devTime
      • usrName
      • Name
      • authType
      • Quelle
      Um eine Headerschlüsseleigenschaft zu extrahieren, geben Sie im Feld LEEF Key (LEEF-Schlüssel) den Schlüssel in folgendem Format ein:
      $eventid$
      Die LEEF-Headerwerte können mithilfe folgender Ausdrücke extrahiert werden:
      • $leefversion$
      • $vendor$
      • $product$
      • $Version$
      • $eventid$
      Beispiel für einen einfachen Fall eines Ereignisses, das in LEEF V1.0 formatiert ist:
      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
      Beispiel für einen einfachen Fall eines Ereignisses, das in LEEF V2.0 mit dem Winkelzeichen (^) als Trennzeichen formatiert ist und dieselben Schlüssel enthält wie das Beispiel für 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-Schlüssel Gültige CEF-Ausdrücke können in zwei verschiedenen Formen angegeben werden: entweder als Einzelschlüsselverweis oder als spezielle CEF-Headerfeldreferenz.

      Um die Eigenschaft 'cs1' zu extrahieren, geben Sie cs1 im Feld CEF-Schlüssel ein.

      In diesem Beispiel können folgende mögliche Schlüssel extrahiert werden:

      • starten
      • duser
      • cs1
      • cs1Label
      • cs2
      • cs2Label
      • Quelle
      Um eine Headerschlüsseleigenschaft zu extrahieren, geben Sie im Feld CEF Key (CEF-Schlüssel) den Schlüssel in folgendem Format ein:
      $id$
      Die CEF-Headerwerte können mithilfe folgender Ausdrücke extrahiert werden:
      • $cefversion$
      • $vendor$
      • $product$
      • $Version$
      • $id$
      • $Name$
      • $Wertigkeit $
      Beispiel für ein Ereignis im CEF-Format:
      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
      Name/Wert-Paar-Schlüssel Gültige Name/Wert-Paar-Ausdrücke werden in der Form eines Einzelschlüsselverweises angegeben.
      Beispiel für ein Ereignis im Name/Wert-Paar-Format:
      Company=ABC 
      Company;Product=SystemDefender;
      Version=1.13;EventID=console_login;
      Username=jsmith;Name=John 
      Smith;authType=interactivePassword;
      Generische Liste als Schlüsselpfad Gültige Ausdrücke für generische Liste haben das Format einer $<number>-Notation. Dabei stellt beispielsweise "$0" die erste Eigenschaft in der Liste, "$1" die zweite Eigenschaft usw. dar.
      Beispiel für ein Ereignis im Format einer generischen Liste:
      ABC Company;1.13;console_login;jsmith;
      John Smith;interactivePassword;
      XML-Schlüssel Gültige XML-Ausdrücke werden in der Form eines Einzelschlüsselverweises angegeben.

      Geben Sie den Pfad zu dem XML-Feld an, dessen Wert Sie als Eigenschaftswert verwenden möchten. Ein XML-Schlüsselpfad muss mit einem Schrägstrich (/) beginnen, um das Stammverzeichnis des XML-Objekts anzugeben, gefolgt von mindestens einem XML-Feldnamen in Anführungszeichen.

      Beispiel für ein Ereignis im XML-Format:
      <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. Wenn Sie im Abschnitt Eigenschaftsdefinition den numerischen Feldtyp ausgewählt haben, wählen Sie im Abschnitt Format im Feld Extrahiertes Zahlenformat ein Zahlenformat aus, um Zifferngruppentrennzeichen für die Ländereinstellung der angepassten Eigenschaft zu definieren.
    8. Wenn Sie den Feldtyp für Datum/Uhrzeit im Abschnitt Eigenschaftsdefinition ausgewählt haben, müssen Sie in den Feldern Extrahiertes Datums-/Uhrzeitformat und Ländereinstellung im Abschnitt Format ein Format eingeben, um das Datum und die Zeit für die Ländereinstellung der angepassten Eigenschaft festzulegen.
    9. Klicken Sie auf Testen , um die Definition des Eigenschaftsausdrucks zu testen.
  7. Klicken Sie auf Speichern.