Collecter les journaux du contrôleur sans fil Aruba et du point d'accès
Ce document explique comment collecter les journaux des contrôleurs sans fil Aruba et des points d'accès à l'aide de Bindplane. L'analyseur traite les messages SYSLOG, en extrayant les champs liés aux informations sur l'observateur, l'intermédiaire et le point d'accès. Il mappe ensuite ces champs sur le modèle de données unifié (UDM), enrichit les données d'événement avec la gravité des résultats de sécurité et gère diverses conditions d'erreur au cours du processus.
Avant de commencer
- Assurez-vous de disposer d'une instance Google Security Operations.
- Assurez-vous d'utiliser Windows 2016 ou une version ultérieure, ou un hôte Linux avec
systemd
. - Si vous exécutez l'application derrière un proxy, assurez-vous que les ports du pare-feu sont ouverts.
- Assurez-vous de disposer d'un accès privilégié à un contrôleur sans fil Aruba.
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 le numéro client Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres du SIEM > Profil.
- Copiez et sauvegardez le numéro client dans la section Détails de l'organisation.
Installer l'agent Bindplane
Installation de Windows
- Ouvrez l'invite de commande 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 des 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
Autres ressources d'installation
- Pour plus d'options d'installation, consultez ce guide d'installation.
Configurer l'agent Bindplane pour qu'il ingère les journaux Syslog et les envoie à 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 (
nano
,vi
ou Bloc-notes, par exemple).
- 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: ARUBA_WIRELESS 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 dans votre infrastructure si nécessaire.
Remplacez
<customer_id>
par le numéro client réel.Remplacez
/path/to/ingestion-authentication-file.json
par le chemin d'accès où le fichier d'authentification a été enregistré dans la section Obtenir le fichier d'authentification d'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 le contrôleur et le point d'accès sans fil Aruba
- Connectez-vous à l'UI Web du contrôleur Aruba.
- Accédez au menu du haut et sélectionnez Configuration > Système.
- Sélectionnez Journalisation pour ouvrir la page de configuration de la journalisation.
- Dans la section Syslog servers (Serveurs Syslog), cliquez sur + Add (Ajouter) pour ajouter un serveur Syslog.
- Un nouveau formulaire s'affiche dans lequel vous devez saisir les informations suivantes :
- Nom: saisissez un nom unique pour le serveur syslog (par exemple,
Google SecOps Syslog
). - Adresse IP: saisissez l'adresse IP de Bindplane.
- Port: saisissez le numéro de port Bindplane (généralement 514 pour UDP).
- Logging Facility (Installation de journalisation) : sélectionnez local 6 dans le menu (option couramment utilisée pour les appareils réseau).
- Logging Level (Niveau de journalisation) : sélectionnez Informational (Informationnel) pour enregistrer des journaux d'informations.
- Format: sélectionnez le format bsd-standard (il s'agit du format syslog par défaut utilisé par les contrôleurs Aruba).
- Nom: saisissez un nom unique pour le serveur syslog (par exemple,
- Cliquez sur Soumettre pour enregistrer vos paramètres.
- Cliquez sur Modifications en attente.
Cliquez sur Déployer les modifications pour appliquer la nouvelle configuration du serveur Syslog.
Accédez aux paramètres Niveau de journalisation et définissez-le sur Informationnel pour chacune des catégories suivantes :
- Réseau
- Tous
- Cluster
- DHCP
- GP
- Mobilité
- Packet-Dump
- SDN
Tableau de mappage UDM
Champ de journal | Mappage UDM | Logique |
---|---|---|
Additional Info |
read_only_udm.security_result.description |
La valeur Additional Info du journal brut est mappée sur le champ UDM security_result.description . |
AP |
read_only_udm.target.hostname |
Lorsqu'elle est présente dans le journal brut, la valeur après AP: est extraite et mappée sur le champ UDM target.hostname . |
BSSID |
read_only_udm.target.mac , read_only_udm.principal.resource.name (lorsque le type de ressource est BSSID) |
La valeur BSSID du journal brut est mappée sur target.mac . Il est également utilisé comme nom de ressource lorsque principal.resource.type est BSSID . |
COMMAND |
read_only_udm.principal.process.command_line |
La valeur de la commande du journal brut est mappée sur le champ UDM principal.process.command_line . |
Dst-MAC |
read_only_udm.target.mac |
Si elle est présente, la valeur Dst-MAC du journal brut est mappée sur le champ UDM target.mac . |
SERVER |
read_only_udm.target.hostname |
Le nom du serveur du journal brut est mappé sur le champ UDM target.hostname , le cas échéant. |
SERVER-IP |
read_only_udm.target.ip |
Le cas échéant, l'adresse IP du serveur du journal brut est mappée sur le champ UDM target.ip . |
Src-MAC |
read_only_udm.principal.mac |
Si elle est présente, la valeur Src-MAC du journal brut est mappée sur le champ UDM principal.mac . |
SSID |
read_only_udm.target.resource.name (lorsque le type de ressource est SSID) |
La valeur du SSID du journal brut est utilisée comme nom de ressource lorsque target.resource.type est SSID . |
USER |
read_only_udm.target.user.userid |
Le cas échéant, l'ID utilisateur du journal brut est mappé sur le champ UDM target.user.userid . |
USERIP |
read_only_udm.principal.ip , read_only_udm.observer.ip |
Le cas échéant, l'adresse IP de l'utilisateur du journal brut est mappée sur les champs UDM principal.ip et observer.ip . |
USERMAC |
read_only_udm.principal.mac |
Le cas échéant, l'adresse MAC de l'utilisateur du journal brut est mappée sur le champ UDM principal.mac . |
USERNAME |
read_only_udm.principal.user.userid |
Le cas échéant, le nom d'utilisateur du journal brut est mappé sur le champ UDM principal.user.userid . |
action |
read_only_udm.security_result.action |
Valeur de l'action du journal brut (par exemple, permit , deny ) est mappé sur le champ UDM security_result.action . |
apname |
read_only_udm.target.hostname |
Le nom de l'AP du journal brut est mappé sur le champ UDM target.hostname , le cas échéant. |
bssid |
read_only_udm.target.mac |
Si elle est présente, la valeur BSSID du journal brut est mappée sur le champ UDM target.mac . |
collection_time.seconds |
read_only_udm.metadata.event_timestamp.seconds |
La valeur en secondes de l'heure de collecte du journal brut est mappée sur le champ UDM metadata.event_timestamp.seconds . |
device_ip |
read_only_udm.intermediary.ip |
L'adresse IP de l'appareil du journal brut ou de logstash est mappée sur le champ UDM intermediary.ip . |
dstip |
read_only_udm.target.ip |
Le cas échéant, l'adresse IP de destination du journal brut est mappée sur le champ UDM target.ip . |
dstport |
read_only_udm.target.port |
Le port de destination du journal brut est mappé sur le champ UDM target.port , le cas échéant. |
event_id |
read_only_udm.metadata.product_event_type |
L'ID d'événement du journal brut est utilisé pour créer le champ metadata.product_event_type dans l'UDM, avec un préfixe Event ID: . |
event_message |
read_only_udm.security_result.summary |
Le message d'événement du journal brut est mappé sur le champ UDM security_result.summary . |
log.source.address |
read_only_udm.observer.ip |
L'adresse source du journal est mappée sur le champ UDM observer.ip . |
log_type |
read_only_udm.metadata.log_type |
Le type de journal du journal brut est mappé sur le champ UDM metadata.log_type . |
logstash.collect.host |
read_only_udm.observer.ip ou read_only_udm.observer.hostname |
L'hôte de collecte Logstash est mappé sur observer.ip s'il s'agit d'une adresse IP ou sur observer.hostname s'il s'agit d'un nom d'hôte. |
logstash.ingest.host |
read_only_udm.intermediary.hostname |
L'hôte d'ingestion Logstash est mappé sur le champ UDM intermediary.hostname . |
logstash.process.host |
read_only_udm.intermediary.hostname |
L'hôte du processus Logstash est mappé sur le champ UDM intermediary.hostname . |
program |
read_only_udm.target.application |
Le nom du programme du journal brut est mappé sur le champ UDM target.application . |
serverip |
read_only_udm.target.ip |
Le cas échéant, l'adresse IP du serveur du journal brut est mappée sur le champ UDM target.ip . |
servername |
read_only_udm.target.hostname |
Le nom du serveur du journal brut est mappé sur le champ UDM target.hostname , le cas échéant. |
srcip |
read_only_udm.principal.ip |
Le cas échéant, l'adresse IP source du journal brut est mappée sur le champ UDM principal.ip . |
srcport |
read_only_udm.principal.port |
Le port source du journal brut est mappé sur le champ UDM principal.port , le cas échéant. |
syslog_host |
read_only_udm.intermediary.hostname |
L'hôte syslog du journal brut est mappé sur le champ UDM intermediary.hostname . |
timestamp |
read_only_udm.metadata.event_timestamp |
L'horodatage du journal brut est analysé et mappé sur le champ UDM metadata.event_timestamp . |
userip |
read_only_udm.principal.ip , read_only_udm.observer.ip |
Le cas échéant, l'adresse IP de l'utilisateur du journal brut est mappée sur les champs UDM principal.ip et observer.ip . |
usermac |
read_only_udm.principal.mac |
Le cas échéant, l'adresse MAC de l'utilisateur du journal brut est mappée sur le champ UDM principal.mac . |
username |
read_only_udm.principal.user.userid |
Le cas échéant, le nom d'utilisateur du journal brut est mappé sur le champ UDM principal.user.userid . Dérivé de event_id et de la logique dans l'analyseur. Déterminé par l'analyseur en fonction de l'ID d'événement et du contenu du message de journal. Codé en dur sur Wireless . Codé en dur sur Aruba . Déterminé par l'analyseur en fonction de l'ID d'événement et du contenu du message de journal. Déterminé par l'analyseur en fonction de l'ID d'événement et du contenu du message de journal. Extrait du message de journal brut à l'aide d'une expression régulière. Déterminé par l'analyseur en fonction de l'ID d'événement et du contenu du message de journal. Un objet vide est ajouté lorsque le type d'événement est USER_LOGIN ou un événement d'authentification associé. Déterminé par l'analyseur en fonction du protocole réseau utilisé dans l'événement (par exemple, TCP, UDP, ICMP, IGMP). Contient des champs supplémentaires extraits du journal brut en fonction de conditions spécifiques. Par exemple, ap_name est ajouté en tant que paire clé-valeur lorsqu'il est présent. Défini sur BSSID lorsqu'un BSSID est présent dans le contexte du principal. Défini sur SSID lorsqu'un SSID est présent dans le contexte de la cible. Contient des paires clé-valeur d'informations de détection pertinentes extraites du journal brut, telles que le BSSID ou le SSID. |
Modifications
2024-12-27
Amélioration :
- Ajout d'un format Grok pour prendre en charge le nouveau format de journaux syslog.
2024-09-04
Amélioration :
- Ajout de la compatibilité avec un nouveau format de journaux SYSLOG.
2024-08-26
Amélioration :
- Ajout de la prise en charge de la gestion des journaux SYSLOG non analysés.
- Mappage de
details
surmetadata.description
.
2024-06-18
Amélioration :
- Ajout de la prise en charge de la gestion des journaux SYSLOG non analysés.
2024-04-18
Amélioration :
- Ajout d'un format Grok pour extraire une valeur valide de
ap_name
. - Mappage de
ap_name
suradditional.fields
.
2023-05-25
Correction de bug:
- Échec de la journalisation analysée en raison d'un format de journal différent.
2022-09-15
Correction de bug:
- Modèle grok modifié pour analyser les journaux qui peuvent comporter un champ de date dans le code temporel du journal. Certains journaux peuvent également ne pas comporter la clé
userip
. - Modification de
metadata.event_type
deGENERIC_EVENT
àSTATUS_UPDATE
dans la mesure du possible.
2022-08-23
Amélioration :
- Migration de l'analyseur spécifique au client vers l'analyseur par défaut.
- Mise à jour de la mise en correspondance de "metadata.event_type" de "GENERIC_EVENT" à "USER_RESOURCE_ACCESS" lorsque event_id est "132053".
2022-03-30
Amélioration :
- Ajout des ID d'événement suivants :
124003
,126037
,126038
,199801
,235008
,235009
,304119
,306602
,326091
,326098
,326271
,326272
,326273
,326274
,326275
,326276
,326277
,326278
,326284
,341004
,350008
,351008
,358000
,393000
,399815
,520013
,522274
,541004
- Modification de
metadata.event_type
lorsqueEvent Id
est126034
,126064
,127064
,132006
,132030
,132093
,132094
ou132197
, deGENERIC_EVENT
àSCAN_UNCATEGORIZED
- Modification de
metadata.event_type
lorsqueEvent Id
est132207
, deGENERIC_EVENT
àNETWORK_CONNECTION
- Modification de
metadata.event_type
lorsqueEvent Id
est520002
, deGENERIC_EVENT
àUSER_UNCATEGORIZED
intermediary.hostname
,intermediary.mac
,intermediary.ip
,target.application
ettarget.process.pid
mappéslogstash.irm_site
,logstash.irm_environment
etlogstash.irm_region
ont été mappés suradditional.fields
.
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.