Collecter les journaux Forcepoint Email Security

Compatible avec :

Ce document explique comment ingérer les journaux Forcepoint Email Security dans Google Security Operations à l'aide de BindPlane. Le parseur extrait d'abord les champs des journaux au format JSON et initialise certains champs UDM avec des valeurs vides. Il mappe ensuite les champs extraits à leurs champs correspondants dans la structure UDM de Chronicle en fonction de conditions et de manipulations de données spécifiques, ce qui permet de créer une représentation unifiée de l'événement de sécurité des e-mails.

Avant de commencer

Assurez-vous de remplir les conditions suivantes :

  • Une instance Google SecOps
  • Un hôte Windows 2016 ou version ultérieure, ou Linux avec systemd
  • Si vous exécutez l'agent derrière un proxy, assurez-vous que les ports de pare-feu sont ouverts conformément aux exigences de l'agent BindPlane.
  • Accès privilégié à l'appliance ou à la console de gestion Forcepoint Email Security

Obtenir le fichier d'authentification d'ingestion Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres du SIEM > Agent de collecte.
  3. Téléchargez le fichier d'authentification d'ingestion.
  4. Enregistrez le fichier de manière sécurisée sur le système sur lequel BindPlane sera installé.

Obtenir l'ID client Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres SIEM> Profil.
  3. Copiez et enregistrez le numéro client de la section Informations sur l'organisation.

Installer l'agent BindPlane

Installez l'agent BindPlane sur votre système d'exploitation Windows ou Linux en suivant les instructions ci-dessous.

Installation de Windows

  1. Ouvrez l'invite de commandes ou PowerShell en tant qu'administrateur.
  2. Exécutez la commande suivante :

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Installation de Linux

  1. Ouvrez un terminal avec les droits root ou sudo.
  2. Exécutez la commande suivante :

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Ressources d'installation supplémentaires

Configurer l'agent BindPlane pour ingérer Syslog et l'envoyer à Google SecOps

  1. Accédez au fichier de configuration :

    • Trouvez le fichier config.yaml. Il se trouve généralement dans le répertoire /etc/bindplane-agent/ sous Linux ou dans le répertoire d'installation sous Windows.
    • Ouvrez le fichier à l'aide d'un éditeur de texte (par exemple, nano, vi ou le Bloc-notes).
  2. Modifiez le fichier config.yaml comme suit :

    receivers:
      udplog:
        # Replace the port and IP address as required
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: <CUSTOMER_ID>
        endpoint: malachiteingestion-pa.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'FORCEPOINT_EMAILSECURITY'
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    
  3. Remplacez le port et l'adresse IP selon les besoins de votre infrastructure.

  4. Remplacez <CUSTOMER_ID> par le numéro client réel.

  5. Remplacez /path/to/ingestion-authentication-file.json par le chemin d'accès au fichier d'authentification que vous avez enregistré à l'étape 1.

Redémarrez l'agent BindPlane pour appliquer les modifications.

  1. Pour redémarrer l'agent BindPlane sous Linux, exécutez la commande suivante :

    sudo systemctl restart observiq-otel-collector
    
  2. Pour redémarrer l'agent BindPlane dans Windows, vous pouvez utiliser la console Services ou saisir la commande suivante :

    net stop observiq-otel-collector && net start observiq-otel-collector
    

Configurer le transfert Syslog sur Forcepoint Email Security

  1. Connectez-vous à la console de gestion Forcepoint Email Security.
  2. Accédez à Paramètres> Intégrations> Intégration SIEM.
  3. Cliquez sur Enable SIEM Integration (Activer l'intégration SIEM).
  4. Fournissez les informations de configuration suivantes :

    • Format : sélectionnez LEEF (Log Event Extended Format).
    • Serveur Syslog : saisissez l'adresse IP de l'agent BindPlane.
    • Port Syslog : saisissez le numéro de port de l'agent BindPlane (par exemple, 514).
    • Protocole : sélectionnez UDP ou TCP, en fonction de la configuration réelle de votre agent BindPlane.
    • Installation : sélectionnez le code de l'installation syslog (par exemple, Local0).
    • Gravité : sélectionnez le niveau de gravité des événements de journaux.
  5. Cliquez sur Enregistrer.

Table de mappage UDM

Champ de journal Mappage UDM Logique
Action security_result.action_details Mappé directement à partir du champ "Action" du journal brut.
AttachmentFilename additional.fields.value.list_value.values.string_value (clé : Attachments_FileNames) Le champ "AttachmentFilename" est divisé par une virgule, puis chaque valeur est ajoutée en tant que string_value au tableau "additional.fields" avec la clé "Attachments_FileNames".
AttachmentFileType additional.fields.value.list_value.values.string_value (clé : AttachmentsFileType) Le champ "AttachmentFileType" est divisé par des virgules, puis chaque valeur est ajoutée en tant que string_value au tableau "additional.fields" avec la clé "AttachmentsFileType".
AttachmentSize additional.fields.value.list_value.values.string_value (clé : AttachmentsSize) Le champ "AttachmentSize" est divisé par une virgule, puis chaque valeur est ajoutée en tant que string_value au tableau "additional.fields" avec la clé "AttachmentsSize".
DateTime Non mappé dans l'UDM fourni.
EnvelopeSender network.email.from Mappé directement à partir du champ "EnvelopeSender" du journal brut.
EventReceivedTime metadata.event_timestamp Analysé dans un format d'horodatage et mappé à "metadata.event_timestamp".
FilteringReason security_result.category_details Mappé directement à partir du champ "FilteringReason" du journal brut.
MessageSandboxing security_result.detection_fields.value (clé : MessageSandboxing) Mappé directement à partir du champ "MessageSandboxing" dans le journal brut et ajouté en tant que paire clé/valeur au tableau "security_result.detection_fields".
MessageSize security_result.detection_fields.value (key: MessageSize) Directement mappé à partir du champ "MessageSize" du journal brut et ajouté en tant que paire clé/valeur au tableau "security_result.detection_fields".
nxlog_filename additional.fields.value.string_value (key: nxlog_filename) Directement mappé à partir du champ "nxlog_filename" dans le journal brut et ajouté en tant que paire clé-valeur au tableau "additional.fields".
RecipientAddress network.email.to Mappé directement à partir du champ "RecipientAddress" du journal brut.
SenderIP principal.asset.ip, principal.ip Mappé directement à partir du champ "SenderIP" du journal brut.
SenderIPCountry principal.location.country_or_region Mappé directement à partir du champ "SenderIPCountry" du journal brut.
SourceModuleName principal.resource.attribute.labels.value (clé : SourceModuleName) Mappé directement à partir du champ "SourceModuleName" du journal brut et ajouté en tant que paire clé-valeur au tableau "principal.resource.attribute.labels".
SourceModuleType principal.resource.attribute.labels.value (clé : SourceModuleType) Mappé directement à partir du champ "SourceModuleType" du journal brut et ajouté en tant que paire clé-valeur au tableau "principal.resource.attribute.labels".
SpamScore security_result.detection_fields.value (clé : SpamScore) Directement mappé à partir du champ "SpamScore" du journal brut et ajouté en tant que paire clé-valeur au tableau "security_result.detection_fields".
Objet network.email.subject Directement mappé à partir du champ "Objet" du journal brut.
VirusName security_result.detection_fields.value (clé : VirusName) Directement mappé à partir du champ "VirusName" du journal brut et ajouté en tant que paire clé-valeur au tableau "security_result.detection_fields".
metadata.event_type La valeur est déterminée en fonction de la présence d'autres champs. Si "has_network_email_data" est défini sur "true", la valeur est définie sur "EMAIL_TRANSACTION". Si "has_principal" est défini sur "true", la valeur est définie sur "STATUS_UPDATE". Sinon, la valeur par défaut est "GENERIC_EVENT".
metadata.product_name La valeur est définie sur "FORCEPOINT EMAILSECURITY".
metadata.vendor_name La valeur est définie sur "FORCEPOINT EMAILSECURITY".

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