Raccogliere i log di Infoblox
Questo documento descrive come raccogliere i log Infoblox utilizzando un forwarder Google Security Operations.
Per ulteriori informazioni, consulta Importazione dei dati in Google Security Operations.
Un'etichetta di importazione identifica il parser che normalizza i dati di log non elaborati in formato UDM strutturato. Le informazioni contenute in questo documento si applicano al parser con l'etichetta di importazione
INFOBLOX_DNS
.
Configura Infoblox
- Accedi all'UI web di Infoblox.
- Nell'interfaccia utente web di Infoblox, seleziona System > System properties editor > Monitoring.
- Seleziona la casella di controllo Registra nei server syslog esterni.
- Nella sezione Server syslog esterni, fai clic sul segno più (+) per aggiungere un nuovo server syslog per il forwarder Google Security Operations.
- Nel campo Indirizzo, inserisci l'indirizzo IP del server di inoltro di Google Security Operations.
- Nell'elenco Trasporto, seleziona TCP o UDP.
- Nel campo Porta, inserisci il numero della porta.
- Nell'elenco ID nodo, seleziona LAN per includere l'IP Infoblox nell'intestazione syslog.
- Dall'elenco Disponibili, seleziona i seguenti elementi e spostali nell'elenco Selezionati:
- Query DNS
- Risposte DNS
- Procedura DHCP
Il server Infoblox inoltra i log di query e risposta utilizzando syslog al programma di inoltro di Google Security Operations.
Configura l'inoltro e syslog di Google Security Operations per l'importazione dei log Infoblox
- Seleziona Impostazioni SIEM > Forwarder.
- Fai clic su Aggiungi nuovo inoltro.
- Inserisci un nome univoco nel campo Nome inoltro.
- Fai clic su Invia e poi su Conferma. Il forwarder viene aggiunto e viene visualizzata la finestra Aggiungi configurazione del raccoglitore.
- Nel campo Nome del raccoglitore, inserisci un nome univoco per il raccoglitore.
- Seleziona Infoblox come Tipo di log.
- Seleziona Syslog come Tipo di raccoglitore.
- Configura i seguenti parametri di input:
- Protocollo: specifica il protocollo di connessione che il raccoglitore utilizzerà per ascoltare i dati syslog.
- Indirizzo: specifica l'indirizzo IP o il nome host di destinazione in cui risiede il raccoglitore e ascolta i dati syslog.
- Porta: specifica la porta di destinazione in cui risiede il raccoglitore e rimane in ascolto dei dati syslog.
- Fai clic su Invia.
Per saperne di più sui forwarder di Google Security Operations, consulta la documentazione sui forwarder di Google Security Operations. Per informazioni sui requisiti per ciascun tipo di forwarder, vedi Configurazione del forwarder per tipo.
Se riscontri problemi durante la creazione degli inoltri, contatta l'assistenza di Google Security Operations.
Riferimento alla mappatura dei campi
Questo parser estrae i log DNS di Infoblox in formato SYSLOG o CEF, normalizzandoli in UDM. Gestisce vari formati di log utilizzando pattern grok, estrae campi chiave come IP di origine o di destinazione, dettagli della query DNS e informazioni sulla sicurezza e li mappa nei campi UDM appropriati.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logic |
---|---|---|
agent.hostname |
principal.hostname |
Per i log in formato CEF, se esiste agent.hostname , viene mappato a principal.hostname . |
client_ip |
principal.ip |
Per i log in formato CEF, se esiste client_ip , viene mappato a principal.ip . |
client_port |
principal.port |
Per i log in formato CEF, se esiste client_port , viene mappato a principal.port . |
data |
answers.data |
Estratto dal campo data della sezione answers nel log non elaborato. Più occorrenze vengono mappate come oggetti answers separati. |
description |
metadata.description |
Mappato direttamente dal campo description del log non elaborato o estratto utilizzando pattern grok da altri campi come message e msg2 . |
dest_ip1 |
target.ip |
Estratto dal log non elaborato e mappato a target.ip . |
destinationDnsDomain |
dns_question.name |
Per i log in formato CEF, se esiste destinationDnsDomain , viene mappato a dns_question.name . |
dns_class |
dns_question.class |
Mappato utilizzando la tabella di ricerca dns_query_class_mapping.include . |
dns_domain |
dns_question.name |
Estratto dal campo message del log non elaborato utilizzando pattern grok e mappato a dns_question.name . |
dns_name |
dns_question.name |
Estratto dal campo dns_domain utilizzando pattern grok e mappato a dns_question.name . |
dns_records |
answers.data |
Per i log in formato CEF, se esiste dns_records , viene mappato a answers.data . Più occorrenze vengono mappate come oggetti answers separati. |
dst_ip |
target.ip o target.hostname |
Estratto dal campo message del log non elaborato utilizzando i pattern grok. Se è un indirizzo IP valido, viene mappato a target.ip ; in caso contrario, viene mappato a target.hostname . |
dst_ip1 |
target.ip o target.hostname |
Estratto dal campo message o msg2 del log non elaborato utilizzando i pattern grok. Se è un indirizzo IP valido, viene mappato a target.ip ; in caso contrario, viene mappato a target.hostname . Mappato solo se diverso da dst_ip . |
evt_type |
metadata.product_event_type |
Mappato direttamente dal campo evt_type del log non elaborato, che viene estratto dal campo message utilizzando i pattern grok. |
InfobloxB1OPHIPAddress |
principal.ip |
Per i log in formato CEF, se esiste InfobloxB1OPHIPAddress , viene mappato a principal.ip . |
InfobloxB1Region |
principal.location.country_or_region |
Per i log in formato CEF, se esiste InfobloxB1Region , viene mappato a principal.location.country_or_region . |
InfobloxDNSQType |
dns_question.type |
Per i log in formato CEF, se esiste InfobloxDNSQType , viene mappato a dns_question.type . |
intermediary |
intermediary.ip o intermediary.hostname |
Estratto dal campo message del log non elaborato utilizzando i pattern grok. Se è un indirizzo IP valido, viene mappato a intermediary.ip ; in caso contrario, viene mappato a intermediary.hostname . |
msg2 |
metadata.description , dns.response_code , dns_question.name , target.ip , target.hostname , answers.name , answers.ttl , answers.data , answers.class , answers.type , security_result.severity |
Estratto dal campo message del log non elaborato utilizzando i pattern grok. Utilizzato per estrarre vari campi, ma non mappato direttamente a UDM. |
name1 |
answers.name |
Estratto dal campo msg2 del log non elaborato utilizzando pattern grok e mappato a answers.name . |
name2 |
answers.name |
Estratto dal campo msg2 del log non elaborato utilizzando pattern grok e mappato a answers.name . |
protocol |
network.ip_protocol |
Mappato direttamente dal campo protocol del log non elaborato se corrisponde a protocolli noti. |
qclass |
dns_question.class |
Campo intermedio utilizzato per mappare dns_class a UDM. |
qclass1 |
answers.class |
Campo intermedio utilizzato per mappare dns_class1 a UDM. |
qclass2 |
answers.class |
Campo intermedio utilizzato per mappare dns_class2 a UDM. |
query_type |
dns_question.type |
Mappato utilizzando la tabella di ricerca dns_record_type.include . |
query_type1 |
answers.type |
Mappato utilizzando la tabella di ricerca dns_record_type.include . |
query_type2 |
answers.type |
Mappato utilizzando la tabella di ricerca dns_record_type.include . |
recursion_flag |
network.dns.recursion_desired |
Se recursion_flag contiene un "+", viene mappato su network.dns.recursion_desired come true. |
record_type |
dns_question.type |
Campo intermedio utilizzato per mappare query_type a UDM. |
record_type1 |
answers.type |
Campo intermedio utilizzato per mappare query_type1 a UDM. |
record_type2 |
answers.type |
Campo intermedio utilizzato per mappare query_type2 a UDM. |
res_code |
network.dns.response_code |
Mappato utilizzando la tabella di ricerca dns_response_code.include . |
response_code |
network.dns.response_code |
Per i log in formato CEF, se esiste response_code , viene mappato a network.dns.response_code utilizzando la tabella di ricerca dns_response_code.include . |
security_action |
security_result.action |
Derivato dal campo status . Se status è "denied", security_action è impostato su "BLOCK"; in caso contrario, è impostato su "ALLOW". |
severity |
security_result.severity |
Per i log formattati CEF, se severity esiste ed è "informational", viene mappato a security_result.severity come "INFORMATIONAL". |
src_host |
principal.hostname |
Estratto dal campo description o message del log non elaborato utilizzando pattern grok e mappato a principal.hostname . |
src_ip |
principal.ip o principal.hostname |
Estratto dal campo message del log non elaborato utilizzando i pattern grok. Se è un indirizzo IP valido, viene mappato a principal.ip ; in caso contrario, viene mappato a principal.hostname . |
src_port |
principal.port |
Estratto dal campo message del log non elaborato utilizzando pattern grok e mappato a principal.port . |
ttl1 |
answers.ttl |
Estratto dal campo msg2 del log non elaborato utilizzando pattern grok e mappato a answers.ttl . |
ttl2 |
answers.ttl |
Estratto dal campo msg2 del log non elaborato utilizzando pattern grok e mappato a answers.ttl . |
metadata.event_type |
metadata.event_type |
Derivato da vari campi e dalla logica del parser. Il valore predefinito è GENERIC_EVENT se non viene identificato nessun altro tipo di evento. I valori possibili includono NETWORK_DNS , NETWORK_CONNECTION e STATUS_UPDATE . |
metadata.log_type |
metadata.log_type |
Impostato su "INFOBLOX_DNS" dal parser. |
metadata.product_name |
metadata.product_name |
Impostato su "Infoblox DNS" dal parser. |
metadata.vendor_name |
metadata.vendor_name |
Impostato su "INFOBLOX" dal parser. |
metadata.product_version |
metadata.product_version |
Estratto dai messaggi CEF. |
metadata.event_timestamp |
metadata.event_timestamp |
Copiato dal campo timestamp . |
network.application_protocol |
network.application_protocol |
Impostato su "DNS" se event_type non è "GENERIC_EVENT" o "STATUS_UPDATE". |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.