Journaux WildFire

Lorsque Cloud Next Generation Firewall Enterprise détecte un fichier et l'envoie à WildFire pour analyse, il génère des journaux détaillés qui vous aident à auditer et à analyser la détection et la prévention des logiciels malveillants. Ces journaux offrent une visibilité sur les menaces réseau et les résultats du bac à sable.

Cette page décrit le format et la structure des journaux d'envoi WildFire.

Types de journaux WildFire

WildFire propose deux grandes catégories de journaux :

  • Journaux d'envoi WildFire : générés lorsqu'un fichier inconnu est évalué par WildFire. Elles contiennent deux sous-types :

    • wildfire : indique qu'un fichier a été extrait et envoyé au cloud WildFire pour un bac à sable profond asynchrone.
    • inline-wildfire : indique qu'un fichier a été évalué en temps réel par le moteur d'analyse cloud intégrée WildFire avant d'atteindre le réseau.
  • Journaux des menaces WildFire : générés lorsque le pare-feu détecte et bloque activement une menace connue ou identifiée de manière dynamique en ligne. Ces journaux ajoutent deux nouveaux sous-types de journaux de menaces :

    • WILDFIRE_VIRUS : indique un virus détecté par le service cloud WildFire en fonction d'une correspondance de signature connue.
    • ML_VIRUS : indique un virus détecté de manière dynamique par le moteur de machine learning (ML) WildFire Inline intégré au pare-feu.

Afficher les journaux

Pour afficher et analyser les journaux WildFire, consultez Afficher tous les journaux de pare-feu.

Vous pouvez utiliser les requêtes suivantes dans le champ de l'éditeur de requêtes de l'explorateur de journaux :

  • Pour afficher les journaux d'envoi WildFire, saisissez type.googleapis.com/google.cloud.networksecurity.logging.v1.WildfireSubmissionLog.

  • Pour afficher les journaux des menaces WildFire, saisissez la requête suivante :

    type.googleapis.com/google.cloud.networksecurity.logging.v1.ThreatLog
    jsonPayload.threatDetails.type="WILDFIRE_VIRUS" OR jsonPayload.threatDetails.type="ML_VIRUS"
    

Format du journal WildFire

Cloud Next Generation Firewall Enterprise crée une entrée de journal dans Cloud Logging pour chaque fichier envoyé à WildFire. Les enregistrements de journal sont inclus dans le champ de charge utile JSON d'un objet LogEntry.

Le tableau suivant décrit le format des champs du journal des envois WildFire :

Champ Type Description
connection Connection Quintuple décrivant les paramètres de connexion associés au trafic.
action string Action effectuée sur la connexion à laquelle le fichier est envoyé à WildFire. Par exemple, allow, deny.
wildfireDetails WildFireDetails Détails de l'envoi de fichier WildFire et des résultats de l'analyse.
securityProfileGroupDetails SecurityProfileGroupDetails Détails du groupe de profils de sécurité appliqué au trafic intercepté.
interceptVpc VpcDetails Informations sur le réseau de cloud privé virtuel (VPC) associé au trafic intercepté.
interceptInstance InterceptInstance Informations sur l'instance de machine virtuelle (VM) où le trafic a été intercepté.

Format du champ Connection

Le tableau suivant décrit le format du champ Connection :

Champ Type Description
clientIp string Adresse IP du client. Si le client est une instance de VM Compute Engine, clientIp est l'adresse IP interne principale ou une adresse dans une plage d'adresses IP d'alias de l'interface réseau de la VM. L'adresse IP externe est omise. Les journaux affichent l'adresse IP de l'instance de VM telle qu'observée dans l'en-tête IP, de la même manière que le vidage TCP sur l'instance de VM.
clientPort integer Numéro de port client.
serverIp string Adresse IP du serveur. Si le serveur est une instance de VM Compute Engine, serverIp est l'adresse IP interne principale ou une adresse dans une plage d'adresses IP d'alias de l'interface réseau de la VM. L'adresse IP externe est omise, même si elle est utilisée pour établir la connexion.
serverPort integer Numéro de port du serveur.
protocol string Protocole IP de la connexion.

Format du champ WildFireDetails

Le tableau suivant décrit le format du champ wildfireDetails :

Champ Type Description
verdict string Verdict WildFire sur le fichier. Par exemple, malveillant.
detectionTime string Heure à laquelle le logiciel malveillant a été détecté.
direction string Sens de la transmission du fichier. Par exemple, CLIENT_TO_SERVER.
fileName string Nom du fichier.
fileType string Type de fichier. Par exemple, Linux ou PE.
hash string Hachage Secure Hash Algorithm 256-bit (SHA-256) du fichier.
severity string Niveau de gravité du logiciel malveillant détecté. Pour en savoir plus, consultez Niveaux de gravité des menaces.
repeatCount integer Nombre de sessions présentant la même adresse IP client, la même adresse IP du serveur, le même port client, le même port du serveur, le même protocole et le même domaine dans un intervalle de cinq secondes.
reportUrl string URL permettant de télécharger le rapport d'analyse WildFire. Cette URL pointe généralement vers networksecurity.usercontent.google.com et contient des informations sur l'organisation ou le projet, l'emplacement, le point de terminaison de pare-feu et le rapport.
sampleUrl string URL permettant de télécharger l'échantillon de logiciel malveillant. Cette URL pointe généralement vers networksecurity.usercontent.google.com et contient des informations sur l'organisation ou le projet, l'emplacement, le point de terminaison du pare-feu et des exemples d'informations.
subtype string Sous-type d'analyse WildFire. Par exemple, wildfire, inline-wildfire.

Format du champ SecurityProfileGroupDetails

Le tableau suivant décrit le format du champ SecurityProfileGroupDetails :

Champ Type Description
securityProfileGroupId string Nom du groupe de profils de sécurité appliqué au trafic.
organizationId string ID de l'organisation à laquelle appartient l'instance de VM.

Format du champ VpcDetails

Le tableau suivant décrit le format du champ VpcDetails :

Champ Type Description
vpc string Nom du réseau VPC associé au trafic intercepté
projectId string Nom du projet Google Cloud associé au réseau VPC.

Format du champ InterceptInstance

Le tableau suivant décrit le format du champ InterceptInstance :

Champ Type Description
zone string Nom de la zone où se trouve l'instance de VM.
vm string Nom de l'instance de VM associée au trafic intercepté.
projectId string Nom du projet Google Cloud associé au réseau VPC.

Corrélation des journaux WildFire avec les journaux de pare-feu

Lorsqu'une règle de pare-feu évalue le trafic, Cloud NGFW enregistre une entrée dans la journalisation des règles de stratégie de pare-feu. Pour en savoir plus, consultez WildFire. Pour afficher ces journaux de règles de pare-feu, consultez Afficher les journaux.

Lorsque la journalisation est activée pour une règle de stratégie de pare-feu avec inspection de couche 7, Cloud NGFW enregistre d'abord une entrée de journalisation des règles de pare-feu VPC pour le trafic évalué. Il envoie ensuite le trafic au point de terminaison de pare-feu pour l'inspection de couche 7. Pour en savoir plus, consultez Activer ou désactiver la journalisation des règles de stratégie de pare-feu.

Le point de terminaison du pare-feu analyse le trafic pour les fichiers à envoyer à WildFire et crée un journal d'envoi WildFire distinct pour la connexion. Ce journal d'envoi WildFire inclut des champs tels que le nom de fichier, le hachage de fichier, la source du trafic et la destination du trafic.

Pour afficher les journaux d'envoi WildFire, recherchez le journal networksecurity.googleapis.com%2Ffirewall_wildfire dans l'explorateur de journaux.

Vous pouvez comparer les champs du journal des règles de stratégie de pare-feu et du format de journal WildFire pour identifier la connexion qui a déclenché l'envoi de fichiers WildFire et prendre les mesures appropriées pour résoudre le problème.

Par exemple, vous avez configuré une règle de stratégie de pare-feu avec les paramètres suivants :

  • Adresse IP source : 192.0.2.0
  • Port source : 47644
  • Adresse IP de destination : 192.0.2.1
  • Port de destination : 80
  • Journalisation : Enabled

Pour afficher les journaux d'envoi WildFire associés à cette règle, accédez à la page Explorateur de journaux. Dans le volet Requête, collez la requête suivante dans le champ de l'éditeur de requête.

  resource.type="networksecurity.googleapis.com/FirewallEndpoint"
  jsonPayload.connection.clientIp="192.0.2.0"
  jsonPayload.connection.clientPort="47644"
  jsonPayload.connection.serverIp="192.0.2.1"
  jsonPayload.connection.serverPort="80"
  

La section Résultats de la requête affiche le journal d'envoi WildFire suivant :

    {
      "insertId": "akxp8uf5f0fuv",
      "jsonPayload": {
      "connection": {
      "serverPort": 80,
      "clientPort": 47644,
      "protocol": "TCP",
      "clientIp": "192.0.2.0",
      "serverIp": "192.0.2.1"
    },
      "interceptInstance": {
      "zone": "us-central1-c",
      "vm": "aied-test-dont-delete",
      "projectId": "project_001"
    },
      "interceptVpc": {
      "projectId": "project_001",
      "vpc": "default"
    },
      "@type": "type.googleapis.com/google.cloud.networksecurity.logging.v1.WildfireSubmissionLog",
      "securityProfileGroupDetails": {
      "securityProfileGroupId": "project_001/spg/my-spg-id",
      "organizationId": "organization_001"
    },
      "action": "DENY",
      "wildfireDetails": {
        "detectionTime": "2026-04-19T21:18:50Z",
        "direction": "SERVER_TO_CLIENT",
        "fileName": "sheet.exe",
        "fileType": "PE",
        "hash": "02521f0bb91b4c74d1590b85254f26f0d258cd780393010593ae6daaa5993753",
        "repeatCount": 1,
        "reportUrl": "https://networksecurity.usercontent.google.com/projects/12345/locations/us-west2-a/firewallEndpoints/prober-wfmixed-fwp-ep-us-w2-a/wildfireReports/C08DD6908D91EAB335FA89675E499631557B3126ADFF9C83A1856D4404D2F4A2",
        "sampleUrl": "https://networksecurity.usercontent.google.com/projects/12345/locations/us-west2-a/firewallEndpoints/prober-wfmixed-fwp-ep-us-w2-a/wildfireSamples/C08DD6908D91EAB335FA89675E499631557B3126ADFF9C83A1856D4404D2F4A2",
        "severity": "INFORMATIONAL",
        "subtype": "WILDFIRE",
        "verdict": "MALICIOUS"
      },
    },
    "resource": {
    "type": "networksecurity.googleapis.com/FirewallEndpoint",
    "labels": {
      "location": "us-central1-c",
      "resource_container": "organizations/organization_001",
      "id": "pg-ni-latencyayzl8peq"
    }
  },
  "timestamp": "2025-06-02T19:09:35.452299517Z",
  "logName": "projects/project_001/logs/networksecurity.googleapis.com%2Ffirewall_wildfire",
  "receiveTimestamp": "2025-06-02T19:09:35.452299517Z"
}
   

De même, pour afficher les journaux de pare-feu associés à cette règle, accédez à la page Explorateur de journaux. Dans le volet Requête, collez la requête suivante dans le champ de l'éditeur de requête.

    jsonPayload.rule_details.action="APPLY_SECURITY_PROFILE_GROUP"
    jsonPayload.connection.src_ip="192.0.2.0"
    jsonPayload.connection.src_port="47644"
    jsonPayload.connection.dest_ip="192.0.2.1"
    jsonPayload.connection.dest_port="80"
   

La section Résultats de la requête affiche le journal de pare-feu suivant :

    {
      insertId: "qn82vdg109q3r9"
      jsonPayload: {
      connection: {
      }
      dest_ip: "192.0.2.1"
      dest_port: 80
      protocol: 6
      src_ip: "192.0.2.0"
      src_port: 47644
      disposition: "INTERCEPTED"
      ►instance: {4}
      ▸ remote_instance: {4}
      ▸ remote_vpc: {3}
      rule_details: {
      action: "APPLY_SECURITY_PROFILE_GROUP"
      apply_security_profile_fallback_action: "UNSPECIFIED"
      direction: "INGRESS"
      ▸ ip_port_info: [1]
      ▼
      priority: 6000
      reference: "network: fwplus-vpc/firewallPolicy: fwplus-fwpolicy"
      source_range: [
      1
      0: "192.0.2.0/24"
      target_secure_tag: [
      0: "tagValues/281479199099651"
      ]
      }
      vpc: {
      project_id: "project_001"
      subnetwork_name: "fwplus-us-central1-subnet"
      vpc_name: "fwplus-vpc"
      }
      }
      logName: "projects/project_001/logs/compute.googleapis.com%2Ffirewall",
      receiveTimestamp: "2023-11-28T19:08:46.749244092Z"
      resource: {2}
      timestamp: "2023-11-28T19:08:40.207465099Z"
    }
   

En utilisant à la fois les requêtes de journal de soumission WildFire et de journal de pare-feu, vous pouvez voir la corrélation entre elles. Le tableau suivant mappe les champs du journal du pare-feu avec les champs correspondants du journal d'envoi WildFire :

Champ du journal de pare-feu Champ du journal des envois WildFire Description
src_ip clientIp L'adresse IP source du journal du pare-feu est mise en corrélation avec l'adresse IP du client dans le journal des envois WildFire pour identifier l'origine du trafic évalué.
src_port clientPort Le port source du journal du pare-feu est mis en corrélation avec le port client du journal d'envoi WildFire pour identifier le port source utilisé par le trafic évalué.
dest_ip serverIp L'adresse IP de destination dans le journal du pare-feu est corrélée à l'adresse IP du serveur dans le journal d'envoi WildFire pour identifier la cible du trafic évalué.
dest_port serverPort Le port de destination du journal du pare-feu est mis en corrélation avec le port du serveur dans le journal d'envoi WildFire pour identifier le port de destination utilisé par le trafic évalué.

Étapes suivantes