Collecter les journaux d'exportation des événements Symantec
Ce document explique comment collecter les journaux d'exportation d'événements Symantec en configurant un flux Google Security Operations.
Pour en savoir plus, consultez Ingestion de données dans Google Security Operations.
Un libellé d'ingestion identifie l'analyseur qui normalise les données de journal brutes au format UDM structuré. Les informations de ce document s'appliquent à l'analyseur avec les libellés d'ingestion suivants: SYMANTEC_EVENT_EXPORT
et SEP
.
Configurer l'exportation des événements Symantec
- Connectez-vous à la console SEP 15/14.2.
- Sélectionnez Intégration.
- Cliquez sur Client Application (Application cliente) et copiez l'ID client et l'ID de domaine, qui sont utilisés lorsque vous créez un flux Google Security Operations.
- Cliquez sur + Ajouter et indiquez un nom d'application.
- Cliquez sur Ajouter.
- Accédez à la page Détails et effectuez les actions suivantes :
- Dans la section Gestion des groupes d'appareils, sélectionnez Afficher.
- Dans la section Gestion des règles d'alertes et d'événements, sélectionnez Afficher.
- Dans la section Investigation Incident (Incident d'investigation), sélectionnez View (Afficher).
- Cliquez sur Enregistrer.
- Cliquez sur le menu (trois points alignés verticalement) situé à la fin du nom de l'application, puis sur Secret client.
- Copiez l'ID client et le code secret du client, qui sont requis lorsque vous configurez le flux Google Security Operations.
Configurer un flux dans Google Security Operations pour ingérer les journaux d'exportation d'événements Symantec
- Accédez à Paramètres du SIEM > Flux.
- Cliquez sur Add New (Ajouter nouveau).
- Saisissez un nom unique dans le champ Nom du champ.
- Sélectionnez Google Cloud Storage comme Type de source.
- Sélectionnez Exportation d'événements Symantec comme Type de journal.
- Cliquez sur Obtenir un compte de service. Google Security Operations fournit un compte de service unique qu'il utilise pour ingérer les données.
- Configurez l'accès du compte de service aux objets Cloud Storage. Pour en savoir plus, consultez Accorder l'accès au compte de service Google Security Operations.
- Cliquez sur Suivant.
- Configurez les paramètres d'entrée obligatoires suivants :
- URI du bucket de stockage: spécifiez l'URI du bucket de stockage.
- Un URI est: spécifiez l'URI.
- Option de suppression de la source: spécifiez l'option de suppression de la source.
- Cliquez sur Suivant, puis sur Envoyer.
Pour en savoir plus sur les flux Google Security Operations, consultez la documentation sur les flux Google Security Operations.
Pour en savoir plus sur les exigences de chaque type de flux, consultez la section Configuration des flux par type.
Si vous rencontrez des problèmes lors de la création de flux, contactez l'assistance Google Security Operations.
Référence du mappage de champs
Cet analyseur extrait des champs des journaux d'exportation d'événements Symantec au format JSON ou SYSLOG, les normalise et les met en correspondance avec l'UDM. Il gère différentes structures de journaux, à l'aide de modèles grok pour l'analyse SYSLOG et JSON pour les journaux au format JSON, et met en correspondance des champs avec des entités UDM telles que principal
, target
, network
et security_result
.
Tableau de mappage UDM
Champ de journal | Mappage UDM | Logique |
---|---|---|
actor.cmd_line |
principal.process.command_line |
Le actor.cmd_line du journal brut est mappé directement sur l'UDM. |
actor.file.full_path |
principal.process.file.full_path |
Le actor.file.path ou file.path du journal brut est mappé directement sur l'UDM. |
actor.file.md5 |
principal.process.file.md5 |
Le actor.file.md5 du journal brut est converti en minuscules et mappé directement sur l'UDM. |
actor.file.sha1 |
principal.process.file.sha1 |
Le actor.file.sha1 du journal brut est converti en minuscules et mappé directement sur l'UDM. |
actor.file.sha2 |
principal.process.file.sha256 |
Les actor.file.sha2 ou file.sha2 du journal brut sont convertis en minuscules et mappés directement à l'UDM. |
actor.file.size |
principal.process.file.size |
Le actor.file.size du journal brut est converti en chaîne, puis en entier sans signature, et mappé directement sur l'UDM. |
actor.pid |
principal.process.pid |
Le actor.pid du journal brut est converti en chaîne et mappé directement sur l'UDM. |
actor.user.domain |
principal.administrative_domain |
Le actor.user.domain du journal brut est mappé directement sur l'UDM. Si connection.direction_id est défini sur 1, il est mappé sur target.administrative_domain . |
actor.user.name |
principal.user.user_display_name |
Le actor.user.name du journal brut est mappé directement sur l'UDM. Si user_name existe, il est prioritaire. |
actor.user.sid |
principal.user.windows_sid |
Le actor.user.sid du journal brut est mappé directement sur l'UDM. |
connection.direction_id |
network.direction |
Si connection.direction_id est défini sur 1 et que connection.dst_ip existe, network.direction est défini sur INBOUND . Si connection.direction_id est défini sur 2 et que connection.dst_ip existe, network.direction est défini sur OUTBOUND . |
connection.dst_ip |
target.ip |
Le connection.dst_ip du journal brut est mappé directement sur l'UDM. |
connection.dst_port |
target.port |
Le connection.dst_port du journal brut est converti en entier et mappé directement sur l'UDM. |
connection.src_ip |
principal.ip |
Le connection.src_ip du journal brut est mappé directement sur l'UDM. |
connection.src_port |
principal.port |
Le connection.src_port du journal brut est converti en entier et mappé directement sur l'UDM. Gère les cas où connection.src_port est un tableau. |
device_domain |
principal.administrative_domain ou target.administrative_domain |
Le device_domain du journal brut est mappé sur principal.administrative_domain si connection.direction_id n'est pas égal à 1. Si connection.direction_id est défini sur 1, il est mappé sur target.administrative_domain . |
device_group |
principal.group.group_display_name ou target.group.group_display_name |
Le device_group du journal brut est mappé sur principal.group.group_display_name si connection.direction_id n'est pas égal à 1. Si connection.direction_id est défini sur 1, il est mappé sur target.group.group_display_name . |
device_ip |
src.ip |
Le device_ip du journal brut est mappé directement sur l'UDM. |
device_name |
principal.hostname ou target.hostname |
Le device_name du journal brut est mappé sur principal.hostname si connection.direction_id n'est pas égal à 1. Si connection.direction_id est défini sur 1, il est mappé sur target.hostname . |
device_networks |
intermediary.ip , intermediary.mac |
Le tableau device_networks du journal brut est traité. Les adresses IPv4 et IPv6 sont fusionnées dans intermediary.ip . Les adresses MAC sont converties en minuscules, les traits d'union sont remplacés par des deux-points, puis fusionnés dans intermediary.mac . |
device_os_name |
principal.platform_version ou target.platform_version |
Le device_os_name du journal brut est mappé sur principal.platform_version si connection.direction_id n'est pas égal à 1. Si connection.direction_id est défini sur 1, il est mappé sur target.platform_version . |
device_public_ip |
principal.ip |
Le device_public_ip du journal brut est mappé directement sur l'UDM. |
device_uid |
principal.resource.id ou target.resource.id |
Le device_uid du journal brut est mappé sur principal.resource.id si connection.direction_id n'est pas égal à 1. Si connection.direction_id est défini sur 1, il est mappé sur target.resource.id . |
feature_name |
security_result.category_details |
Le feature_name du journal brut est mappé directement sur l'UDM. |
file.path |
principal.process.file.full_path |
Le file.path du journal brut est mappé directement sur l'UDM. Si actor.file.path existe, il est prioritaire. |
file.sha2 |
principal.process.file.sha256 |
Le file.sha2 du journal brut est converti en minuscules et mappé directement sur l'UDM. Si actor.file.sha2 existe, il est prioritaire. |
log_time |
metadata.event_timestamp |
Le log_time du journal brut est analysé à l'aide de différents formats de date et utilisé comme code temporel de l'événement. |
message |
security_result.summary , network.ip_protocol ou metadata.description |
Le champ message du journal brut est traité. Si elle contient "UDP", network.ip_protocol est défini sur "UDP". S'il contient "IP", network.ip_protocol est défini sur "IP6IN4". Si elle contient "ICMP", network.ip_protocol est défini sur "ICMP". Sinon, il est mappé sur security_result.summary . Si le champ description existe, le champ message est mappé sur metadata.description . |
parent.cmd_line |
principal.process.parent_process.command_line |
Le parent.cmd_line du journal brut est mappé directement sur l'UDM. |
parent.pid |
principal.process.parent_process.pid |
Le parent.pid du journal brut est converti en chaîne et mappé directement sur l'UDM. |
policy.name |
security_result.rule_name |
Le policy.name du journal brut est mappé directement sur l'UDM. |
policy.rule_name |
security_result.description |
Le policy.rule_name du journal brut est mappé directement sur l'UDM. |
policy.rule_uid |
security_result.rule_id |
Le policy.rule_uid du journal brut est mappé directement sur l'UDM. Si policy.uid existe, il est prioritaire. |
policy.uid |
security_result.rule_id |
Le policy.uid du journal brut est mappé directement sur l'UDM. |
product_name |
metadata.product_name |
Le product_name du journal brut est mappé directement sur l'UDM. |
product_uid |
metadata.product_log_id |
Le product_uid du journal brut est mappé directement sur l'UDM. |
product_ver |
metadata.product_version |
Le product_ver du journal brut est mappé directement sur l'UDM. |
severity_id |
security_result.severity |
Si severity_id est défini sur 1, 2 ou 3, security_result.severity est défini sur INFORMATIONAL . Si la valeur est 4, elle est définie sur ERROR . Si la valeur est 5, elle est définie sur CRITICAL . |
threat.id |
security_result.threat_id |
Le threat.id du journal brut est converti en chaîne et mappé directement sur l'UDM. |
threat.name |
security_result.threat_name |
Le threat.name du journal brut est mappé directement sur l'UDM. |
type_id |
metadata.event_type , metadata.product_event_type |
Utilisé avec d'autres champs pour déterminer les metadata.event_type et metadata.product_event_type appropriés. |
user_email |
principal.user.email_addresses |
Le user_email du journal brut est fusionné dans l'UDM. |
user_name |
principal.user.user_display_name |
Le user_name du journal brut est mappé directement sur l'UDM. |
uuid |
target.process.pid |
Le uuid du journal brut est analysé pour extraire l'ID de processus, qui est mappé sur target.process.pid . |
N/A | metadata.vendor_name |
Défini sur "SYMANTEC". |
N/A | metadata.log_type |
Définissez-le sur "SYMANTEC_EVENT_EXPORT". |
N/A | principal.resource.resource_type |
Défini sur "DEVICE" lorsque connection.direction_id n'est pas égal à 1 ou est vide. |
N/A | target.resource.resource_type |
Définissez sur "DEVICE" lorsque connection.direction_id est défini sur 1. |
Modifications
2023-11-07
- Ajout de la prise en charge des journaux au format SYSLOG.
- Ajout de vérifications "not null" pour "parent.cmd_line", "parent.pid", "actor.pid", "actor.cmd_line", "device_name", "device_group", "device_os_name", "device_group", "device_domain", "device_uid" avant le mappage vers UDM.
- "device_name" a été mappé sur "principal.hostname".
- "user_name" a été mappé sur "principal.user.user_display_name".
- Mappage de "actor.user.name" sur "principal.user.user_display_name".
- Mappage de "actor.user.domain" sur "principal.administrative_domain".
- Mappage de "actor.user.sid" sur "principal.user.windows_sid".
- Mappage de "actor.file.size" sur "principal.process.file.size".
- "device_public_ip" a été mappé sur "principal.ip".
- Mappage de "device_networks.ipv6" sur "intermediary.ip".
- Mappage de "user_email" sur "principal.user.email_addresses".
2022-08-19
- Amélioration : réduction du pourcentage d'événements génériques.
- "type_id" a été mappé sur event.idm.read_only_udm.metadata.event_type
- Journaux analysés pour type_id = 21