Intégrer Mandiant Digital Threat Monitoring à Google SecOps

Ce document explique comment intégrer Mandiant Digital Threat Monitoring à Google Security Operations (Google SecOps).

Version de l'intégration : 4.0

Paramètres d'intégration

L'intégration de Mandiant Digital Threat Monitoring nécessite les paramètres suivants :

Paramètres Description
API Root Obligatoire

Racine de l'API de l'instance Mandiant.

La valeur par défaut est https://api.intelligence.mandiant.com.

Pour vous authentifier avec les identifiants Google Threat Intelligence, saisissez la valeur suivante : https://www.virustotal.com.

Client ID Optional

ID client du compte Mandiant Digital Threat Monitoring.

Client Secret Optional

Code secret du compte Mandiant Digital Threat Monitoring.

GTI API Key Optional

Clé API de Google Threat Intelligence.

Pour vous authentifier à l'aide de Google Threat Intelligence, définissez la valeur du paramètre API Root sur https://www.virustotal.com.

L'authentification à l'aide de la clé API Google Threat Intelligence est prioritaire par rapport aux autres méthodes d'authentification.

Verify SSL Obligatoire

Si cette option est sélectionnée, l'intégration vérifie que le certificat SSL pour la connexion au serveur Mandiant est valide.

Cette option est sélectionnée par défaut.

Pour obtenir des instructions sur la configuration d'une intégration dans Google SecOps, consultez Configurer des intégrations.

Vous pourrez apporter des modifications ultérieurement si nécessaire. Une fois que vous avez configuré une instance d'intégration, vous pouvez l'utiliser dans des playbooks. Pour en savoir plus sur la configuration et la prise en charge de plusieurs instances, consultez Prise en charge de plusieurs instances.

Actions

L'intégration de Mandiant Digital Threat Monitoring inclut les actions suivantes :

Ping

Utilisez l'action Ping pour tester la connectivité au serveur Mandiant Digital Threat Monitoring.

Entrées d'action

Aucun

Sorties d'action

L'action Ping fournit les résultats suivants :

Type de sortie de l'action Disponibilité
Pièce jointe au mur des cas Non disponible
Lien vers le mur des cas Non disponible
Table du mur des cas Non disponible
Table d'enrichissement Non disponible
Résultat JSON Non disponible
Messages de sortie Disponible
Résultat du script Disponible
Messages de sortie

L'action Ping peut renvoyer les messages de résultat suivants :

Message affiché Description du message
Successfully connected to the Mandiant DTM server with the provided connection parameters! Action effectuée.
Failed to connect to the Mandiant DTM server! Error is: ERROR_REASON

Échec de l'action.

Vérifiez la connexion au serveur, les paramètres d'entrée ou les identifiants.

Résultat du script

Le tableau suivant répertorie la valeur du résultat du script lorsque vous utilisez l'action Ping :

Nom du résultat du script Valeur
is_success True ou False

Mettre à jour l'alerte

Utilisez l'action Mettre à jour l'alerte pour mettre à jour une alerte dans Mandiant Digital Threat Monitoring.

Entrées d'action

L'action Mettre à jour l'alerte nécessite les paramètres suivants :

Paramètres Description
Alert ID Obligatoire

ID de l'alerte à modifier.

Status Optional

État de l'alerte.

Les valeurs possibles sont les suivantes :

  • New
  • Read
  • Resolved
  • Escalated
  • In Progress
  • No Action Required
  • Duplicate
  • Not Relevant
  • Tracked Externally

Sorties d'action

L'action Alerte de mise à jour fournit les résultats suivants :

Type de sortie de l'action Disponibilité
Pièce jointe au mur des cas Non disponible
Lien vers le mur des cas Non disponible
Table du mur des cas Non disponible
Table d'enrichissement Non disponible
Résultat JSON Disponible
Messages de sortie Disponible
Résultat du script Disponible
Résultat JSON

L'exemple suivant montre le résultat JSON reçu lors de l'utilisation de l'action Mettre à jour l'alerte :

{
   "id": "ID",
   "monitor_id": "MONITOR_ID",
   "topic_matches": [
       {
           "topic_id": "4a6ffb0f-e90d-46ce-b10a-3a1e24fbe70d",
           "value": "ap-southeast-1.example.com",
           "term": "lwd",
           "offsets": [
               26,
               29
           ]
       },
       {
           "topic_id": "doc_type:domain_discovery",
           "value": "domain_discovery"
       }
   ],
   "label_matches": [],
   "doc_matches": [],
   "tags": [],
   "created_at": "2024-05-31T12:27:43.475Z",
   "updated_at": "2024-05-31T12:43:20.399Z",
   "labels_url": "https://api.intelligence.mandiant.com/v4/dtm/docs/domain_discovery/ID/labels",
   "topics_url": "https://api.intelligence.mandiant.com/v4/dtm/docs/domain_discovery/ID/topics",
   "doc_url": "https://api.intelligence.mandiant.com/v4/dtm/docs/domain_discovery/ID",
   "status": "closed",
   "alert_type": "Domain Discovery",
   "alert_summary": "See alert content for details",
   "title": "Suspicious domain \"ap-southeast-1.example.com\" similar to \"lwd\"",
   "email_sent_at": "",
   "severity": "medium",
   "confidence": 0.5,
   "has_analysis": false,
   "monitor_version": 2
}
Messages de sortie

L'action Mettre à jour l'alerte peut renvoyer les messages de sortie suivants :

Message affiché Description du message
Successfully updated alert with ID INCIDENT_ID in Mandiant DTM. Action effectuée.
Error executing action "Update Alert". Reason: ERROR_REASON

Échec de l'action.

Vérifiez la connexion au serveur, les paramètres d'entrée ou les identifiants.

Résultat du script

Le tableau suivant répertorie la valeur de la sortie du résultat du script lorsque vous utilisez l'action Mettre à jour l'alerte :

Nom du résultat du script Valeur
is_success True ou False

Connecteurs

Pour obtenir des instructions détaillées sur la configuration d'un connecteur dans Google SecOps, consultez Ingérer vos données (connecteurs).

Connecteur d'alertes Mandiant DTM

Utilisez le connecteur d'alertes Mandiant DTM pour extraire les alertes de Mandiant Digital Threat Monitoring. Pour utiliser une liste dynamique, utilisez le paramètre alert_type.

Le connecteur d'alertes Mandiant DTM nécessite les paramètres suivants :

Paramètre Description
Product Field Name Obligatoire

Nom du champ dans lequel le nom du produit est stocké.

La valeur par défaut est Product Name.

Event Field Name Obligatoire

Nom du champ utilisé pour déterminer le nom de l'événement (sous-type).

La valeur par défaut est event_type.

Environment Field Name Optional

Nom du champ dans lequel le nom de l'environnement est stocké.

Si le champ d'environnement est introuvable, l'environnement est défini sur la valeur par défaut.

La valeur par défaut est "".

Environment Regex Pattern Optional

Modèle d'expression régulière à exécuter sur la valeur trouvée dans le champ Environment Field Name. Ce paramètre vous permet de manipuler le champ "environment" à l'aide de la logique d'expression régulière.

Utilisez la valeur par défaut .* pour récupérer la valeur Environment Field Name brute requise.

Si le modèle d'expression régulière est nul ou vide, ou si la valeur d'environnement est nulle, le résultat final de l'environnement est "".

Script Timeout Obligatoire

Délai limite en secondes pour le processus Python exécutant le script actuel.

La valeur par défaut est 180.

API Root Obligatoire

Racine de l'API de l'instance Mandiant.

La valeur par défaut est https://api.intelligence.mandiant.com.

Pour vous authentifier avec les identifiants Google Threat Intelligence, saisissez la valeur suivante : https://www.virustotal.com.

Client ID Optional

ID client du compte Mandiant Digital Threat Monitoring.

Client Secret Optional

Code secret du compte Mandiant Digital Threat Monitoring.

GTI API Key Optional

Clé API de Google Threat Intelligence.

Pour vous authentifier à l'aide de Google Threat Intelligence, définissez la valeur du paramètre API Root sur https://www.virustotal.com.

Lorsque vous vous authentifiez à l'aide de la clé API Google Threat Intelligence, elle est prioritaire par rapport aux autres méthodes d'authentification.

Lowest Severity To Fetch Optional

Score de gravité le plus faible des alertes à récupérer.

Si vous ne configurez pas ce paramètre, le connecteur ingère les alertes de tous les niveaux de gravité.

Le paramètre accepte les valeurs de gravité suivantes :

  • Low
  • Medium
  • High
Monitor ID Filter Optional

Liste d'ID de moniteurs à partir desquels récupérer les alertes, séparés par une virgule.

Max Hours Backwards Obligatoire

Nombre d'heures avant la date actuelle à partir duquel récupérer les alertes.

La valeur par défaut est de 1 heure.

Max Alerts To Fetch Obligatoire

Nombre d'alertes à traiter pour chaque itération du connecteur.

La valeur par défaut est 25.

Disable Overflow Optional

Si cette option est sélectionnée, le connecteur ignore le mécanisme de dépassement.

(non sélectionnée par défaut).

Use dynamic list as a blocklist Obligatoire

Si cette option est sélectionnée, l'intégration utilise la liste dynamique comme liste de blocage.

(non sélectionnée par défaut).

Verify SSL Obligatoire

Si cette option est sélectionnée, elle vérifie que le certificat SSL pour la connexion au serveur Mandiant est valide.

Cette option est sélectionnée par défaut.

Proxy Server Address Optional

Adresse du serveur proxy à utiliser.

Proxy Username Optional

Nom d'utilisateur du proxy pour l'authentification.

Proxy Password Optional

Mot de passe du proxy pour l'authentification.

Règles du connecteur

Le connecteur est compatible avec les proxys.

Événements de connecteur

Il existe deux types d'événements pour le connecteur d'alertes Mandiant DTM : un événement basé sur l'alerte principale et un événement basé sur un thème.

Voici un exemple d'événement de connecteur basé sur l'alerte principale :

{
   "id": "ID",
   "event_type": "Main Alert",
   "monitor_id": "MONITOR_ID",
   "doc": {
       "__id": "6ed37932-b74e-4253-aa69-3eb4b00d0ea2",
       "__type": "account_discovery",
       "ingested": "2024-05-20T16:15:53Z",
       "service_account": {
           "login": "user@example.com",
           "password": {
               "plain_text": "********"
           },
           "profile": {
               "contact": {
                   "email": "user@example.com",
                   "email_domain": "example.com"
               }
           },
           "service": {
               "inet_location": {
                   "domain": "www.example-service.com",
                   "path": "/signin/app",
                   "protocol": "https",
                   "url": "https://www.example-service.com/signin/app"
               },
               "name": "www.example-service.com"
           }
       },
       "source": "ccmp",
       "source_file": {
           "filename": "[1.145.094.680] urlloginpass ap.txt",
           "hashes": {
               "md5": "c401baa01fbe311753b26334b559d945",
               "sha1": "bf700f18b6ab562afb6128b42a34ae088f9c7434",
               "sha256": "5e6302d95a7e7edb28d68926cede0c44babded720ad1cc9a72c12d8c6d66153f"
           },
           "size": 84161521407
       },
       "source_url": "https://cymbalgroup.com",
       "timestamp": "2023-11-14T20:09:04Z"
   },
   "labels": "Label",
   "topic_matches": [
       {
           "topic_id": "doc_type:account_discovery",
           "value": "account_discovery"
       }
   ],
   "label_matches": [],
   "doc_matches": [
       {
           "match_path": "service_account.profile.contact.email_domain",
           "locations": [
               {
                   "offsets": [
                       0,
                       9
                   ],
                   "value": "example.com"
               }
           ]
       }
   ],
   "tags": [],
   "created_at": "2024-05-20T16:16:52.439Z",
   "updated_at": "2024-05-30T12:10:56.691Z",
   "labels_url": "https://api.intelligence.mandiant.com/v4/dtm/docs/account_discovery/ID/labels",
   "topics_url": "https://api.intelligence.mandiant.com/v4/dtm/docs/account_discovery/ID/topics",
   "doc_url": "https://api.intelligence.mandiant.com/v4/dtm/docs/account_discovery/ID",
   "status": "read",
   "alert_type": "Compromised Credentials",
   "alert_summary": "ccmp",
   "title": "Leaked Credentials found for domain \"example.com\"",
   "email_sent_at": "",
   "indicator_mscore": 60,
   "severity": "high",
   "confidence": 0.9999995147741939,
   "aggregated_under_id": "ID",
   "monitor_name": "Compromised Credentials - Example",
   "has_analysis": false,
   "meets_password_policy": "policy_unset",
   "monitor_version": 1
}

Voici un exemple d'événement de connecteur basé sur un thème :

{
   "id": "ID",
   "event_type": "location_name",
   "location_name": "LOCATION_NAME",
   "timestamp": "2024-05-25T10:56:17.201Z",
   "type": "location_name",
   "value": "LOCATION_NAME",
   "extractor": "analysis-pipeline.nerprocessor-nerenglish-gpu",
   "extractor_version": "4-0-2",
   "confidence": 100,
   "entity_locations": [
       {
           "element_path": "body",
           "offsets": [
               227,
               229
           ]
       }
   ]
}

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