Comparateur JSON (json-matcher)

Une entité de comparateur JSON (json-matcher) est une zone qui est analysée et associée au modèle et au groupe appropriés pour l'analyse syntaxique. Cette entité est nouvelle dans IBM QRadar V7.3.3.

Si plusieurs comparateurs sont spécifiés pour le même nom de zone, ils sont exécutés dans l'ordre qui est présenté jusqu'à ce qu'une analyse syntaxique réussie soit trouvée.

Tableau 1. Description des paramètres de comparateur JSON
Paramètre Descriptif

field (obligatoire)

Zone à laquelle vous souhaitez appliquer le modèle, par exemple, EventName ou SourceIp. Vous pouvez utiliser n'importe quel nom de zone répertorié dans la table Liste des noms de zone de comparateur valides .

pattern-id (obligatoire)

Motif que vous souhaitez utiliser lorsque le champ est analysé à partir du contenu. Cette valeur doit correspondre (casse incluse) au paramètre d'ID d'un modèle déjà défini. (Tableau 1)

order (obligatoire)

Ordre dans lequel vous souhaitez que ce motif fasse des tentatives parmi les comparateurs qui sont affectés à un même champ. Si deux comparateurs sont affectés à la zone EventName, celui dont l'ordre est le plus bas est essayé en premier.

Les comparateurs d'expressions régulières normales et JSON sont regroupés en une seule liste. Les différents types de comparateur sont essayés en fonction de leurs ordres, et le processus s'arrête lorsque l'un des comparateurs est capable d'analyser les données du contenu utile.

enable-substitutions (facultatif)

Booléen

Lorsque vous sélectionnez true, une zone ne peut pas être correctement représentée avec une capture de groupe linéaire. Vous pouvez combiner plusieurs groupes avec le texte supplémentaire pour former une valeur.

Chaque fois que le modèle se présente sous la forme d'un chemin multi-clés, définissez la valeur enable-subtitutions sur '= true' pour que chaque chemin de clé dans le modèle et l'expression soit remplacé par la valeur trouvée par le contenu. Par exemple, si le contenu JSON contient les zones first_name et last_name, mais pas de zone full_name, vous pouvez définir une expression contenant plusieurs chemins de clés, tels que {/"last_name"}, {/"first_name"}. La valeur capturée pour cette expression est smith, john.

La valeur par défaut est false.

ext-data (facultatif)

Un paramètre ext-data qui définit les informations de champ supplémentaire ou le formatage qu'un champ de comparateur peut fournir dans l'extension.

La seule zone qui utilise actuellement ce paramètre est DeviceTime.

Par exemple, vous pourriez avoir un périphérique qui envoie des événements en utilisant un horodatage unique, mais vous souhaitez que l'événement soit reformaté à une heure du périphérique standard. Utilisez le paramètre ext-data inclus avec le champ DeviceTime pour reformater la date et l'heure de l'événement. Pour plus d'informations, voir Liste des noms de zones de comparateur JSON valides.

Le tableau suivant répertorie les noms de zone Comparateur JSON valides.

Tableau 2. Liste des noms de zone JSON matcher valides
Nom de zone Descriptif

EventName (obligatoire)

Nom de l'événement à extraire à partir du QID pour identifier l'événement.

Remarque: Ce paramètre n'apparaît pas en tant que zone dans l'onglet Activité du journal .

EventCategory

Une catégorie d'événement pour tout événement avec une catégorie non gérée par une entité event-match-single ou une entité event-match-multiple.

Combiné à EventName, EventCategory est utilisé pour rechercher l'événement dans le QID. Les zones utilisées pour les recherches QIDmap requièrent un indicateur de substitution qui doit être défini lorsque les unités sont déjà connues du système QRadar, par exemple :
<event-match-single event-name="Successfully logged in" force-qidmap-lookup-on-fixup="true" device-event-category="CiscoNAC" severity="4" send-identity="OverrideAndNeverSend" />
force-qidmap-lookup-on-fixup="true" est la substitution de l'indicateur.
Remarque: Ce paramètre n'apparaît pas en tant que zone dans l'onglet Activité du journal .

SourceIp

Adresse IP source pour le message.

SourcePort

Port source pour le message.

SourceIpPreNAT

Adresse IP source pour le message avant la traduction d'adresses réseau (NAT).

SourceIpPostNAT

Adresse IP source pour le message après la NAT.

SourceMAC

Adresse MAC source pour le message.

SourcePortPreNAT

Port source pour le message avant la NAT.

SourcePortPostNAT

Port source pour le message après la NAT.

DestinationIp

Adresse IP de destination pour le message.

DestinationPort

Port destination pour le message.

DestinationIpPreNAT

Adresse IP de destination pour le message avant la NAT.

DestinationIpPostNAT

Adresse IP de destination pour le message après la NAT.

DestinationPortPreNAT

Port de destination pour le message avant la NAT.

DestinationPortPostNAT

Port de destination pour le message après la NAT.

DestinationMAC

Adresse MAC de destination pour le message.

DeviceTime

Temps et format utilisés par le périphérique. Cette date et l'heure représentent le moment où l'événement a été envoyé, selon le dispositif. Ce paramètre ne représente pas le moment où l'événement est arrivé. Le champ DeviceTime prend en charge la capacité d'utiliser une date et une heure personnalisées pour l'événement en utilisant l'attribut de comparateur ext-data.

La liste suivante contient des exemples de formats de date et heure que vous pouvez utiliser dans le champ DeviceTime :

  • ext-data="dd/MMM/YYYY:hh:mm:ss"

    11/Mar/2015:05:26:00

  • ext-data="MMM dd YYYY / hh:mm:ss"

    Mar 11 2015 / 05:26:00

  • ext-data="hh:mm:ss:dd/MMM/YYYY"

    05:26:00:11/Mar/2015

Pour plus d'informations sur les valeurs possibles pour le format de données et d'horodatage, voir la page Web Java SimpleDateFormat (https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html).

DeviceTime est la seule zone d'événement qui utilise le paramètre ext-data.

Protocole

Protocole du message, par exemple, TCP, UDP ou ICMP.

UserName

Nom d'utilisateur du message.

HostName

Nom d'hôte du message. Typiquement, ce champ est associé à des événements d'identité.

GroupName

Nom de groupe du message. Typiquement, ce champ est associé à des événements d'identité.

IdentityIp

Adresse IP d'identité du message.

IdentityMac

Adresse MAC de l'identité du message.

IdentityIpv6

Adresse IP de l'identité IPv6 du message.

NetBIOSName

Nom NetBIOS du message. Typiquement, ce champ est associé à des événements d'identité.

ExtraIdentityData

Toutes les données spécifiques à l'utilisateur pour le message. Typiquement, ce champ est associé à des événements d'identité.

SourceIpv6

Adresse IP source IPv6 pour le message.

DestinationIpv6

Adresse IP de destination IPv6 pour le message.