Raccogliere i log VPN SSL di Array Networks
Questo documento spiega come importare i log VPN SSL di Array Networks in Google Security Operations utilizzando Bindplane. Il parser estrae i campi dai messaggi syslog e li mappa a UDM. Utilizza i pattern grok per identificare vari formati di log, tra cui richieste HTTP, messaggi SSL e aggiornamenti di stato generici, quindi analizza in modo condizionale le coppie chiave-valore e i dati CSV all'interno dei messaggi per compilare i campi UDM come principal, target, informazioni di rete e risultati di sicurezza. Il parser gestisce anche diversi tipi di eventi in base ai dati estratti, classificandoli come eventi di rete, eventi utente o eventi generici.
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 con privilegi alla console di gestione o all'appliance SSL VPN di Array Networks (serie AG o vxAG)
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: <CUSTOMER_ID> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'ARRAYNETWORKS_VPN' 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
<CUSTOMER_ID>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.
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
Configura l'inoltro di Syslog su Array Networks SSL VPN
- Accedi all'UI web della console di gestione VPN SSL Array Networks.
- Nel menu di navigazione a sinistra, fai clic su STRUMENTI DI AMMINISTRAZIONE.
- Fai clic su Monitoraggio.
- Fai clic sulla scheda Registrazione.
- Fai clic sulla sottoscheda Server Syslog.
- Nella sezione CONFIGURAZIONE SERVER SYSLOG REMOTO, fai clic su Aggiungi voce server.
- Fornisci i seguenti dettagli di configurazione:
- IP host: inserisci l'indirizzo IP dell'agente Bindplane.
- Porta host: inserisci il numero di porta dell'agente Bindplane (ad esempio,
514). - Protocollo: seleziona UDP o TCP, a seconda della configurazione dell'agente Bindplane.
- Porta di origine: lascia il valore predefinito o specifica se richiesto dalla configurazione di rete.
- Livello: seleziona Informativo.
- Fai clic su Salva per applicare la configurazione.
- Fai clic su Salva configurazione nella parte superiore della pagina per rendere permanenti le modifiche.
Tabella di mappatura UDM
| Campo log | Mappatura UDM | Logic |
|---|---|---|
clientip |
principal.ip |
L'indirizzo IP del client estratto dal campo clientip nel messaggio di log non elaborato. |
column1 |
principal.ip |
Indirizzo IP estratto da column1 nel log non elaborato. |
column1 |
principal.asset.ip |
Indirizzo IP estratto da column1 nel log non elaborato. |
column3 |
network.received_bytes |
Il numero di byte ricevuti, convertito in un numero intero senza segno. |
column4 |
network.http.method |
Il metodo HTTP estratto da column4 nel log non elaborato. |
column7 |
target.ip |
L'indirizzo IP di destinazione estratto da column7 nel log non elaborato. |
dport |
target.port |
Porta di destinazione, convertita in un numero intero. |
dst |
target.ip |
Indirizzo IP di destinazione. |
dst |
target.asset.ip |
Indirizzo IP di destinazione. |
hostname |
principal.hostname |
Il nome host estratto dal campo hostname nel messaggio di log non elaborato. |
hostname |
principal.asset.hostname |
Il nome host estratto dal campo hostname nel messaggio di log non elaborato. |
http_method |
network.http.method |
Il metodo HTTP estratto dal messaggio di log non elaborato. |
id |
principal.application |
L'ID applicazione dal log non elaborato. |
mac |
principal.mac |
L'indirizzo MAC estratto dal campo mac nel messaggio di log non elaborato. |
msg |
metadata.product_event_type |
Il campo del messaggio del log non elaborato, utilizzato come tipo di evento del prodotto. Utilizzato anche per security_result.description dopo aver rimosso le barre rovesciate e le virgolette. |
product_name |
metadata.product_name |
Il nome del prodotto estratto dal messaggio di log non elaborato. |
prxy_ip |
intermediary.ip |
Indirizzo IP del proxy. |
prxy_port |
intermediary.port |
Porta proxy, convertita in un numero intero. |
response_code |
network.http.response_code |
Il codice di risposta HTTP, convertito in un numero intero. |
security_result.action |
security_result.action |
Determinato dalla logica del parser in base al valore di column2. "BLOCK" se column2 contiene "TCP_MISS", "UNKNOWN_ACTION" altrimenti. |
security_result.description |
security_result.description |
Il campo del messaggio del log non elaborato, dopo aver rimosso le barre rovesciate e le virgolette. |
sport |
principal.port |
Porta di origine, convertita in un numero intero. |
src |
principal.ip |
Indirizzo IP di origine. |
src |
principal.asset.ip |
Indirizzo IP di origine. |
target_hostname |
target.hostname |
Il nome host di destinazione estratto dal messaggio di log non elaborato. |
timestamp |
metadata.event_timestamp |
Il timestamp estratto dal messaggio di log non elaborato e analizzato in un oggetto timestamp. |
uri |
target.url |
Parte dell'URL di destinazione. Combinato con uri_param per formare l'URL completo. |
uri_param |
target.url |
Parte dell'URL di destinazione. Combinato con uri per formare l'URL completo. |
user |
target.user.userid |
Il nome utente estratto dal messaggio di log non elaborato. |
user_agent_string |
network.http.user_agent |
La stringa dello user agent estratta dal messaggio di log non elaborato. |
vpn |
target.user.group_identifiers |
Il nome della VPN estratto dal messaggio di log non elaborato. |
metadata.event_type |
metadata.event_type |
Determinato dalla logica del parser in base a una combinazione di campi come has_principal, has_target, has_http_value e user. Può essere "NETWORK_HTTP", "NETWORK_CONNECTION", "STATUS_UPDATE", "USER_UNCATEGORIZED" o "GENERIC_EVENT". |
network.ip_protocol |
network.ip_protocol |
Imposta "TCP" se il messaggio contiene "TCP". |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.