Collecter les journaux Forcepoint Email Security
Ce document explique comment ingérer des journaux Forcepoint Email Security dans Google Security Operations à l'aide de BindPlane. L'analyseur extrait d'abord les champs des journaux au format JSON et initialise certains champs UDM avec des valeurs vides. Ensuite, il mappe les champs extraits à leurs champs correspondants dans la structure UDM de Chronicle en fonction de conditions spécifiques et de manipulations de données, ce qui crée 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'application derrière un proxy, assurez-vous que les ports de pare-feu sont ouverts conformément aux exigences de l'agent BindPlane.
- Un accès privilégié à l'appliance ou à la console de gestion Forcepoint Email Security
Obtenir le fichier d'authentification d'ingestion Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à SIEM Settings > Collection Agent (Paramètres SIEM > Agent de collecte).
- Téléchargez le fichier d'authentification d'ingestion.
- Enregistrez le fichier de manière sécurisée sur le système où BindPlane sera installé.
Obtenir l'ID client Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres SIEM > Profil.
- Copiez et enregistrez l'ID client dans la section Organization Details (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 sous Windows
- Ouvrez l'invite de commandes ou PowerShell en tant qu'administrateur.
Exécutez la commande suivante :
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Installation sous Linux
- Ouvrez un terminal avec des droits root ou sudo.
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
- Pour obtenir d'autres options d'installation, consultez ce guide d'installation.
- Autre solution : vous pouvez également utiliser le workflow d'installation gérée BindPlane OP pour une gestion centralisée des agents.
Configurer l'agent BindPlane pour ingérer Syslog et l'envoyer à Google SecOps
Accédez au fichier de configuration :
- Recherchez 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,viou le Bloc-notes).
- Recherchez le fichier
Modifiez le fichier
config.yamlcomme 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_labelsRemplacez le port et l'adresse IP selon les besoins de votre infrastructure.
Remplacez
<CUSTOMER_ID>par l'ID client réel.Mettez à jour
/path/to/ingestion-authentication-file.jsonavec le chemin d'accès au fichier où le fichier d'authentification a été enregistré à l'étape 1.
Redémarrer l'agent BindPlane pour appliquer les modifications
Pour redémarrer l'agent BindPlane sous Linux, exécutez la commande suivante :
sudo systemctl restart observiq-otel-collectorPour redémarrer l'agent BindPlane sous 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
- Connectez-vous à la console de gestion Forcepoint Email Security.
- Accédez à Settings > Integrations > SIEM Integration (Paramètres > Intégrations > Intégration SIEM).
- Cliquez sur Enable SIEM Integration (Activer l'intégration SIEM).
Fournissez les informations de configuration suivantes :
- Format : sélectionnez LEEF (Log Event Extended Format).
- Syslog Server (Serveur Syslog) : saisissez l'adresse IP de l'agent BindPlane.
- Syslog Port (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 d'installation Syslog (par exemple,
Local0). - Severity (Gravité) : sélectionnez le niveau de gravité des événements de journal.
Cliquez sur Enregistrer.
Table de mappage UDM
| Champ du journal | Mappage UDM | Logique |
|---|---|---|
| Action | security_result.action_details | Mappé directement à partir du champ "Action" dans le journal brut. |
| AttachmentFilename | additional.fields.value.list_value.values.string_value (key: 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 (key: AttachmentsFileType) | Le champ "AttachmentFileType" est divisé par une virgule, 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 (key: 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" dans le journal brut. |
| EventReceivedTime | metadata.event_timestamp | Analysé au format d'horodatage et mappé à "metadata.event_timestamp". |
| FilteringReason | security_result.category_details | Mappé directement à partir du champ "FilteringReason" dans le journal brut. |
| MessageSandboxing | security_result.detection_fields.value (key: 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) | Mappé directement à partir du champ "MessageSize" dans le 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) | Mappé directement à 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" dans le journal brut. |
| SenderIP | principal.asset.ip, principal.ip | Mappé directement à partir du champ "SenderIP" dans le journal brut. |
| SenderIPCountry | principal.location.country_or_region | Mappé directement à partir du champ "SenderIPCountry" dans le journal brut. |
| SourceModuleName | principal.resource.attribute.labels.value (key: SourceModuleName) | Mappé directement à partir du champ "SourceModuleName" dans le journal brut et ajouté en tant que paire clé/valeur au tableau "principal.resource.attribute.labels". |
| SourceModuleType | principal.resource.attribute.labels.value (key: SourceModuleType) | Mappé directement à partir du champ "SourceModuleType" dans le journal brut et ajouté en tant que paire clé/valeur au tableau "principal.resource.attribute.labels". |
| SpamScore | security_result.detection_fields.value (key: SpamScore) | Mappé directement à partir du champ "SpamScore" dans le journal brut et ajouté en tant que paire clé/valeur au tableau "security_result.detection_fields". |
| Subject | network.email.subject | Mappé directement à partir du champ "Subject" dans le journal brut. |
| VirusName | security_result.detection_fields.value (key: VirusName) | Mappé directement à partir du champ "VirusName" dans le 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 auprès des membres de la communauté et des professionnels Google SecOps.