Collecter les journaux d'accès Web Broadcom Symantec SiteMinder
Ce document explique comment collecter les journaux d'accès Web Broadcom Symantec SiteMinder dans Google Security Operations à l'aide d'un agent Bindplane. L'analyseur transforme les journaux bruts au format JSON en un modèle de données unifié (UDM) structuré. Il extrait les champs des messages de journaux bruts à l'aide de modèles Grok, les renomme et les mappe au schéma UDM, gère différents types d'événements et formats d'utilisateur, et enrichit finalement les données pour l'analyse de sécurité.
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 SiteMinder.
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: CA_SSO_WEB 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 sur Symantec SiteMinder – 12.8
- Vérifiez qu'un serveur X-windows est en cours d'exécution sur votre système.
- Ouvrez une fenêtre de terminal.
Définissez la variable DISPLAY à l'aide de la commande suivante :
export DISPLAY=<IP_ADDRESS>:0.0
- Remplacez
<IP_ADDRESS>
par l'adresse IP du système à partir duquel vous vous connectez à la console. (par exemple,192.168.1.100
).
- Remplacez
Connectez-vous au système hébergeant la console.
Accédez au répertoire
<installation_directory>/siteminder/bin
.- Remplacez
<installation_directory>
par l'emplacement dans le système de fichiers où Policy Server est installé. (par exemple,/opt/CA/siteminder
).
- Remplacez
Ouvrez la console en exécutant la commande suivante :
./smconsole
Cliquez sur l'onglet Données.
Cliquez sur la liste déroulante Base de données, puis sélectionnez Journaux d'audit.
Cliquez sur la liste déroulante Stockage, puis sélectionnez Syslog.
Sélectionnez la valeur LOG_INFO dans le champ Priority (Priorité).
Sélectionnez la valeur LOG_LOCAL0 dans le champ Facility (Établissement).
Cliquez sur OK.
Redémarrer le serveur de règles UNIX
- Connectez-vous au système hébergeant le serveur de règles avec le même compte utilisateur que celui utilisé pour installer le serveur de règles.
- Ouvrez la console de gestion.
- Cliquez sur l'onglet État, puis sur les boutons Arrêter.
- Attendez que tous les services s'arrêtent.
- Dans l'onglet Status (État), cliquez sur les boutons Start (Démarrer).
Table de mappage UDM
Champ de journal | Mappage UDM | Logique |
---|---|---|
Action | event1.idm.read_only_udm.network.http.method | Si le champ Action n'est pas vide, il est mappé sur event1.idm.read_only_udm.network.http.method . Si la valeur est Visit , elle est remplacée par GET . |
AgentName | event1.idm.read_only_udm.target.hostname | Mappé directement à partir du champ AgentName . |
ClientIp | event1.idm.read_only_udm.principal.ip | Extrait du champ ClientIp à l'aide d'un modèle Grok pour extraire l'adresse IP. |
DomainName | event1.idm.read_only_udm.target.administrative_domain | Mappé directement à partir du champ DomainName . |
Événement | event1.idm.read_only_udm.metadata.product_event_type | Mappé directement à partir du champ Event . |
Ressource | event1.idm.read_only_udm.target.url | Mappé directement à partir du champ Resource . |
SessionId | event1.idm.read_only_udm.network.session_id | Mappé directement à partir du champ SessionId . |
Heure | event1.idm.read_only_udm.metadata.event_timestamp | Analysé à partir du champ Time à l'aide de filtres de date pour extraire le code temporel. |
NomUtilisateur | event1.idm.read_only_udm.target.user.userid | La logique gère différents formats du champ UserName et extrait l'ID utilisateur. |
NomUtilisateur | event1.idm.read_only_udm.target.user.email_addresses | La logique gère différents formats du champ UserName et extrait l'adresse e-mail de l'utilisateur. |
NomUtilisateur | event1.idm.read_only_udm.target.user.group_identifiers | La logique gère différents formats du champ UserName et extrait les identifiants de groupe. |
event1.idm.read_only_udm.extensions.auth.type | Définissez sur SSO dans le code du parseur. |
|
event1.idm.read_only_udm.intermediary.hostname | Mappé à partir de logstash.process.host . |
|
event1.idm.read_only_udm.metadata.description | Définissez la valeur du champ message dans des conditions spécifiques liées aux champs Event et AgentName . |
|
event1.idm.read_only_udm.metadata.event_type | Déterminé en fonction de la valeur du champ Event . Valeurs possibles : USER_LOGIN, USER_LOGOUT, USER_UNCATEGORIZED, GENERIC_EVENT |
|
event1.idm.read_only_udm.metadata.log_type | Définissez sur CA_SSO_WEB dans le code du parseur. |
|
event1.idm.read_only_udm.metadata.product_name | Définissez sur Web Access Management dans le code du parseur. |
|
event1.idm.read_only_udm.metadata.vendor_name | Définissez sur Siteminder dans le code du parseur. |
|
event1.idm.read_only_udm.observer.hostname | Définissez la valeur sur logstash.collect.host . |
|
event1.idm.read_only_udm.security_result.action | Déterminé en fonction de la valeur du champ Event . Valeurs possibles : ALLOW, BLOCK |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.