Collecter les journaux d'audit du portail d'assistance Broadcom
Ce document explique comment ingérer les journaux d'audit du portail d'assistance Broadcom dans Google Security Operations à l'aide de l'agent Bindplane.
Le portail d'assistance Broadcom offre un accès centralisé aux ressources d'assistance, à la gestion des demandes et aux téléchargements de produits pour les produits Broadcom destinés aux entreprises. La plate-forme génère des journaux d'audit qui enregistrent les événements d'authentification des utilisateurs, les activités d'exécution des jobs, l'accès aux ressources et les opérations administratives dans l'infrastructure du portail.
Avant de commencer
Assurez-vous de remplir les conditions suivantes :
- Une instance Google SecOps
- Windows Server 2016 ou version ultérieure, ou hôte Linux avec
systemd - Connectivité réseau entre l'agent Bindplane et l'infrastructure du portail d'assistance Broadcom
- Si vous exécutez l'agent derrière un proxy, assurez-vous que les ports de pare-feu sont ouverts conformément aux exigences de l'agent Bindplane.
- Accès administrateur au portail d'assistance Broadcom avec les autorisations nécessaires pour configurer le transfert syslog
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
Installez l'agent Bindplane sur votre système d'exploitation Windows ou Linux en suivant les instructions ci-dessous.
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" /quietAttendez la fin de l'installation.
Vérifiez l'installation en exécutant la commande suivante :
sc query observiq-otel-collectorLe service doit être indiqué comme RUNNING (EN COURS D'EXÉCUTION).
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.shAttendez la fin de l'installation.
Vérifiez l'installation en exécutant la commande suivante :
sudo systemctl status observiq-otel-collector
Le service doit être indiqué comme actif (en cours d'exécution).
Autres ressources d'installation
Pour obtenir d'autres options d'installation et de dépannage, consultez le guide d'installation de l'agent Bindplane.
Configurer l'agent Bindplane pour ingérer les journaux syslog et les envoyer à Google SecOps
Localiser le fichier de configuration
Linux :
sudo nano /etc/bindplane-agent/config.yamlWindows :
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Modifiez le fichier de configuration
Remplacez l'intégralité du contenu de
config.yamlpar la configuration suivante :receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/broadcom: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: 'your-customer-id' endpoint: malachiteingestion-pa.googleapis.com log_type: BROADCOM_SUPPORT_PORTAL raw_log_field: body service: pipelines: logs/broadcom_to_chronicle: receivers: - udplog exporters: - chronicle/broadcomRemplacez les espaces réservés suivants :
Configuration du récepteur :
listen_address: adresse IP et port à écouter :0.0.0.0:514pour écouter sur toutes les interfaces sur le port 514 (nécessite l'accès root sur Linux)0.0.0.0:1514pour écouter sur un port non privilégié (recommandé pour Linux non root)
Options de type de récepteur :
udplogpour UDP syslog (par défaut)tcplogpour syslog TCP
Configuration de l'exportateur :
creds_file_path: chemin d'accès complet au fichier d'authentification de l'ingestion Google SecOps :- Linux :
/etc/bindplane-agent/ingestion-auth.json - Windows :
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux :
customer_id: votrecustomer ID. Pour en savoir plus, consultez Obtenir l'ID client Google SecOps.endpoint: URL du point de terminaison régional :- États-Unis :
malachiteingestion-pa.googleapis.com - Europe :
europe-malachiteingestion-pa.googleapis.com - Asie :
asia-southeast1-malachiteingestion-pa.googleapis.com - Pour obtenir la liste complète, consultez Points de terminaison régionaux.
- États-Unis :
Enregistrez le fichier de configuration.
Après avoir modifié le fichier, enregistrez-le :
- Linux : appuyez sur
Ctrl+O, puis surEnter, puis surCtrl+X. - Windows : cliquez sur Fichier > Enregistrer.
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 observiq-otel-collectorVérifiez que le service est en cours d'exécution :
sudo systemctl status observiq-otel-collectorRecherchez les erreurs dans les journaux :
sudo journalctl -u observiq-otel-collector -f
Pour redémarrer l'agent Bindplane sous Windows :
Choisissez l'une des options suivantes :
Invite de commandes ou PowerShell en tant qu'administrateur :
net stop observiq-otel-collector && net start observiq-otel-collectorConsole Services :
- Appuyez sur
Win+R, saisissezservices.msc, puis appuyez sur Entrée. - Localisez observIQ OpenTelemetry Collector.
- Effectuez un clic droit, puis sélectionnez Redémarrer.
- Appuyez sur
Vérifiez que le service est en cours d'exécution :
sc query observiq-otel-collectorRecherchez les erreurs dans les journaux :
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Configurer le transfert syslog du portail d'assistance Broadcom
Le portail d'assistance Broadcom peut transférer les événements de journaux d'audit via syslog vers des collecteurs externes pour l'intégration SIEM.
Configurer la journalisation syslog à distance
- Connectez-vous à la console d'administration du portail d'assistance Broadcom.
- Accédez à Administration > Journaux > Journalisation à distance.
- Activez Remote Syslog.
Configurez les paramètres syslog suivants :
- Adresse du serveur Syslog : saisissez l'adresse IP ou le nom d'hôte de l'hôte de l'agent Bindplane (par exemple,
192.168.1.100). - Port : saisissez le port correspondant à l'agent Bindplane
listen_address(par exemple,514). - Protocole : sélectionnez UDP (par défaut) ou TCP pour correspondre au type de récepteur de l'agent Bindplane.
- Adresse du serveur Syslog : saisissez l'adresse IP ou le nom d'hôte de l'hôte de l'agent Bindplane (par exemple,
Cliquez sur Enregistrer.
Sélectionner des catégories d'événements d'audit
Dans la configuration Journalisation à distance, sélectionnez les catégories d'événements d'audit à transférer :
- Événements d'authentification des utilisateurs : activités de connexion et de déconnexion
- Événements de job : état d'exécution du job et changements d'état
- Événements d'accès aux ressources : accès aux ressources d'assistance et aux téléchargements
- Événements administratifs : modifications de la configuration et opérations administratives
Cliquez sur Enregistrer.
Vérifier le transfert Syslog
- Après avoir enregistré la configuration Syslog, effectuez une action de test dans le portail d'assistance Broadcom (par exemple, connectez-vous ou accédez à une ressource).
Consultez les journaux de l'agent Bindplane pour les messages syslog entrants :
- Linux :
sudo journalctl -u observiq-otel-collector -f - Windows :
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- Linux :
Vérifiez que les messages du journal d'audit apparaissent dans les journaux.
Table de mappage UDM
| Champ de journal | Mappage UDM | Logique |
|---|---|---|
| ParallelDestination, STORAGE_TYPE, JOB_NAME, kubernetes.docker_id, kubernetes.pod_id | target.resource.attribute.labels | Fusionné avec les libellés correspondants |
| destinationName, responseDestinationName, DESTINATION_NAME | target.application | Valeur de DESTINATION_NAME si elle n'est pas vide, sinon responseDestinationName si elle n'est pas nulle ni vide, sinon destinationName |
| kubernetes.container_hash | target.file.full_path | Extrait à l'aide du modèle grok %{DATA:filepath}:%{GREEDYDATA:file_sha} |
| kubernetes.container_hash | target.file.sha256 | Extrait à l'aide du modèle grok %{DATA:filepath}:%{GREEDYDATA:file_sha} |
| groupId | target.user.group_identifiers | Fusionné à partir du groupe |
| dispatch, companyId | additional.fields | Fusionné avec dispatch_label et companyId_label |
| response, responseId | security_result.detection_fields | Fusionné avec response_label et responseId_label |
| kubernetes.container_image, kubernetes.container_name, kubernetes.namespace_name, kubernetes.pod_name | principal.resource.attribute.labels | Fusionné avec les libellés correspondants |
| GROUP_NAME | principal.group.group_display_name | Valeur copiée directement |
| kubernetes.host | principal.asset.hostname | Valeur copiée directement |
| kubernetes.host | principal.hostname | Valeur copiée directement |
| payload | principal.resource.product_object_id | Valeur copiée directement |
| de gravité, | security_result.severity | En majuscules et défini si dans la liste autorisée |
| description, JOB_STATE | security_result.description | Valeur de la description si elle n'est pas vide, sinon JOB_STATE |
| timestramp | metadata.event_timestamp | Analysé à l'aide des formats ISO8601, yyyy-MM-ddTHH:mm:ss.SSSSSSSSSZ et yyyy-MM-dd HH:mm:ss.SSS |
| metadata.event_type | Définissez sur "USER_LOGIN" si has_principal, has_target, user_login ; "USER_LOGOUT" si has_principal, has_target, user_logout ; "STATUS_UPDATE" si has_principal ; sinon "GENERIC_EVENT". | |
| extensions.auth.type | Définissez sur "AUTHTYPE_UNSPECIFIED" si l'événement concerne la connexion ou la déconnexion d'un utilisateur. | |
| metadata.product_name | Définissez-le sur "BROADCOM_SUPPORT_PORTAL". | |
| metadata.vendor_name | Définissez-le sur "BROADCOM_SUPPORT_PORTAL". |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.