Collecter les journaux Symantec EDR
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
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres du SIEM > Agents de collecte.
- 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
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres SIEM> Profil.
- Copiez et enregistrez le numéro client de la section Informations sur l'organisation.
Installer l'agent Bindplane
Installation de fenêtres
- 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 de Linux
- Ouvrez un terminal avec les 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 plus d'options d'installation, consultez ce guide d'installation.
Configurer l'agent Bindplane pour ingérer Syslog et l'envoyer à Google SecOps
Accédez au fichier de configuration :
- 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. - Ouvrez le fichier à l'aide d'un éditeur de texte (par exemple,
nano
,vi
ou le Bloc-notes).
- Recherchez le fichier
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
Remplacez le port et l'adresse IP selon les besoins de votre infrastructure.
Remplacez
<customer_id>
par le numéro client réel.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
- Connectez-vous à l'interface utilisateur Web Symantec EDR.
- Dans la console cloud EDR, accédez à Environnement > Paramètres.
- Sélectionnez un appareil, puis cliquez sur Appareils.
- Dans la console de l'appliance EDR, cliquez sur Settings > Appliances (Paramètres > Appliances).
- Cliquez sur Modifier l'appliance par défaut.
- Double-cliquez sur l'appareil dans la liste Appareils.
- Dans la section "Syslog", décochez Utiliser la valeur par défaut (si elle est cochée).
- Cliquez sur + Ajouter un serveur Syslog.
- 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
.
- 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.