Raccogli i log di Aruba IPS

Versione parser: 3.0

Supportata in:

Questo documento spiega come importare i log di Aruba IPS in Google Security Operations utilizzando l'agente Bindplane. Il parser estrae eventi, notifiche, AP non autorizzati e informazioni sugli AP 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 dell'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 i JSON non corretti.

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'esecuzione avviene 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

Ottieni le credenziali di Google SecOps per l'agente Bindplane

Per autenticare l'agente Bindplane in Google SecOps, scegli uno dei seguenti metodi:

  • Nuovi deployment: utilizza l'API Chronicle (opzione 1).
  • Deployment legacy: continua a utilizzare il file di autenticazione dell'acquisizione (opzione 2) fino al ritiro dell'API Ingestion il 20 luglio 2027.
  1. Accedi alla Google Cloud console e seleziona il progetto Google Cloud collegato alla tua istanza Google SecOps.
  2. Vai a IAM e amministrazione > Service account.
  3. Fai clic su Crea service account.
  4. Fornisci i seguenti dettagli di configurazione:
    • Nome service account: inserisci un nome per l'account (ad esempio bindplane-ingest).
    • Descrizione del service account: inserisci una descrizione (ad esempio, Bindplane agent log ingestion).
  5. Fai clic su Crea e continua.
  6. Nella sezione Concedi a questo account di servizio l'accesso al progetto, fai clic su Seleziona un ruolo e seleziona Chronicle Editor.
  7. Fai clic su Continua, quindi su Fine.
  8. Fai clic sul account di servizio che hai creato, quindi vai alla scheda Chiavi.
  9. Fai clic su Aggiungi chiave > Crea nuova chiave.
  10. Seleziona JSON e fai clic su Crea. Il file della chiave viene scaricato sul computer.
  11. Salva il file della chiave come ingestion-auth.json nella directory del raccoglitore Bindplane (/opt/observiq-otel-collector/ingestion-auth.json su Linux o C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json su Windows) oppure aggiorna creds_file_path in config.yaml in modo che corrisponda al percorso in cui lo salvi.
  12. Vai a IAM e amministrazione > Impostazioni e copia il numero di progetto. Ti servirà per la configurazione dell'esportatore.

Opzione 2: scarica il file di autenticazione dell'acquisizione (legacy)

  1. Accedi alla console Google SecOps.
  2. Vai a Impostazioni SIEM > Agenti di raccolta.
  3. Scarica il file di autenticazione dell'acquisizione.
  4. Salva il file in modo sicuro sul sistema in cui verrà installato l'agente Bindplane.

Ottieni l'ID cliente Google SecOps

  1. Accedi alla console Google SecOps.
  2. Vai a Impostazioni SIEM > Profilo.
  3. Copia e salva l'ID cliente dalla sezione Dettagli organizzazione.

Installa l'agente Bindplane

Installa l'agente Bindplane sul tuo sistema operativo Windows o Linux seguendo le istruzioni riportate di seguito.

Installazione di Windows

  1. Apri il prompt dei comandi o PowerShell come amministratore.
  2. Esegui questo comando:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Installazione di Linux

  1. Apri un terminale con privilegi root o sudo.
  2. 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

  1. Accedi al file di configurazione:

    • Individua il file config.yaml. In genere si trova nella directory /opt/observiq-otel-collector/ su Linux o nella directory di installazione su Windows.
    • Apri il file utilizzando un editor di testo (ad esempio nano, vi o Blocco note).
  2. Modifica il file config.yaml come segue:

    receivers:
      udplog:
        # Replace the port and IP address as required
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        protocol: https
        # Region of your instance, for example us, europe, asia-southeast1
        location: <LOCATION>
        # Project number of the Google Cloud project linked to the instance
        project: '<PROJECT_NUMBER>'
        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: chronicle.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 come richiesto nella tua infrastruttura.
    • Sostituisci YOUR_CUSTOMER_ID_HERE con l'ID cliente effettivo.
    • Aggiorna /path/to/ingestion-authentication-file.json con il percorso del file in cui è stato salvato il file della chiave del account di servizio (opzione 1) nel passaggio 1.
    • Sostituisci <LOCATION> con la regione della tua istanza Google SecOps (ad esempio us, europe o asia-southeast1). L'esportatore antepone chronicle.googleapis.com a questo valore. Per l'elenco completo, consulta Endpoint regionali.
    • Sostituisci <PROJECT_NUMBER> con il numero di progetto in IAM e amministrazione > Impostazioni.

Esportatore API di importazione legacy

  • Se utilizzi il file di autenticazione dell'acquisizione dell'Opzione 2, sostituisci il blocco exporters con il seguente. Imposta creds_file_path sul percorso del file di autenticazione dell'importazione e, se la tua istanza si trova al di fuori degli Stati Uniti, sostituisci malachiteingestion-pa.googleapis.com con l'endpoint regionale (ad esempio, europe-malachiteingestion-pa.googleapis.com).

    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:
    

Riavvia l'agente Bindplane per applicare le modifiche

  1. Per riavviare l'agente Bindplane in Linux, esegui questo comando:

    sudo systemctl restart observiq-otel-collector
    
  2. Per riavviare l'agente Bindplane in Windows, puoi utilizzare la console Servizi o inserire il seguente comando:

    net stop observiq-otel-collector && net start observiq-otel-collector
    

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)

  1. Accedi all'interfaccia web del controller Aruba.
  2. Nella gerarchia dei nodi Managed Network, vai a Configuration > System > Logging > Syslog Servers.
  3. Per aggiungere un server di logging, fai clic su + nella sezione Syslog Servers (Server Syslog).
  4. 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.
  5. Fai clic su Applica.
  6. Per selezionare i tipi di messaggi che vuoi registrare, seleziona Livelli di logging.
  7. Seleziona la categoria o la sottocategoria da registrare.
  8. Per selezionare il livello di gravità per la categoria o la sottocategoria, seleziona il livello dall'elenco a discesa Livello di logging.
  9. 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.
  10. Fai clic su Invia.
  11. Fai clic su Modifiche in attesa.
  12. Nella finestra Modifiche in attesa, seleziona la casella di controllo e fai clic su Esegui il deployment delle modifiche.

Opzione B: AP Aruba Instant

Utilizzo della WebUI

  1. Accedi all'interfaccia web di Aruba Instant.
  2. Nella finestra principale di Instant, fai clic sul link Sistema.
  3. Fai clic su Mostra opzioni avanzate per visualizzare le opzioni avanzate.
  4. Fai clic sulla scheda Monitoraggio.
    • Vengono visualizzati i dettagli della scheda Monitoraggio.
  5. Nella casella di testo Server Syslog, che si trova nella sezione Server, inserisci l'indirizzo IP dell'agente Bindplane.
  6. Nella sezione Livelli di facility syslog, seleziona i valori richiesti per configurare i livelli di facility syslog.
    • Syslog Level: log dettagliato sui livelli di syslog.
    • AP-Debug: log dettagliato sul dispositivo Instant AP.
    • Rete: log relativo alla modifica della rete, ad esempio quando viene aggiunto un nuovo AP istantaneo a una rete.
    • Sicurezza: log sulla sicurezza di rete, ad esempio quando un client si connette utilizzando una password errata.
    • Sistema: log sulla configurazione e sullo stato del sistema.
    • Utente: log importanti relativi al client.
    • User-Debug: log dettagliato sul client.
    • Wireless: log relativi alla radio.
  7. Fai clic su OK per salvare la configurazione.

Utilizzo dell'interfaccia a riga di comando

  1. Accedi all'interfaccia a riga di comando di Aruba Instant AP.
  2. Attiva la modalità di configurazione:

    configure terminal
    
  3. Configura il server Syslog e il livello:

    syslog-server <BINDPLANE_IP_ADDRESS>
    syslog-level warnings
    
    • Sostituisci <BINDPLANE_IP_ADDRESS> con l'indirizzo IP dell'host dell'agente Bindplane.
    • Modifica il livello di gravità in base alle esigenze.

Opzione C: Aruba AOS-S (switch)

  1. Accedi all'interfaccia a riga di comando dello switch Aruba AOS-S.
  2. Attiva la modalità di configurazione:

    configure
    
  3. Configura 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.
  4. Salva la configurazione:

    write memory
    

Opzione D: Aruba Central (On-Premises)

  1. Accedi all'interfaccia web di Aruba Central.
  2. Vai a System (Sistema) > System Administration (Amministrazione di sistema) > Notifications (Notifiche) > Syslog Server (Server Syslog).
  3. Fai clic su Aggiungi o Attiva.
  4. 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 minimo di log (ad esempio, Avviso o Informazioni).
  5. Fai clic su Salva.

Tabella di mappatura UDM

Campo log Mappatura UDM Logica
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 è "acknowledged" 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 è "crittografia" 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 i secondi dall'epoca vengono mappati.
rogue_aps.group_name principal.group.group_display_name Mappatura diretta.
rogue_aps.id principal.mac Convertiti in minuscolo e mappati.
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.overriden security_result.detection_fields.value dove security_result.detection_fields.key è "overriden" Convertito in stringa e mappato.
rogue_aps.signal security_result.detection_fields.value dove security_result.detection_fields.key è "signal" 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 Convertiti in minuscolo e mappati.
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. Imposta 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 per impostazione predefinita. Diverse mappature 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". Impostato su "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 su "WIN_EXPIRED". Imposta su "ACCESS POINT" se events.event_type inizia con "Radio", "WLAN", "AP" o è "Security". Imposta su "DEVICE" se events.event_type inizia con "Radio", "WLAN", "AP" o è "Security". Mappato da events.client_mac per la maggior parte degli eventi client o rogue_aps.last_det_device per gli eventi AP non autorizzati. Impostato su "AUTH_VIOLATION" per valori events.event_type specifici o se notifications.description contiene "attacco DoS" o "disconnect attack". Impostato 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 gli eventi di AP non autorizzati. Mappato da rogue_aps.last_det_device_name per gli eventi di AP non autorizzati o da wids_aps_info_list.virtual_controller per gli 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 WID o rogue_aps.id per gli eventi AP non autorizzati. Imposta "CLIENTE" per la maggior parte degli eventi cliente. Imposta "DEVICE" per la maggior parte degli eventi cliente. Impostato su "ACTIVE" se events.event_type è "Security". Mappato da rogue_aps.name per gli eventi di 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 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 di timestamp. Impostato su "ACTIVE" per la maggior parte degli eventi client e degli eventi "Security". Imposta "AUTHTYPE_UNSPECIFIED" se events.event_type è "Client 802.1x Radius Reject". Estratto da events.description utilizzando grok se events.event_type è "Security".

Log delle modifiche

Visualizza il log delle modifiche per questo parser

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.