Collecter les journaux ThreatDown EDR

Compatible avec :

Ce document explique comment configurer ThreatDown EDR (Nebula et OneView) pour envoyer des journaux à Google Security Operations à l'aide de webhooks.

ThreatDown EDR, optimisé par Malwarebytes, offre des fonctionnalités de détection et de réponse au niveau des points de terminaison, y compris la détection des menaces, la surveillance des activités suspectes et la protection des points de terminaison. La plate-forme Nebula sert les environnements à locataire unique, tandis que OneView est la console de gestion multilocataire pour les MSP. Les deux plates-formes sont compatibles avec une intégration native à Google Security Operations, qui exporte les données de détection et les données d'activité suspecte en tant qu'événements UDM (Unified Data Model) à l'aide du type de journal MALWAREBYTES_EDR.

Avant de commencer

Assurez-vous de remplir les conditions suivantes :

  • Une instance Google SecOps
  • ThreatDown EDR (Nebula ou OneView) est compatible avec les Webhooks pour l'envoi des journaux.
  • Accès à la Google Cloud Console (pour créer une clé API)
  • Pour Nebula : accès super-administrateur dans la console Nebula et compte Nebula actif avec un abonnement actif à Endpoint Detection and Response
  • Pour OneView : accès administrateur général dans la console OneView et un site avec un abonnement actif pour Endpoint Detection and Response
  • Accès administrateur au projet Google Cloud pour générer une clé API Google Cloud Platform
  • Accès administrateur à Google Chronicle SIEM

Créer un flux de webhook dans Google SecOps

Créer le flux

  1. Accédez à Paramètres SIEM> Flux.
  2. Cliquez sur Ajouter un flux.
  3. Sur la page suivante, cliquez sur Configurer un seul flux.
  4. Dans le champ Nom du flux, saisissez un nom pour le flux (par exemple, Malwarebytes).
  5. Sélectionnez Webhook comme Type de source.
  6. Sélectionnez Malwarebytes EDR comme Type de journal.
  7. Cliquez sur Suivant.
  8. Spécifiez les valeurs des paramètres d'entrée suivants :
    • Délimiteur de fractionnement (facultatif) : laissez ce champ vide. Chaque requête de webhook envoyée par ThreatDown contient des données d'événement structurées.
    • Espace de noms de l'élément : espace de noms de l'élément
    • Libellés d'ingestion : libellé à appliquer aux événements de ce flux
  9. Cliquez sur Suivant.
  10. Vérifiez la configuration de votre nouveau flux sur l'écran Finaliser, puis cliquez sur Envoyer.

Obtenir l'URL du point de terminaison du flux

  1. Accédez à l'onglet Détails du flux.
  2. Dans la section Endpoint Information (Informations sur le point de terminaison), copiez l'URL du point de terminaison du flux.
  3. Le format d'URL est le suivant :

    https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate
    

    ou

    https://<REGION>-malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate
    
  4. Enregistrez cette URL pour les étapes suivantes.

Générer et enregistrer une clé secrète

Après avoir créé le flux, vous devez générer une clé secrète pour l'authentification :

  1. Accédez à l'onglet Clé secrète du flux.
  2. Cliquez sur Générer une clé secrète.
  3. Une boîte de dialogue affiche la clé secrète.
  4. Copiez et enregistrez la clé secrète de manière sécurisée.

    Important : La clé secrète ne s'affiche qu'une seule fois et ne peut pas être récupérée ultérieurement. Si vous la perdez, vous devrez en générer une nouvelle.

  5. Cliquez sur OK.

Créer une clé API Google Cloud

L'intégration de ThreatDown à Google SecOps nécessite une clé API Google Cloud Platform (GCP).

Créer la clé API

  1. Accédez à la page "Identifiants" de la console Google Cloud.
  2. Sélectionnez votre projet (celui associé à votre instance Chronicle).
  3. Cliquez sur Créer des identifiants> Clé API.
  4. Une clé API est créée et affichée dans une boîte de dialogue.
  5. Copiez la clé API et stockez-la de manière sécurisée.
  6. Dans le pop-up, cliquez sur Modifier la clé API.

Restreindre la clé API

  1. Sur la page des paramètres de la clé API :
    • Nom : saisissez un nom descriptif (par exemple, Chronicle Webhook API Key).
  2. Sélectionnez Restreindre la clé.
  3. Dans le menu déroulant, sélectionnez API Chronicle.

  4. Cliquez sur Enregistrer.

Configurer le webhook ThreatDown EDR

ThreatDown fournit une intégration Google Chronicle SIEM native sur la page Intégrer des consoles Nebula et OneView. Choisissez la section ci-dessous qui correspond à votre plate-forme.

Option A : Configurer Nebula

  1. Connectez-vous à la console ThreatDown Nebula sur cloud.malwarebytes.com avec des identifiants de super-administrateur.
  2. Accédez à la page Intégrer dans le menu de navigation de gauche.
  3. Recherchez Google Chronicle SIEM, puis cliquez sur Configurer.
  4. Fournissez les informations de configuration suivantes :
    • URL de webhook : collez l'URL copiée depuis le champ Informations sur le point de terminaison de la page d'informations "Détails du flux Google SecOps".
    • Secret du webhook : collez la clé secrète générée dans l'onglet "Clé secrète du flux Google SecOps".
    • Clé API GCP : collez la clé API obtenue auprès de Google Cloud.
  5. Cliquez sur Enregistrer.

Une fois l'enregistrement effectué, Nebula commence à exporter les journaux de détection et d'activité suspecte directement vers Google SecOps.

Option B : Configurer OneView

  1. Connectez-vous à la console ThreatDown OneView sur cloud.malwarebytes.com à l'aide d'identifiants d'administrateur général.
  2. Accédez à la page Intégrer dans le menu de navigation de gauche.
  3. Recherchez Google Chronicle SIEM, puis cliquez sur Configurer.
  4. Activez l'option Activer la configuration.
  5. Fournissez les informations de configuration suivantes :
    • URL de webhook : collez l'URL copiée depuis le champ Informations sur le point de terminaison de la page d'informations "Détails du flux Google SecOps".
    • Secret du webhook : collez la clé secrète générée dans l'onglet "Clé secrète du flux Google SecOps".
    • Clé API GCP : collez la clé API obtenue auprès de Google Cloud.
    • Sélection du site : sélectionnez le ou les sites à partir desquels ingérer les données.
  6. Cliquez sur Enregistrer.

Une fois l'enregistrement effectué, OneView commence à exporter les journaux de détection et d'activité suspecte des sites sélectionnés directement vers Google SecOps.

Vérifier l'ingestion des journaux

Après avoir configuré l'intégration, vérifiez que les journaux ThreatDown EDR sont ingérés dans Google SecOps :

  1. Dans Google SecOps, accédez à Investigation > Recherche SIEM.
  2. Saisissez la requête de recherche UDM suivante :

    metadata.vendor_name = "Malwarebytes" and metadata.log_type = "MALWAREBYTES_EDR"
    
  3. Sélectionnez la période souhaitée.

  4. Cliquez sur Exécuter la recherche.

  5. Cliquez sur l'onglet Événements. Les données ingérées à partir de ThreatDown EDR sont affichées à l'aide d'un modèle de données unifié (UDM).

Limites et bonnes pratiques concernant les webhooks

Limites de requêtes

Limite Valeur
Taille maximale des requêtes 4 Mo
RPS (requêtes par seconde) max. 15 000
Délai avant expiration de la requête 30 seconds
Comportement de nouvelle tentative Automatique avec intervalle exponentiel entre les tentatives

Vous avez encore besoin d'aide ?

Table de mappage UDM

Champ de journal Mappage UDM Logique
payload.payload.sa_details.data.list.0.details.0.detected_by.0.description metadata.description Valeur copiée directement
has_principal metadata.event_type Défini sur "GENERIC_EVENT" initialement, puis sur "SCAN_FILE" si has_principal et has_target_file, sur "STATUS_UPDATE" si has_principal, sur "USER_UNCATEGORIZED" si has_user, sinon sur "GENERIC_EVENT"
has_user metadata.event_type
has_target_file metadata.event_type
type metadata.product_event_type Valeur copiée directement
id metadata.product_log_id Valeur copiée directement
machine.id principal.asset.asset_id Concaténation de "MACHINE:" et de machine.id
machine.name principal.asset.hostname Valeur copiée directement
payload.payload.group_name principal.group.group_display_name Valeur copiée directement
account.default_group_id principal.group.product_object_id Valeur copiée directement
machine.name principal.hostname Valeur copiée directement
account.id principal.user.product_object_id Valeur copiée directement
account.name principal.user.user_display_name Valeur copiée directement
account.owner_user_id principal.user.userid Valeur copiée directement
payload.payload.category security_result.category_details Valeur copiée directement
payload.payload.sa_details.data.mitre_attack_mapping.hosts file change.0.tactic.name security_result.detection_fields Chaque ensemble est étiqueté avec une clé, puis fusionné.
payload.payload.sa_details.data.mitre_attack_mapping.hosts file change.0.tactic.description security_result.detection_fields
payload.payload.sa_details.data.mitre_attack_mapping.hosts file change.0.tactic.hyperlink security_result.detection_fields
payload.payload.sa_details.data.mitre_attack_mapping.hosts file change.0.tactic.tag security_result.detection_fields
payload.payload.policy_id security_result.detection_fields
payload.payload.policy_name security_result.detection_fields
payload.id security_result.detection_fields
payload.payload.sa_details.data.list.0.details.0.detected_by.0.tag security_result.summary Valeur copiée directement
payload.payload.threat_name security_result.threat_name Valeur copiée directement
payload.payload.sa_details.data.list.0.user target.administrative_domain Extrait à l'aide d'un modèle grok pour obtenir le domaine
payload.payload.path target.file.full_path Valeur copiée directement
payload.payload.sa_process_graph.data.children.0.children.0.node_info.process_path target.process.file.full_path Valeur copiée directement
payload.payload.sa_process_graph.data.children.0.node_info.process_path target.process.parent_process.file.full_path Valeur copiée directement
payload.payload.sa_process_graph.data.children.0.node_info.process_id target.process.parent_process.pid Valeur copiée directement
payload.payload.sa_process_graph.data.children.0.children.0.node_info.process_id target.process.pid Valeur copiée directement
payload.payload.sa_details.data.list.0.user target.user.userid Extrait à l'aide du modèle grok pour obtenir tar_user
metadata.product_name metadata.product_name Définie sur "Malwarebytes EDR"
metadata.vendor_name metadata.vendor_name Défini sur "Malwarebytes"

Journal des modifications

Afficher le journal des modifications pour ce parseur

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