Collecter les journaux Trellix Email Security Cloud (anciennement FireEye ETP)

Version de l'analyseur : 10.0

Compatible avec :

Ce document explique comment ingérer les journaux Trellix Email Security – Cloud Edition (anciennement FireEye ETP) dans Google Security Operations à l'aide de Google Cloud Storage V2 via une fonction Cloud Run.

Trellix Email Security – Cloud Edition est une passerelle de sécurité de messagerie basée sur le cloud qui protège contre les menaces avancées par e-mail, y compris l'hameçonnage, les logiciels malveillants, le piratage de messagerie en entreprise et les attaques par usurpation d'identité. La solution offre une sécurité complète des e-mails entrants et sortants grâce à la protection des URL, au sandboxing des pièces jointes et à des renseignements sur les menaces en temps réel fournis par le Trellix Advanced Research Center.

Avant de commencer

Assurez-vous de remplir les conditions préalables suivantes :

  • Une instance Google SecOps.
  • Un projet Google Cloud avec les API suivantes activées :
    • Cloud Storage
    • Fonctions Cloud Run
    • Cloud Scheduler
    • Pub/Sub
    • Cloud Build
  • Autorisations permettant de créer et de gérer des buckets GCS, des fonctions Cloud Run, des sujets Pub/Sub et des jobs Cloud Scheduler.
  • Accès privilégié à la console d'administration FireEye ETP (Trellix Email Security – Cloud Edition).
  • Autorisations d'administrateur pour créer des clés API dans le portail Trellix.
  • Une clé API FireEye ETP avec accès au point de terminaison Alerts.

Créer un bucket Google Cloud Storage

  1. Accédez à la console Google Cloud.
  2. Sélectionnez votre projet.
  3. Dans le menu de navigation, accédez à Cloud Storage > Buckets.
  4. Cliquez sur Créer un bucket.
  5. Fournissez les informations de configuration suivantes :

    Paramètre Valeur
    Attribuez un nom au bucket Saisissez un nom unique (par exemple, fireeye-etp-logs).
    Type d'emplacement Choisissez celle qui correspond le mieux à vos besoins (régionale, birégionale ou multirégionale).
    Emplacement Sélectionnez l'emplacement (par exemple, us-central1).
    Classe de stockage Standard (recommandé pour les journaux fréquemment consultés)
    Access control (Contrôle des accès) Uniforme (recommandé)
    Outils de protection Facultatif : Activez la gestion des versions d'objets ou la règle de conservation.
  6. Cliquez sur Créer.

Collecter les identifiants de l'API FireEye ETP

Pour permettre à la fonction Cloud Run de récupérer les alertes de FireEye ETP, vous devez créer une clé API avec les autorisations appropriées.

Créer une clé API

  1. Connectez-vous à la console d'administration FireEye ETP.
  2. Dans la barre de navigation supérieure, cliquez sur My Settings (Mes paramètres).
  3. Cliquez sur l'onglet Clés API.
  4. Cliquez sur Créer la clé API.
  5. Dans la section Produits, sélectionnez Email Threat Prevention.
  6. Dans la section Droits d'accès, sélectionnez tous les droits d'accès disponibles.
  7. Cliquez sur Créer ou Générer.

Enregistrer les identifiants de l'API

Ajoutez les informations suivantes :

  • Clé API : votre clé API unique.
  • URL de base : nom de domaine complet de votre région (par exemple, etp.us.fireeye.com).

Voici quelques URL de base courantes :

  • etp.us.fireeye.com (États-Unis)
  • etp.eu.fireeye.com (UE)
  • etp.ap.fireeye.com (APAC)

Vérifier les autorisations de l'API

Produit/Droit d'accès Objectif
Email Threat Prevention Accès aux alertes par e-mail, aux données de trace et aux informations sur les menaces
Tous les droits d'accès Accès complet aux API d'alertes, de traçage des e-mails et de mise en quarantaine

Tester l'accès à l'API

  • Vérifiez que votre clé API est valide :

    curl -s -o /dev/null -w "%{http_code}" \
        -H "x-fireeye-api-key: YOUR_API_KEY" \
        "[https://etp.us.fireeye.com/api/v1/alerts?size=1](https://etp.us.fireeye.com/api/v1/alerts?size=1)"
    

Un code de réponse 200 confirme que la clé API est valide.

Créer un compte de service pour la fonction Cloud Run

La fonction Cloud Run nécessite un compte de service disposant des autorisations nécessaires pour écrire des journaux dans GCS et recevoir des messages Pub/Sub.

  1. Dans la console Google Cloud, accédez à IAM et administration > Comptes de service.
  2. Cliquez sur Créer un compte de service.
  3. Indiquez un nom (par exemple, fireeye-etp-ingestion) et une description.
  4. Attribuez les rôles suivants :
    • Administrateur des objets Storage
    • Demandeur Cloud Run
  5. Cliquez sur OK.

Créer un sujet Pub/Sub

  1. Dans la console Google Cloud, accédez à Pub/Sub > Sujets.
  2. Cliquez sur Créer un sujet.
  3. ID du sujet : fireeye-etp-trigger.
  4. Cliquez sur Créer.

Créer une fonction Cloud Run

Créer une fonction Cloud Run qui interroge l'API FireEye ETP Alerts et écrit les résultats au format NDJSON dans GCS.

Préparer le code de la fonction

  1. Dans la console Google Cloud, accédez à Fonctions Cloud Run.
  2. Cliquez sur Créer une fonction.
  3. Environnement : 2e génération.
  4. Nom de la fonction : fireeye-etp-ingestion.
  5. Région : sélectionnez la même région que votre bucket GCS.
  6. Type de déclencheur : Cloud Pub/Sub.
  7. Sujet Cloud Pub/Sub : fireeye-etp-trigger.
  8. Compte de service : sélectionnez le compte de service créé précédemment.
  9. Cliquez sur Suivant.
  10. Environnement d'exécution : Python 3.11 (ou version ultérieure).
  11. Point d'entrée : main.
  12. Dans main.py, collez le code suivant :

    """Cloud Run function to ingest FireEye ETP alerts into GCS."""
    
    import json
    import os
    import time
    from datetime import datetime, timedelta, timezone
    
    import functions_framework
    import urllib3
    from google.cloud import storage
    
    GCS_BUCKET = os.environ["GCS_BUCKET"]
    GCS_PREFIX = os.environ.get("GCS_PREFIX", "fireeye_etp")
    STATE_KEY = os.environ.get("STATE_KEY", "fireeye_etp_state.json")
    API_KEY = os.environ["API_KEY"]
    API_BASE = os.environ.get("API_BASE", "etp.us.fireeye.com")
    MAX_RECORDS = int(os.environ.get("MAX_RECORDS", "10000"))
    PAGE_SIZE = int(os.environ.get("PAGE_SIZE", "100"))
    LOOKBACK_HOURS = int(os.environ.get("LOOKBACK_HOURS", "1"))
    
    http = urllib3.PoolManager()
    gcs = storage.Client()
    
    def _load_state() -> dict:
            """Load the last event time from GCS state file."""
            bucket = gcs.bucket(GCS_BUCKET)
            blob = bucket.blob(f"{GCS_PREFIX}/{STATE_KEY}")
            if blob.exists():
                    return json.loads(blob.download_as_text())
            return {}
    
    def _save_state(state: dict) -> None:
            """Persist the state dict back to GCS."""
            bucket = gcs.bucket(GCS_BUCKET)
            blob = bucket.blob(f"{GCS_PREFIX}/{STATE_KEY}")
            blob.upload_from_string(
                    json.dumps(state), content_type="application/json"
            )
    
    def _api_get(path: str, params: dict, retries: int = 5) -> dict:
            """Execute a GET request against the FireEye ETP API with retry on 429."""
            url = f"https://{API_BASE}{path}"
            headers = {
                    "x-fireeye-api-key": API_KEY,
                    "Accept": "application/json",
            }
            backoff = 2
            for attempt in range(retries):
                    resp = http.request(
                            "GET", url, headers=headers, fields=params
                    )
                    if resp.status == 200:
                            return json.loads(resp.data.decode("utf-8"))
                    if resp.status == 429:
                            wait = backoff * (2 ** attempt)
                            print(
                                    f"Rate limited (429). Retrying in {wait}s "
                                    f"(attempt {attempt + 1}/{retries})."
                            )
                            time.sleep(wait)
                            continue
                    raise RuntimeError(
                            f"FireEye ETP API error: {resp.status} — {resp.data.decode('utf-8')}"
                    )
            raise RuntimeError(
                    "FireEye ETP API rate limit exceeded after maximum retries."
            )
    
    def _fetch_alerts(since: str) -> list:
            """Fetch alerts from FireEye ETP with offset-based pagination."""
            all_alerts = []
            offset = 0
            while len(all_alerts) < MAX_RECORDS:
                    params = {
                            "from_last_modified_on": since,
                            "size": str(PAGE_SIZE),
                            "offset": str(offset),
                    }
                    data = _api_get("/api/v1/alerts", params)
                    alerts = data.get("data", [])
                    if not alerts:
                            break
                    all_alerts.extend(alerts)
                    offset += len(alerts)
                    if len(alerts) < PAGE_SIZE:
                            break
            return all_alerts[:MAX_RECORDS]
    
    def _write_ndjson(alerts: list, run_ts: str) -> str:
            """Write alerts as NDJSON to GCS and return the blob path."""
            bucket = gcgcs.bucketCS_BUCKET)
            blob_path = (
                    f"{GCS_PREFIX}/year={run_ts[:4]}/month={run_ts[5:7]}/"
                    f"day={run_ts[8:10]}/{run_ts}_alerts.ndjson"
            )
            blob = bucket.blob(blob_path)
            ndjson = "\n".join(json.dumps(a, separators=(",", ":")) for a in alerts)
            blob.upupload_from_stringdjson, content_type="application/x-ndjson")
            return blob_path
    
    @functions_framework.cloud_event
    def main(cloud_event):
            """Entry point triggered by Pub/Sub via Cloud Scheduler."""
            state = _load_state()
            now = datetime.now(timezone.utc)
            since = ststateet(
                    "last_event_time",
                    (now - timedelta(hours=LOOKBACK_HOURS)).strftime(
                            "%Y-%m-%dT%H:%M:%S.000"
                    ),
            )
            print(f"Fetching FireEye ETP alerts since {since}.")
            alerts = _fetch_alerts(since)
            if not alerts:
                    print("No new alerts found.")
                    return "OK"
            run_ts = now.strftime("%Y-%m-%dT%H%M%SZ")
            blob_path = _write_ndjson(alerts, run_ts)
            print(f"Wrote {len(alerts)} alerts to gs://{GCS_BUCKET}/{blob_path}.")
            latest = max(
                    a.get("attributes", {})
                    .get("meta", {})
                    .get("last_modified_on", since)
                    for a in alerts
            )
            state["last_event_time"] = latest
            _save_state(state)
            print(f"State updated. last_event_time={latest}.")
            return "OK"
    
  13. Dans requirements.txt, collez :

    functions-framework==3.*
    google-cloud-storage==2.*
    urllib3==2.*
    

Configurer les variables d'environnement

Sous Variables d'environnement d'exécution, ajoutez les éléments suivants :

Variable Exemple de valeur
GCS_BUCKET fireeye-etp-logs
GCS_PREFIX fireeye_etp
STATE_KEY fireeye_etp_state.json
API_KEY Votre clé API FireEye ETP
API_BASE etp.us.fireeye.com
MAX_RECORDS 10000
PAGE_SIZE 100
LOOKBACK_HOURS 1
  1. Définissez Allocation de mémoire sur 256 Mo et Délai avant expiration sur 540 secondes.
  2. Cliquez sur Déployer.

Créer une tâche Cloud Scheduler

  1. Dans la console Google Cloud, accédez à Cloud Scheduler.
  2. Cliquez sur Créer une tâche.
  3. Nom : fireeye-etp-ingestion-schedule.
  4. Fréquence : */5 * * * * (toutes les cinq minutes).
  5. Fuseau horaire : UTC.
  6. Cliquez sur Continuer.
  7. Type de cible : Pub/Sub.
  8. Sujet Cloud Pub/Sub : fireeye-etp-trigger.
  9. Corps du message : {"run": true}.
  10. Cliquez sur Créer.

Récupérer le compte de service Google SecOps

  1. Accédez à Paramètres > Gestion des données > Flux. Si vous utilisez une plate-forme SIEM uniquement, accédez à Paramètres > Flux.
  2. Cliquez sur Ajouter un flux, puis sélectionnez Configurer un seul flux.
  3. Nom du flux : FireEye ETP Alerts.
  4. Type de source : Google Cloud Storage V2.
  5. Type de journal : FireEye ETP.
  6. Cliquez sur Obtenir un compte de service, puis copiez l'adresse e-mail affichée.
  7. Cliquez sur Suivant.
  8. URL du bucket de stockage : gs://fireeye-etp-logs/fireeye_etp/ (incluez la barre oblique finale).
  9. Option de suppression de la source : sélectionnez l'option de votre choix.
  10. Cliquez sur Suivant, vérifiez les informations, puis cliquez sur Envoyer.

Accorder des autorisations IAM

Le compte de service doit disposer du rôle Lecteur des objets Storage sur votre bucket.

  1. Accédez à Cloud Storage > Buckets.
  2. Sélectionnez votre bucket, puis cliquez sur l'onglet Autorisations.
  3. Cliquez sur Accorder l'accès.
  4. Ajouter des comptes principaux : collez l'adresse e-mail du compte de service Google SecOps.
  5. Attribuer des rôles : sélectionnez Lecteur d'objets Storage.
  6. Cliquez sur Enregistrer.

Table de mappage UDM

Champ du journal Mappage UDM Logique
à propos de Fusionné à partir de about_field
about.file.full_path Valeur de entry.attributes.email.attachment si elle n'est pas vide
about.file.md5 Valeur issue de entry.attributes.alert.malware_md5
about.hostname Extrait de entry.attributes.email.attachment
about.url "full_path" normalisé s'il commence par hxxp
additional.fields Fusionné à partir de nombreux libellés internes et champs de métadonnées
intermédiaire Fusionné à partir de l'intermédiaire
intermediary.ip Fusionné à partir de alert.smtp-message.ip_address
intermediary.location.country_or_region Définir sur %{alert.smtp-message.country}
intermediary.user.email_addresses Fusionné à partir de src_email
metadata.description Régler sur %{alert.name}
metadata.event_timestamp Correspondance établie à partir de accepted_timestamp, last_modified_on ou attack-time
metadata.event_type Catégorisées en fonction des conditions de mise à jour du réseau, de l'utilisateur ou de l'état
metadata.product_log_id Définissez l'ID du message, l'ID de l'attribut ou l'UUID de l'alerte.
metadata.product_version Définir sur %{version}
metadata.url_back_to_product Régler sur %{entry.links.detail}
network.application_protocol Définissez cette option sur "SMTP".
network.direction Valeur traffic_type en majuscules (INBOUND/OUTBOUND)
network.dns_domain Définir sur %{attributes.domain}
network.email.cc Fusionné à partir des champs cc dans les en-têtes ou les tableaux
network.email.from Définir à partir des champs "De" de l'en-tête ou du protocole SMTP
network.email.mail_id Définir à partir de l'ID du message d'origine ou en aval
network.email.subject Fusionné à partir des champs d'objet de l'en-tête
network.email.to Fusionné à partir des destinataires SMTP ou des champs "À" de l'en-tête
principal.administrative_domain Définissez l'ID du message ETP ou le domaine source.
principal.asset.hostname Définir sur l'hôte source ou le nom d'hôte en aval
principal.asset.ip Fusionné à partir des champs sender_ip ou source_ip
principal.asset.mac Fusionné à partir de l'adresse MAC source si elle n'est pas vide
principal.hostname Définir sur l'hôte source ou le nom d'hôte en aval
principal.ip Fusionné à partir des champs sender_ip ou source_ip
principal.labels Fusionné avec les libellés mail_from et rcpt_to
principal.location.country_or_region Définir sur le code du pays source
principal.mac Fusionné à partir de l'adresse MAC source si elle n'est pas vide
principal.user.email_addresses Fusionné à partir de alert.smtp-message.from
principal.user.user_display_name Définir les champs de nom à afficher dans l'en-tête "De"
principal.user.userid Définir sur l'ID du message d'origine
principal.email Définir les champs d'en-tête d'e-mail "De"
security_result Fusionné à partir de plusieurs structures de résultats
security_result.about.resource.attribute.creation_time Correspondance à partir des champs d'horodatage de l'alerte
security_result.action "BLOCK" si l'état est "dropped", "quarantined" ou "deleted"
security_result.action_details Définir sur %{alert.action}
security_result.attack_details.tactics Fusionnés en fonction des ID ou des noms MITRE
security_result.attack_details.techniques Fusionné en fonction des données de la technique MITRE
security_result.category "MAIL_PHISHING" si threat_type correspond à "Phishing"
security_result.category_details Fusionné à partir de threat_type ou verdict
security_result.detection_fields Fusionné à partir de nombreux libellés d'état et de verdict
security_result.risk_score Définissez cette valeur sur 5,0 ou 10,0 en fonction de la gravité.
security_result.severity Définissez la priorité sur "Élevée", "Moyenne" ou "Faible" en fonction de la gravité de l'alerte.
security_result.severity_details Définir sur %{alert_severity}
security_result.summary Définir à partir de last_malware ou de la description en aval
security_result.threat_id Définir à partir de l'ancien ID ou de l'ID de trace
security_result.threat_name Définir à partir du résumé ou du nom du logiciel malveillant
security_result.verdict_info Fusionné si le verdict est RISKWARE
target.asset.hostname Définir à partir du nom d'hôte du message de livraison
target.file.first_seen_time Correspondance établie à partir de l'heure de l'attaque de l'alerte
target.file.first_submission_time Correspondance à partir de l'heure d'envoi du logiciel malveillant
target.file.full_path Définir à partir du chemin d'accès d'origine du logiciel malveillant
target.file.md5 Définir à partir de la somme MD5 du logiciel malveillant
target.file.names Fusionné à partir du nom du logiciel malveillant
target.file.sha256 Définir à partir du hachage SHA256 du logiciel malveillant
target.file.size Définir à partir des octets du message de livraison
target.hostname Définir à partir du nom d'hôte du message de livraison
target.labels Fusionné avec les étiquettes de file d'attente et de protocole
target.url Définir à partir de l'URL d'origine du logiciel malveillant
target.user.email_addresses Fusionné à partir des champs d'adresse e-mail cible et de destinataire
metadata.vendor_name Définissez cette option sur "FireEye".
metadata.product_name Définissez cette option sur "ETP".
smtp-message.threat_type event.idm.read_only_udm.metadata.product_event_type Mappé à partir du journal des modifications
smtp-message.protocol event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
entry.attributes.email.smtp.rcpt_to event.idm.read_only_udm.principal.resource.attribute.labels Mappé à partir du journal des modifications
entry.attributes.email.smtp.mail_from event.idm.read_only_udm.principal.resource.attribute.labels Mappé à partir du journal des modifications
alert.smtp-message.last-malware event.idm.read_only_udm.target.resource.attribute.labels Mappé à partir du journal des modifications
alert.smtp-message.protocol event.idm.read_only_udm.target.resource.attribute.labels Mappé à partir du journal des modifications
alert.smtp-message.queue-id event.idm.read_only_udm.target.resource.attribute.labels Mappé à partir du journal des modifications
alert.ack event.idm.read_only_udm.target.resource.attribute.labels Mappé à partir du journal des modifications
mta_msg_id event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
msg event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
domain event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
original event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
alert_date event.idm.read_only_udm.metadata.event_timestamp Mappé à partir du journal des modifications
smtp-message.ip_address event.idm.read_only_udm.principal.ip et event.idm.read_only_udm.principal.asset.ip Mappé à partir du journal des modifications
smtp-message.threat_type event.idm.read_only_udm.security_result.summary Mappé à partir du journal des modifications
smtp-message.threat_type_description event.idm.read_only_udm.security_result.description Mappé à partir du journal des modifications
email-header.to event.idm.read_only_udm.network.email.to Mappé à partir du journal des modifications
smtp-message.to event.idm.read_only_udm.network.email.to Mappé à partir du journal des modifications
email-header.from event.idm.read_only_udm.network.email.from Mappé à partir du journal des modifications
email-header.cc event.idm.read_only_udm.network.email.cc Mappé à partir du journal des modifications
email-header.subject event.idm.read_only_udm.network.email.subject Mappé à partir du journal des modifications
email-header.message-id event.idm.read_only_udm.network.email.mail_id Mappé à partir du journal des modifications
malware.name event.idm.read_only_udm.security_result.threat_name Mappé à partir du journal des modifications
malware.stype event.idm.read_only_udm.security_result.threat_id Mappé à partir du journal des modifications
sha256 event.idm.read_only_udm.security_result.about.file.sha256 Mappé à partir du journal des modifications
md5 event.idm.read_only_udm.security_result.about.file.md5 Mappé à partir du journal des modifications
email_status event.idm.read_only_udm.security_result.action Mappé à partir du journal des modifications
email_status event.idm.read_only_udm.security_result.action_details Mappé à partir du journal des modifications
smtp-message.from event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
smtp-message.last-malware event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
smtp-message.country event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
smtp-message.queue-id event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
ack event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
is_read event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.smtp-message.threat_type_description event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
custom.riskware_action event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
custom.riskware_result event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert_type event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
traffic_type event.idm.read_only_udm.network.direction Mappé à partir du journal des modifications
domain_id event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
, event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
custom event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
alert.smtp-message.threat_type event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
alert.email-header.cc event.idm.read_only_udm.network.email.cc Mappé à partir du journal des modifications
action_yara event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
verdict_yara event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
delivery_timestamp event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
syslog_process event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
timestamp event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
usr_display_name event.idm.read_only_udm.principal.user.user_display_name Mappé à partir du journal des modifications
is_retro event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.email-header.to event.idm.read_only_udm.target.user.email_addresses Mappé à partir du journal des modifications
alert.action event.idm.read_only_udm.security_result.action_details Mappé à partir du journal des modifications
alert.attack-time event.idm.read_only_udm.target.file.first_seen_time Mappé à partir du journal des modifications
alert.dst.smtp-to event.idm.read_only_udm.target.user.email_addresses Mappé à partir du journal des modifications
alert.email-header.from event.idm.read_only_udm.network.email.from Mappé à partir du journal des modifications
alert.email-header.message-id event.idm.read_only_udm.network.email.mail_id Mappé à partir du journal des modifications
alert.email-header.subject event.idm.read_only_udm.network.email.subject Mappé à partir du journal des modifications
alert.ack event.idm.read_only_udm.target.labels Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.application event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.downloaded-at event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.executed-at event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.md5sum event.idm.read_only_udm.target.file.md5 Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.md5sum event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.name event.idm.read_only_udm.target.file.names Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.original event.idm.read_only_udm.target.url Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.original event.idm.read_only_udm.target.file.full_path Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.original event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.profile event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.sha256 event.idm.read_only_udm.target.file.sha256 Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.sha256 event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.stype event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.submitted-at event.idm.read_only_udm.target.file.first_submission_time Mappé à partir du journal des modifications
alert.explanation.malware-detected.malware.type event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.interface.interface event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.interface.mode event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.name event.idm.read_only_udm.metadata.description Mappé à partir du journal des modifications
alert.occurred event.idm.read_only_udm.metadata.event_timestamp Mappé à partir du journal des modifications
alert.sc-version event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.severity event.idm.read_only_udm.security_result.severity Mappé à partir du journal des modifications
alert.smtp-message.country event.idm.read_only_udm.intermediary.location.country_or_region Mappé à partir du journal des modifications
alert.smtp-message.date event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
alert.smtp-message.from event.idm.read_only_udm.principal.user.email_addresses Mappé à partir du journal des modifications
alert.smtp-message.ip_address event.idm.read_only_udm.intermediary.ip Mappé à partir du journal des modifications
alert.smtp-message.last-malware event.idm.read_only_udm.target.labels Mappé à partir du journal des modifications
alert.smtp-message.protocol event.idm.read_only_udm.target.labels Mappé à partir du journal des modifications
alert.smtp-message.queue-id event.idm.read_only_udm.target.labels Mappé à partir du journal des modifications
alert.smtp-message.to event.idm.read_only_udm.network.email.to Mappé à partir du journal des modifications
alert.src.domain event.idm.read_only_udm.principal.administrative_domain Mappé à partir du journal des modifications
alert.src.smtp-mail-from event.idm.read_only_udm.principal.user.email_addresses Mappé à partir du journal des modifications
alert.uuid event.idm.read_only_udm.metadata.product_log_id Mappé à partir du journal des modifications
mitre_mapping.bale.bale_id event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
mitre_mapping.bale.name event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
mitre_mapping.bale.os_change_id event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
mitre_mapping.bale.severity event.idm.read_only_udm.security_result.detection_fields Mappé à partir du journal des modifications
mitre_mapping.bale.description event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
mitre_mapping.bale.id event.idm.read_only_udm.security_result.attack_details.techniques Mappé à partir du journal des modifications
tactics_data event.idm.read_only_udm.security_result.attack_details.tactics Mappé à partir du journal des modifications
alert.src.url event.idm.read_only_udm.principal.url Mappé à partir du journal des modifications
mta_msg_id event.idm.read_only_udm.target.labels Mappé à partir du journal des modifications
msg event.idm.read_only_udm.about.labels Mappé à partir du journal des modifications
parent_uuid event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
verdict event.idm.read_only_udm.security_result.verdict_info Mappé à partir du journal des modifications
version event.idm.read_only_udm.metadata.product_version Mappé à partir du journal des modifications
report_id event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
object_uuid event.idm.read_only_udm.additional.fields Mappé à partir du journal des modifications
type", "InternalId", "attributes.acceptedDateTime", "attributes.lastModifiedDateTime", "attributes.senderSMTP", "attributes.status", and "attributes.urlDomains additional.fields Mappé à partir du journal des modifications
attributes.countryCode principal.location.country_or_region Mappé à partir du journal des modifications
attributes.senderIP principal.ip Mappé à partir du journal des modifications
attributes.recipientSMTP network.email.to Mappé à partir du journal des modifications
attributes.senderHeader network.email.from Mappé à partir du journal des modifications
attributes.subject network.email.subject Mappé à partir du journal des modifications
alert.attributes.alert.malware_md5 about.file.md5 Mappé à partir du journal des modifications
id", "alert.explanation.analysis","alert.explanation.malware_os_analysis","email.dod_report_id" and "email.status security_result.detection_fields Mappé à partir du journal des modifications
alert.sha256 about.file.sha256 Mappé à partir du journal des modifications
alert.severity security_result.severity Mappé à partir du journal des modifications
email.smtp.mail_from network.email.from Mappé à partir du journal des modifications
email.smtp.recipients network.email.to Mappé à partir du journal des modifications
email.headers.subject network.email.subject Mappé à partir du journal des modifications
email.source_ip principal.ip Mappé à partir du journal des modifications
alert.explanation.malware_detected.malware.threat_type security_result.category Mappé à partir du journal des modifications
alert.explanation.malware_detected.malware.trace_iden security_result.threat_id Mappé à partir du journal des modifications
alert.explanation.malware_detected.malware.name security_result.threat_name Mappé à partir du journal des modifications
email.source_country principal.location.country_or_region Mappé à partir du journal des modifications

Journal des modifications

Afficher le journal des modifications de cet analyseur

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