Mapper et modéliser les entités

Compatible avec :

Les entités sont des objets représentant des points d'intérêt extraits des alertes, tels que les indicateurs de compromission (IoC) et les artefacts. Elles aident les analystes de sécurité en :

  • L'historique est suivi automatiquement.
  • Regrouper les alertes sans intervention humaine.
  • Rechercher les activités malveillantes en fonction des relations entre les entités.
  • Facilite la lecture des cas et la création de playbooks.

Google Security Operations utilise un système automatisé (ontologie) pour extraire les principaux objets d'intérêt des alertes brutes afin de créer des entités. Chaque entité est représentée par un objet qui peut suivre son propre historique pour référence ultérieure.

Configurer l'ontologie des entités

Pour configurer l'ontologie, vous devez mapper et modéliser vos données. Cela implique de sélectionner une représentation visuelle pour les alertes et de définir les entités à extraire. Google SecOps fournit des règles d'ontologie préconfigurées pour les produits SIEM les plus populaires.

Le meilleur moment pour personnaliser l'ontologie est une fois qu'un connecteur extrait des données dans Google SecOps. Le processus comporte deux étapes principales :

  1. Modélisation : choisissez la représentation visuelle (modèle/famille visuelle) de vos données.
  2. Mappage : mappez les champs pour prendre en charge le modèle sélectionné et extraire les entités.

Entités acceptées

Les entités suivantes sont acceptées :

Type d'entité Description Format attendu Exemples
Adresse Adresse IPv4. Dépend du type spécifique d'adresse stockée. Adresses IP, par exemple 192.168.1.1
Application Une application logicielle. Chaîne de texte. nmap, Microsoft Word.
Cluster Groupe de ressources de calcul. Chaîne de texte. Nom du cluster Kubernetes, nom du cluster ou ID du cluster.
Conteneur Une instance de conteneur. Chaîne de texte. ID ou nom du conteneur Docker.
Carte de crédit Un numéro de carte de crédit. Chaîne masquée ou tokenisée. Les données doivent être masquées ou tokenisées pour éviter de stocker des données PCI sensibles.
CVE Identifiant des failles et des risques courants. CVE-YYYY-NNNNN CVE-2023-12345
Base de données Instance ou système de base de données. Chaîne de texte. Nom de la base de données ou identifiant de la connexion.
Déploiement Un déploiement logiciel. Chaîne de texte. Identifiant de déploiement.
URL de destination Uniform Resource Locator. Chaîne d'URL standard. https://example.com/path
Domaine Nom de domaine du réseau Chaîne de domaine standard. example.com
Objet de l'e-mail Objet d'un e-mail. Chaîne de texte. Objet d'un e-mail.
Hachage de fichier Hachage cryptographique d'un fichier. Chaîne hexadécimale. Hachage MD5, SHA-1 ou SHA256.
Nom de fichier Nom d'un fichier. Chaîne de texte. malware.exe
Entité générique Type d'entité flexible pour les données qui n'entrent dans aucune autre catégorie. Cela dépend des données stockées. N/A
Nom d'hôte Libellé attribué à un appareil sur un réseau. Chaîne de nom d'hôte standard. workstation-01, server.example.com
Ensemble d'adresses IP Collection ou groupe d'adresses IP. Non défini explicitement (par exemple, chaîne séparée par une virgule, tableau JSON, référence à une liste). Plages, notations CIDR ou listes.
Pour en savoir plus, consultez Créer une liste d'adresses IP approuvées.
Adresse MAC Adresse MAC (Media Access Control). Six groupes de deux chiffres hexadécimaux, séparés par des traits d'union ou des deux-points. 00-1B-44-11-3A-B7, 00:1B:44:11:3A:B7
Numéro de téléphone Un numéro de téléphone Variable (E.164 est la norme). +18005550100
POD Groupe d'un ou plusieurs conteneurs dans Kubernetes, souvent avec un stockage/réseau partagé. Chaîne de nom. Nom du POD Kubernetes.
Processus Instance d'un programme informatique en cours d'exécution. ID (PID) ou nom du processus. 1234, chrome.exe
Service Service logiciel s'exécutant sur un système. Chaîne du nom du service. sshd, apache2
Acteur malveillant Une personne ou un groupe qui représente une menace. Chaîne de nom ou de code. APT28, FIN7
Campagne de menaces Série d'activités de menace associées. Nom ou code de la campagne. Nom ou code de la campagne.
Signature de menace Schéma ou indicateur d'une menace connue. ID de règle ou nom de signature. ID de règle court, nom de la règle YARA-L.
USB Un périphérique Universal Serial Bus. Nom de l'appareil, numéro de série ou autres attributs. Identifiant de l'appareil USB.
Nom d'utilisateur Identifiant d'un compte utilisateur. Noms d'utilisateur ou adresses e-mail simples. jdoe, jdoe@example.com

Cas d'utilisation : mapper et modéliser de nouvelles données d'e-mails ingérés

Ce cas d'utilisation montre comment mapper et modéliser de nouvelles données d'un e-mail ingéré :

  1. Accédez à Hub de contenu > Cas d'utilisation.
  2. Exécutez le scénario de test Zero to Hero. Pour savoir comment procéder, consultez Exécuter des cas d'utilisation.
  3. Dans l'onglet Demandes, sélectionnez la demande Mail dans la file d'attente des demandes, puis sélectionnez l'onglet Événements.
  4. À côté de l'alerte, cliquez sur Paramètres Configuration des événements pour ouvrir la page Configuration des événements.
  5. Dans la liste hiérarchique, cliquez sur Mail. Cela garantit que votre configuration fonctionnera automatiquement pour chaque élément de données provenant de ce produit (boîte de réception).
  6. Attribuez la famille visuelle qui représente le mieux les données. Dans ce cas d'utilisation, vous pouvez ignorer cette étape, car MailRelayOrTAP a déjà été sélectionné.
  7. Passez à Mappage et mappez les champs d'entité suivants. Double-cliquez sur chaque entité, puis sélectionnez le champ de données brutes correspondant dans le champ extrait. Vous pouvez fournir d'autres champs à partir desquels extraire les informations :
    • SourceUserName
    • DestinationUserName
    • DestinationURL
    • EmailSubject
  8. Cliquez sur Propriétés brutes de l'événement pour afficher les champs d'e-mail d'origine.

Extraire des expressions régulières

Google SecOps n'est pas compatible avec les groupes d'expressions régulières. Pour extraire du texte du champ d'événement à l'aide de modèles d'expressions régulières, utilisez lookahead et lookbehind dans la logique de la fonction d'extraction.

Dans l'exemple suivant, le champ d'événement affiche un gros bloc de texte :
Suspicious activity on A16_WWJ - Potential Account Takeover (33120)

Pour extraire uniquement le texte Suspicious activity on A16_WWJ, procédez comme suit :

  1. Saisissez l'expression régulière suivante dans le champ de valeur Fonction d'extraction :
    Suspicious activity on A16_WWJ(?=.*)
  2. Dans le champ Fonction de transformation, sélectionnez To_String.

Pour extraire uniquement le texte après Suspicious activity on A16_WWJ :

  1. Saisissez l'expression régulière suivante dans le champ de valeur Fonction d'extraction :
    (?<=Suspicious activity on A16_WWJ).*
  2. Dans le champ Fonction de transformation, sélectionnez To_String.

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.