Collecter les journaux d'accès Web Broadcom Symantec SiteMinder

Compatible avec :

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

  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: CA_SSO_WEB
                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 sur Symantec SiteMinder – 12.8

  1. Vérifiez qu'un serveur X-windows est en cours d'exécution sur votre système.
  2. Ouvrez une fenêtre de terminal.
  3. 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).
  4. Connectez-vous au système hébergeant la console.

  5. 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).
  6. Ouvrez la console en exécutant la commande suivante :

    ./smconsole
    
  7. Cliquez sur l'onglet Données.

  8. Cliquez sur la liste déroulante Base de données, puis sélectionnez Journaux d'audit.

  9. Cliquez sur la liste déroulante Stockage, puis sélectionnez Syslog.

  10. Sélectionnez la valeur LOG_INFO dans le champ Priority (Priorité).

  11. Sélectionnez la valeur LOG_LOCAL0 dans le champ Facility (Établissement).

  12. Cliquez sur OK.

Redémarrer le serveur de règles UNIX

  1. 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.
  2. Ouvrez la console de gestion.
  3. Cliquez sur l'onglet État, puis sur les boutons Arrêter.
  4. Attendez que tous les services s'arrêtent.
  5. 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.