Raccogliere i log IPS di Aruba
Questo documento spiega come importare i log Aruba IPS in Google Security Operations utilizzando Bindplane. Il parser estrae eventi, notifiche, punti di accesso non autorizzati e informazioni sui punti di accesso WIDS dai log in formato JSON. Trasforma i dati dei log non elaborati in UDM mappando i campi, gestendo vari tipi di eventi (accesso/disconnessione utente, eventi di rete, eventi di sicurezza) e arricchendo i dati con informazioni contestuali come canale, SSID, BSSID e gravità. Il parser esegue anche la normalizzazione dei timestamp e la gestione degli errori per JSON non validi.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Un'istanza Google SecOps
- Un host Windows 2016 o versioni successive o Linux con
systemd - Se l'agente viene eseguito dietro un proxy, assicurati che le porte del firewall siano aperte in base ai requisiti dell'agente Bindplane.
- Accesso privilegiato alla console di gestione o alla CLI del dispositivo Aruba
Recuperare il file di autenticazione importazione di Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Agenti di raccolta.
- Scarica il file di autenticazione importazione. Salva il file in modo sicuro sul sistema in cui verrà installato Bindplane.
Recuperare l'ID cliente Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Profilo.
- Copia e salva l'ID cliente dalla sezione Dettagli dell'organizzazione.
Installa l'agente Bindplane
Installa l'agente Bindplane sul sistema operativo Windows o Linux seguendo le istruzioni riportate di seguito.
Installazione di Windows
- Apri il prompt dei comandi o PowerShell come amministratore.
Esegui questo comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Installazione di Linux
- Apri un terminale con privilegi root o sudo.
Esegui questo comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Risorse aggiuntive per l'installazione
- Per ulteriori opzioni di installazione, consulta questa guida all'installazione.
Configura l'agente Bindplane per importare Syslog e inviarlo a Google SecOps
Accedi al file di configurazione:
- Individua il file
config.yaml. In genere si trova nella directory/etc/bindplane-agent/su Linux o nella directory di installazione su Windows. - Apri il file utilizzando un editor di testo (ad esempio
nano,vio Blocco note).
- Individua il file
Modifica il file
config.yamlcome segue: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_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: YOUR_CUSTOMER_ID_HERE endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'ARUBA_IPS' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels- Sostituisci la porta e l'indirizzo IP in base alle esigenze della tua infrastruttura.
- Sostituisci
<YOUR_CUSTOMER_ID_HERE>con l'ID cliente effettivo. - Aggiorna
/path/to/ingestion-authentication-file.jsonal percorso in cui è stato salvato il file di autenticazione nella sezione Recupera il file di autenticazione per l'importazione di Google SecOps. - Aggiorna il valore
endpointin modo che corrisponda alla regione del tuo tenant.
Riavvia l'agente Bindplane per applicare le modifiche
Per riavviare l'agente Bindplane in Linux, esegui questo comando:
sudo systemctl restart bindplane-agentPer riavviare l'agente Bindplane in Windows, puoi utilizzare la console Servizi o inserire il seguente comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configurare l'inoltro di Syslog sui dispositivi Aruba
Scegli il metodo di configurazione in base al tipo di dispositivo Aruba:
Opzione A: controller Aruba (AOS-8)
Questa opzione descrive in dettaglio i passaggi per configurare l'inoltro di Syslog sui controller Aruba che eseguono AOS-8.
Utilizzo della GUI web (consigliato per il formato CEF)
- Accedi all'interfaccia web del controller Aruba.
- Nella gerarchia dei nodi Rete gestita, vai a Configurazione > Sistema > Logging > Server Syslog.
- Per aggiungere un server di logging, fai clic su + nella sezione Server Syslog.
- Fornisci i seguenti dettagli di configurazione:
- Indirizzo IP server: inserisci l'indirizzo IP dell'agente Bindplane.
- Porta: inserisci
514(o la porta configurata in Bindplane). - Protocollo: seleziona UDP o TCP, a seconda della configurazione dell'agente Bindplane.
- Fai clic su Applica.
- Per selezionare i tipi di messaggi che vuoi registrare, seleziona Livelli di logging.
- Seleziona la categoria o la sottocategoria da registrare.
- Per selezionare il livello di gravità per la categoria o la sottocategoria, seleziona il livello dall'elenco a discesa Livello di logging.
- Seleziona il formato di logging CEF o BSD-standard dall'elenco a discesa Formato.
- Il formato CEF (Common Event Format) di ArcSight è consigliato per la registrazione strutturata.
- Fai clic su Invia.
- Fai clic su Modifiche in sospeso.
- Nella finestra Modifiche in attesa, seleziona la casella di controllo e fai clic su Esegui il deployment delle modifiche.
Opzione B: Aruba Instant AP
Questa sezione descrive la procedura per configurare un server Syslog su un punto di accesso (AP) Aruba Instant tramite la relativa interfaccia utente web o interfaccia a riga di comando (CLI).
Utilizzo della WebUI
- Accedi all'interfaccia web di Aruba Instant.
- Nella finestra principale di Instant, fai clic sul link Sistema.
- Fai clic su Mostra opzioni avanzate per visualizzare le opzioni avanzate.
- Fai clic sulla scheda Monitoraggio.
- Vengono visualizzati i dettagli della scheda Monitoraggio.
- Nel campo Server Syslog della sezione Server, inserisci l'indirizzo IP dell'agente Bindplane.
- Nella sezione Livelli di funzionalità Syslog, seleziona i valori richiesti per configurare i livelli di funzionalità Syslog.
- Livello Syslog: log dettagliato sui livelli Syslog.
- AP-Debug: log dettagliato sul dispositivo Instant AP.
- Rete: log relativo alla modifica della rete, ad esempio quando viene aggiunto un nuovo Instant AP a una rete.
- Sicurezza: log sulla sicurezza della rete, ad esempio quando un client si connette utilizzando una password errata.
- Sistema: log sulla configurazione e sullo stato del sistema.
- User: log importanti sul client.
- User-Debug: log dettagliato sul client.
- Wireless: log sulla radio.
- Fai clic su Ok per salvare la configurazione.
Utilizzo della CLI
- Accedi alla CLI Aruba Instant AP.
Attiva la modalità di configurazione:
configure terminalConfigura il server e il livello syslog:
syslog-server <BINDPLANE_IP_ADDRESS> syslog-level warnings
- Sostituisci
<BINDPLANE_IP_ADDRESS>con l'indirizzo IP dell'host dell'agente Bindplane. - Regola il livello di gravità in base alle esigenze.
Opzione C: Aruba AOS-S (switch)
- Accedi alla CLI dello switch Aruba AOS-S.
Attiva la modalità di configurazione:
configureConfigura il server Syslog:
logging <BINDPLANE_IP_ADDRESS> logging severity warnings- Sostituisci
<BINDPLANE_IP_ADDRESS>con l'indirizzo IP dell'host dell'agente Bindplane. - Regola il livello di gravità in base alle esigenze.
- Sostituisci
Salva la configurazione:
write memory
Opzione D: Aruba Central (on-premise)
- Accedi all'interfaccia web di Aruba Central.
- Vai a Sistema > Amministrazione di sistema > Notifiche > Server Syslog.
- Fai clic su Aggiungi o Attiva.
- Fornisci i seguenti dettagli di configurazione:
- Host: inserisci l'indirizzo IP dell'agente Bindplane.
- Porta: inserisci
514(o la porta configurata in Bindplane). - Protocollo: seleziona UDP o TCP, a seconda della configurazione dell'agente Bindplane.
- Struttura: seleziona Local7 o in base alle esigenze.
- Gravità: seleziona il livello di log minimo (ad esempio Avviso o Informazioni).
- Fai clic su Salva.
Tabella di mappatura UDM
| Campo log | Mappatura UDM | Logic |
|---|---|---|
notifications.created_timestamp |
metadata.event_timestamp.seconds |
Il campo del log non elaborato notifications.created_timestamp viene convertito in secondi e mappato. I nanosecondi vengono persi nella conversione. |
notifications.customer_id |
metadata.product_log_id |
Mappatura diretta. |
notifications.device_id |
principal.resource.product_object_id |
Mappatura diretta. |
notifications.group_name |
principal.group.group_display_name |
Mappatura diretta. |
notifications.id |
metadata.product_log_id |
Mappatura diretta. |
notifications.timestamp |
metadata.event_timestamp.seconds |
Il campo del log non elaborato notifications.timestamp viene convertito in secondi e mappato. |
rogue_aps.acknowledged |
security_result.detection_fields.value dove security_result.detection_fields.key è "confermato" |
Convertito in stringa e mappato. |
rogue_aps.containment_status |
metadata.description |
Mappatura diretta. |
rogue_aps.cust_id |
metadata.product_log_id |
Mappatura diretta. |
rogue_aps.encryption |
security_result.detection_fields.value dove security_result.detection_fields.key è "encryption" |
Mappatura diretta. |
rogue_aps.first_det_device |
principal.resource.product_object_id |
Mappatura diretta. |
rogue_aps.first_det_device_name |
principal.hostname |
Mappatura diretta. |
rogue_aps.first_seen |
principal.domain.first_seen_time.seconds |
Analizzato come data e vengono mappati i secondi trascorsi dall'epoca. |
rogue_aps.group_name |
principal.group.group_display_name |
Mappatura diretta. |
rogue_aps.id |
principal.mac |
Convertito in minuscolo e mappato. |
rogue_aps.labels |
security_result.detection_fields.value dove security_result.detection_fields.key è "etichette" |
Mappatura diretta. |
rogue_aps.last_det_device |
security_result.about.user.product_object_id |
Mappatura diretta. |
rogue_aps.last_det_device_name |
target.hostname |
Mappatura diretta. |
rogue_aps.last_seen |
principal.domain.last_seen_time.seconds |
Analizzato come data e vengono mappati i secondi trascorsi dall'epoca. Utilizzato anche come timestamp dell'evento, se presente. |
rogue_aps.mac_vendor |
target.administrative_domain |
Mappatura diretta. |
rogue_aps.name |
target.user.userid |
Mappatura diretta. |
rogue_aps.overridden |
security_result.detection_fields.value in cui security_result.detection_fields.key è "sostituito" |
Convertito in stringa e mappato. |
rogue_aps.signal |
security_result.detection_fields.value dove security_result.detection_fields.key è "segnale" |
Convertito in stringa e mappato. |
rogue_aps.ssid |
security_result.detection_fields.value dove security_result.detection_fields.key è "ssid" |
Mappatura diretta. |
site |
principal.location.name |
Mappatura diretta. |
wids_aps_info_list.attack_type |
metadata.description |
Mappatura diretta. |
wids_aps_info_list.detected_ap |
principal.hostname |
Mappatura diretta. |
wids_aps_info_list.description |
security_result.description |
Mappatura diretta. Utilizzato anche per estrarre diversi campi utilizzando grok. |
wids_aps_info_list.event_time |
metadata.event_timestamp.seconds |
Convertito in stringa e utilizzato come timestamp dell'evento, se presente. |
wids_aps_info_list.event_type |
metadata.product_event_type |
Mappatura diretta. |
wids_aps_info_list.macaddr |
principal.mac |
Convertito in minuscolo e mappato. |
wids_aps_info_list.radio_band |
security_result.detection_fields.value dove security_result.detection_fields.key è "radio_band" |
Mappatura diretta. |
wids_aps_info_list.virtual_controller |
target.hostname |
Mappatura diretta. Impostato su true se notifications.severity è "Emergenza", "Avviso" o "Critico". Impostato su true se notifications.severity è "Emergenza", "Avviso" o "Critico". Determinato dai campi events.event_type o notifications.type oppure impostato su GENERIC_EVENT come valore predefinito. Diversi mapping derivano dalla logica: STATUS_STARTUP, STATUS_SHUTDOWN, STATUS_UPDATE, USER_LOGIN, USER_LOGOUT. Impostato sempre su "ARUBA_IPS". Impostato sempre su "ARUBA_IPS". Sempre impostato su "ARUBA". Imposta "DHCP" se events.event_type è "Client DHCP Acknowledged" o "Client DHCP Timeout". Imposta "BOOTREPLY" se events.event_type è "Client DHCP Acknowledged" o "Client DHCP Timeout". Estratto da events.description utilizzando grok se events.event_type è "Client DHCP Acknowledged". Impostato su "ACK" se events.event_type è "Client DHCP Acknowledged" e events.description contiene un indirizzo IP. In caso contrario, imposta "WIN_EXPIRED". Imposta su "ACCESS POINT" se events.event_type inizia con "Radio", "WLAN", "AP" o è "Security". Imposta "DEVICE" se events.event_type inizia con "Radio", "WLAN", "AP" o è "Security". Mappato da events.client_mac per la maggior parte degli eventi dei clienti o da rogue_aps.last_det_device per gli eventi AP non autorizzati. Imposta "AUTH_VIOLATION" per valori events.event_type specifici o se notifications.description contiene "DoS Attack" o "disconnect attack". Imposta per valori events.event_type specifici. Vengono aggiunte diverse coppie chiave-valore in base ai campi estratti, come bssid, channel, previous_channel, ssid, previous bssid, acknowledged, overriden, encryption, signal, labels, radio_band. Mappato da wids_aps_info_list.description per gli eventi WIDS. Determinato da notifications.severity o wids_aps_info_list.level. Imposta "level: %{wids_aps_info_list.level}" per gli eventi wids. Imposta per valori events.event_type specifici. Mappato da rogue_aps.mac_vendor per eventi AP non autorizzati. Mappato da rogue_aps.last_det_device_name per eventi AP non autorizzati o wids_aps_info_list.virtual_controller per eventi wids. Estratto da events.description utilizzando grok se events.event_type è "Security". Mappato da notifications.client_mac per gli eventi di notifica, events.client_mac per gli eventi client, target_mac estratto da wids_aps_info_list.description per gli eventi WIDS o rogue_aps.id per gli eventi AP non autorizzati. Imposta su "CLIENT" per la maggior parte degli eventi client. Imposta "DEVICE" per la maggior parte degli eventi client. Imposta su "ACTIVE" se events.event_type è "Security". Mappato da rogue_aps.name per eventi AP non autorizzati. |
events.bssid |
security_result.detection_fields.value dove security_result.detection_fields.key è "bssid" |
Mappatura diretta. |
events.client_mac |
target.mac |
Mappatura diretta. Utilizzato anche per compilare security_result.about.user.product_object_id per gli eventi client e target.ip per gli eventi "Sicurezza". |
events.description |
metadata.description |
Mappatura diretta per gli eventi AP e radio. Utilizzato per estrarre diversi campi utilizzando grok per altri tipi di eventi. |
events.device_mac |
principal.mac |
Mappatura diretta. |
events.device_serial |
principal.resource.product_object_id |
Mappatura diretta. |
events.events_details.2.channel |
security_result.detection_fields.value dove security_result.detection_fields.key è "channel" |
Mappatura diretta. |
events.group_name |
principal.group.group_display_name |
Mappatura diretta. |
events.hostname |
principal.hostname |
Mappatura diretta. |
events.timestamp |
metadata.event_timestamp.seconds |
Convertito in stringa, i millisecondi vengono rimossi e poi mappati. Utilizzato anche come timestamp dell'evento, se presente. |
timestamp |
metadata.event_timestamp |
Utilizzato come timestamp dell'evento se non sono presenti altri campi timestamp. Imposta su "ATTIVO" per la maggior parte degli eventi client e degli eventi "Sicurezza". Imposta "AUTHTYPE_UNSPECIFIED" se events.event_type è "Client 802.1x Radius Reject". Estratto da events.description utilizzando grok se events.event_type è "Security". |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.