Collecter les journaux Symantec EDR

Compatible avec :

Ce document explique comment ingérer les journaux Symantec Endpoint Detection and Response (EDR) dans Google Security Operations à l'aide de Bindplane. L'analyseur gère les journaux au format JSON ou CEF. Il extrait les champs, les mappe à l'UDM et effectue la classification des types d'événements en fonction du contenu du journal, en gérant les connexions réseau, les événements de processus, l'activité du système de fichiers, les opérations de registre et les événements de connexion/déconnexion des utilisateurs.

Avant de commencer

  • Assurez-vous de disposer d'une instance Google SecOps.
  • Assurez-vous d'utiliser Windows 2016 ou une version ultérieure, ou un hôte Linux avec systemd.
  • Si vous exécutez le programme derrière un proxy, assurez-vous que les ports du pare-feu sont ouverts.
  • Assurez-vous de disposer d'un accès privilégié à Symantec EDR.

Obtenir le fichier d'authentification d'ingestion Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres du SIEM > Agents de collecte.
  3. Téléchargez le fichier d'authentification d'ingestion. 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

Installation de fenêtres

  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 :

    1. Recherchez le fichier config.yaml. En règle générale, il se trouve dans le répertoire /etc/bindplane-agent/ sous Linux ou dans le répertoire d'installation sous Windows.
    2. 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: '/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
            ingestion_labels:
                log_type: 'SYMANTEC_EDR'
                raw_log_field: body
    
    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. Mettez à jour /path/to/ingestion-authentication-file.json en indiquant le chemin d'accès où le fichier d'authentification a été enregistré dans la section Obtenir le fichier d'authentification pour l'ingestion Google SecOps.

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

  • Pour redémarrer l'agent Bindplane sous Linux, exécutez la commande suivante :

    sudo systemctl restart bindplane-agent
    
  • Pour redémarrer l'agent Bindplane sous Windows, vous pouvez utiliser la console Services ou saisir la commande suivante :

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configurer Syslog dans Symantec EDR

  1. Connectez-vous à l'interface utilisateur Web Symantec EDR.
  2. Dans la console cloud EDR, accédez à Environnement > Paramètres.
  3. Sélectionnez un appareil, puis cliquez sur Appareils.
  4. Dans la console de l'appliance EDR, cliquez sur Settings > Appliances (Paramètres > Appliances).
  5. Cliquez sur Modifier l'appliance par défaut.
  6. Double-cliquez sur l'appareil dans la liste Appareils.
  7. Dans la section "Syslog", décochez Utiliser la valeur par défaut (si elle est cochée).
  8. Cliquez sur + Ajouter un serveur Syslog.
  9. Fournissez les informations de configuration suivantes :
    • Hôte : saisissez l'adresse IP de l'agent Bindplane.
    • Protocole : sélectionnez le protocole configuré dans le serveur de l'agent Bindplane, par exemple UDP.
    • Port : saisissez le numéro de port de l'agent Bindplane, par exemple 514.
  10. Cliquez sur Enregistrer.

Table de mappage UDM

Champ de journal Mappage UDM Logique
actor.cmd_line principal.process.command_line Ligne de commande exécutée par le processus de l'acteur.
actor.file.md5 principal.process.file.md5 Hachage MD5 du fichier exécutable de l'acteur.
actor.file.path principal.process.file.full_path Chemin d'accès complet au fichier exécutable de l'acteur.
actor.file.sha2 principal.process.file.sha256 Hachage SHA256 du fichier exécutable de l'acteur.
actor.pid principal.process.pid ID du processus de l'acteur.
actor.uid principal.resource.id Identifiant unique de l'acteur.
actor.user.name principal.user.userid Nom d'utilisateur de l'acteur.
actor.user.sid principal.user.windows_sid SID Windows de l'utilisateur acteur.
attack.technique_name security_result.threat_name Nom de la technique MITRE ATT&CK.
attack.technique_uid security_result.description Utilisé avec attack.technique_name pour renseigner security_result.description au format <technique_uid>: <technique_name>.
collector_device_ip intermediary.ip Adresse IP de l'appareil collecteur.
collector_device_name intermediary.hostname Nom d'hôte de l'appareil collecteur.
collector_name intermediary.resource.name Nom du collecteur.
collector_uid intermediary.resource.id Identifiant unique du collecteur.
connection.bytes_download network.received_bytes Nombre d'octets téléchargés lors de la connexion.
connection.bytes_upload network.sent_bytes Nombre d'octets importés dans la connexion.
connection.direction_id network.direction Direction de la connexion réseau (1 pour ENTRANT, 2 pour SORTANT).
connection.dst_ip target.ip Adresse IP de destination de la connexion.
connection.dst_port target.port Port de destination de la connexion.
connection.src_ip principal.ip Adresse IP source de la connexion.
connection.src_name principal.hostname Nom d'hôte source de la connexion.
connection.src_port principal.port Port source de la connexion.
connection.url.host target.hostname Nom d'hôte dans l'URL de connexion.
connection.url.scheme network.application_protocol Schéma de l'URL de connexion (par exemple, HTTP, HTTPS).
connection.url.text target.url URL de connexion complète.
data_source_url_domain target.url Domaine de l'URL de la source de données.
device_domain principal.administrative_domain/target.administrative_domain Domaine de l'appareil. Mappé au principal ou à la cible en fonction de la logique liée à connection.direction_id.
device_ip principal.ip/target.ip L'adresse IP de l'appareil Mappé au principal ou à la cible en fonction de la logique liée à connection.direction_id.
device_name principal.hostname/target.hostname Le nom de l'appareil Mappé au principal ou à la cible en fonction de la logique liée à connection.direction_id.
device_os_name principal.platform_version/target.platform_version Système d'exploitation de l'appareil. Mappé au principal ou à la cible en fonction de la logique liée à connection.direction_id.
device_uid target.asset_id Identifiant unique de l'appareil, précédé de Device ID:.
directory.path target.file.full_path Chemin d'accès au répertoire.
domain_name target.administrative_domain Nom du domaine.
event_actor.file.path target.process.file.full_path Chemin d'accès au fichier exécutable de l'acteur de l'événement.
event_actor.pid target.process.pid ID de processus de l'acteur de l'événement.
event_desc metadata.description Description de l'événement.
externalIP target.ip Adresse IP externe.
file.md5 target.file.md5 Hachage MD5 du fichier.
file.path target.file.full_path Chemin d'accès au fichier.
file.rep_prevalence_band additional.fields.value.number_value Tranche de prévalence de la réputation du fichier, mappée avec la clé prevalence_score.
file.rep_score_band additional.fields.value.number_value Tranche du score de réputation du fichier, mappée avec la clé reputation_score.
file.sha2 target.file.sha256 Hachage SHA-256 du fichier.
file.size target.file.size Taille du fichier.
internalHost principal.hostname Nom d'hôte interne.
internalIP principal.ip Adresse IP interne.
internal_port principal.port Port interne.
kernel.name target.resource.name Nom de l'objet du noyau. La valeur de target.resource.type est définie sur MUTEX.
message metadata.description Message de journal.
module.md5 target.process.file.md5 Hachage MD5 du module.
module.path target.process.file.full_path Chemin d'accès au module.
module.sha2 target.process.file.sha256 Hachage SHA256 du module.
module.size target.process.file.size Taille du module.
process.cmd_line target.process.command_line Ligne de commande du processus.
process.file.md5 target.process.file.md5 Hachage MD5 du fichier exécutable du processus.
process.file.path target.process.file.full_path Chemin d'accès au fichier exécutable du processus.
process.file.sha2 target.process.file.sha256 Hachage SHA256 du fichier exécutable du processus.
process.pid target.process.pid ID du processus.
process.uid target.resource.id Identifiant unique du processus.
process.user.name target.user.userid Nom d'utilisateur associé au processus.
process.user.sid target.user.windows_sid SID Windows de l'utilisateur du processus.
product_name metadata.product_name Nom du produit qui génère le journal.
product_ver metadata.product_version Version du produit qui génère le journal.
reg_key.path target.registry.registry_key Chemin d'accès de la clé de registre.
reg_value.data target.registry.registry_value_data Données de la valeur de registre.
reg_value.name target.registry.registry_value_name Nom de la valeur de registre.
reg_value.path target.registry.registry_key Chemin d'accès à la clé de registre pour la valeur.
security_result.severity security_result.severity Gravité du résultat de sécurité. Traduit la valeur numérique en énumération UDM (par exemple, 1 = FAIBLE, 5 = MOYEN, 10 = FAIBLE, 15 = FAIBLE).
session.id network.session_id ID de la session.
session.user.name target.user.userid Nom d'utilisateur associé à la session.
sid principal.user.userid Identifiant de sécurité (SID).
status_detail security_result.summary Informations supplémentaires sur l'état.
type_id metadata.product_event_type ID du type d'événement.
user_agent_ip target.ip Adresse IP de l'agent utilisateur.
user_name principal.user.userid/target.user.user_display_name Nom d'utilisateur. Mappé au principal ou à la cible en fonction de la logique liée à l'analyse CEF ou JSON.
user_uid target.user.userid Identifiant unique de l'utilisateur.
uuid metadata.product_log_id UUID de l'événement.
event.idm.read_only_udm.metadata.event_timestamp event.idm.read_only_udm.metadata.event_timestamp Horodatage de l'événement. Dérivé de log_time ou CEF device_time.
event.idm.read_only_udm.metadata.log_type event.idm.read_only_udm.metadata.log_type Type de journal. Codé en dur sur SYMANTEC_EDR.
event.idm.read_only_udm.metadata.vendor_name event.idm.read_only_udm.metadata.vendor_name Nom du fournisseur. Codé en dur sur Symantec.
event.idm.read_only_udm.extensions.auth.type event.idm.read_only_udm.extensions.auth.type Type d'authentification. Définissez la valeur sur MACHINE pour les événements de connexion et de déconnexion.
security_result.action security_result.action Action entreprise à la suite de l'événement de sécurité. Défini sur ALLOW pour les connexions et déconnexions réussies.

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