Raccogliere i log di Juniper Junos
Questo documento descrive come raccogliere i log di Juniper Junos utilizzando un forwarder di 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 dei log non elaborati
in formato UDM strutturato. Le informazioni contenute in questo documento si applicano al parser
con l'etichetta di importazione JUNIPER_JUNOS
.
Configura la registrazione strutturata per un dispositivo Juniper Networks SRX
Il formato di log strutturato estrae informazioni dai messaggi di log. Il formato dei log è conforme al protocollo Syslog.
- Accedi alla CLI Juniper SRX utilizzando SSH al suo indirizzo IP di gestione.
- Digita
CLI
al prompt della shell e premi Invio. - Digita
configure
e premi Invio per accedere alla modalità di configurazione del dispositivo. - Inserisci i dati di contatto o il punto di riferimento del cliente.
Per mappare i campi all'account utente, esegui questi comandi:
set system syslog host FORWARDER_IP_ADDRESS any info set system syslog host FORWARDER_IP_ADDRESS structured-data
Sostituisci
FORWARDER_IP_ADDRESS
con l'indirizzo IP del forwarder di Google Security Operations.Per abilitare la registrazione strutturata per i log di sicurezza, utilizza i seguenti comandi:
set security log mode stream set security log source-address SRC_IP_ADDRESS set security log stream SYSLOG_STREAM_NAME host FORWARDER_IP_ADDRESS set security log stream SYSLOG_STREAM_NAME format sd-syslog
Sostituisci quanto segue:
SRC_IP_ADDRESS
: l'indirizzo IP del dispositivo Juniper SRX.SYSLOG_STREAM_NAME
: il nome assegnato al server syslog.FORWARDER_IP_ADDRESS
: l'indirizzo IP del forwarder di Google Security Operations.
Assicurati che la registrazione sia abilitata in tutte le norme sulla sicurezza. Per abilitare la registrazione, esegui questi comandi:
set security policies from-zone <zone-name1> to-zone <zone-name2> policy <policy-name> then log session-close set security policies from-zone <zone-name1> to-zone <zone-name2> policy <policy-name> then log session-init
Configura il nome host sul dispositivo utilizzando il seguente comando:
set system host-name HOSTNAME
Sostituisci
HOSTNAME
con il dispositivo Juniper Networks SRX assegnato.Inserisci
commit
per salvare i comandi eseguiti nella configurazione.
Configura l'inoltro e syslog di Google Security Operations per l'importazione dei log Juniper Junos
- 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 Juniper Junos come Tipo di log.
- Seleziona Syslog come Tipo di raccoglitore.
- Configura i seguenti parametri di input:
- Protocollo: specifica il protocollo come UDP.
- Indirizzo: specifica l'indirizzo IP o il nome host di destinazione in cui si trova il raccoglitore e in cui 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, consulta Configurazione del forwarder per tipo. Se riscontri problemi durante la creazione degli inoltri, contatta l'assistenza Google Security Operations.
Riferimento alla mappatura dei campi
Questo parser estrae i campi dai messaggi syslog Juniper JUNOS, gestendo sia i formati chiave-valore che quelli non chiave-valore. Utilizza pattern grok per trovare corrispondenze con varie strutture di messaggi, inclusi log del firewall, attività SSH ed esecuzioni di comandi, quindi mappa i campi estratti alla UDM. Il parser gestisce anche i log in formato CEF utilizzando un file di inclusione ed esegue azioni specifiche in base al contenuto del messaggio, ad esempio unendo indirizzi IP e nomi utente nei campi UDM appropriati.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logic |
---|---|---|
DPT |
target.port |
La porta di destinazione della connessione di rete, convertita in un numero intero. |
DST |
target.ip |
L'indirizzo IP di destinazione della connessione di rete. |
FLAG |
additional.fields{}.key : "FLAG", additional.fields{}.value.string_value : Valore di FLAG |
Il flag TCP associato alla connessione di rete. |
ID |
additional.fields{}.key : "ID", additional.fields{}.value.string_value : Valore di ID |
Il campo di identificazione IP. |
IN |
additional.fields{}.key : "IN", additional.fields{}.value.string_value : Value of IN |
L'interfaccia di rete in entrata. |
LEN |
additional.fields{}.key : "LEN", additional.fields{}.value.string_value : Value of LEN |
La lunghezza del pacchetto IP. |
MAC |
principal.mac |
L'indirizzo MAC estratto dal campo MAC . |
OUT |
additional.fields{}.key : "OUT", additional.fields{}.value.string_value : Value of OUT |
L'interfaccia di rete in uscita. |
PREC |
additional.fields{}.key : "PREC", additional.fields{}.value.string_value : Valore di PREC |
Il campo Precedence (Precedenza) nell'intestazione IP. |
PROTO |
network.ip_protocol |
Il protocollo IP utilizzato nella connessione di rete. |
RES |
additional.fields{}.key : "RES", additional.fields{}.value.string_value : Value of RES |
Campo riservato nell'intestazione TCP. |
SPT |
principal.port |
La porta di origine della connessione di rete, convertita in un numero intero. |
SRC |
principal.ip |
L'indirizzo IP di origine della connessione di rete. |
TOS |
additional.fields{}.key : "TdS", additional.fields{}.value.string_value : Value of TOS |
Il campo Tipo di servizio nell'intestazione IP. |
TTL |
network.dns.additional.ttl |
Valore Time To Live, convertito in un numero intero senza segno. |
URGP |
additional.fields{}.key : "URGP", additional.fields{}.value.string_value : Valore di URGP |
campo Urgent pointer nell'intestazione TCP. |
WINDOW |
additional.fields{}.key : "WINDOW_SIZE", additional.fields{}.value.string_value : Value of WINDOW |
La dimensione della finestra TCP. |
action |
security_result.action |
L'azione intrapresa dal firewall, estratta dal messaggio CEF. |
agt |
observer.ip |
L'indirizzo IP dell'agente. |
amac |
target.mac |
L'indirizzo MAC della destinazione, convertito in lettere minuscole e con i trattini sostituiti dai due punti. |
app |
target.application |
L'applicazione coinvolta nell'evento. |
artz |
observer.zone |
Il fuso orario dell'osservatore. |
atz |
target.location.country_or_region |
Il fuso orario di destinazione. |
categoryBehavior |
additional.fields{}.key : "Category Behavior" (Comportamento per categoria), additional.fields{}.value.string_value : valore di categoryBehavior con le barre rimosse |
Il comportamento della categoria. |
categoryDeviceGroup |
additional.fields{}.key : "Category Device Group", additional.fields{}.value.string_value : valore di categoryDeviceGroup con le barre rimosse |
Il gruppo di dispositivi della categoria. |
categoryObject |
additional.fields{}.key : "Category Object", additional.fields{}.value.string_value : valore di categoryObject con le barre rimosse |
L'oggetto categoria. |
categoryOutcome |
additional.fields{}.key : "Category Outcome" (Risultato categoria), additional.fields{}.value.string_value : valore di categoryOutcome con le barre rimosse |
Il risultato della categoria. |
categorySignificance |
additional.fields{}.key : "category Significance", additional.fields{}.value.string_value : Value of categorySignificance |
Il significato della categoria. |
command |
target.process.command_line |
Il comando eseguito. |
cs1Label |
additional.fields{}.key : cs1Label , additional.fields{}.value.string_value : valore del campo CEF corrispondente |
Etichetta e valore del campo stringa personalizzata 1 del messaggio CEF. |
cs2Label |
additional.fields{}.key : cs2Label , additional.fields{}.value.string_value : valore del campo CEF corrispondente |
Etichetta e valore del campo stringa personalizzato 2 del messaggio CEF. |
cs3Label |
additional.fields{}.key : cs3Label , additional.fields{}.value.string_value : valore del campo CEF corrispondente |
Etichetta e valore del campo stringa personalizzata 3 del messaggio CEF. |
cs4Label |
additional.fields{}.key : cs4Label , additional.fields{}.value.string_value : valore del campo CEF corrispondente |
Etichetta e valore del campo stringa personalizzata 4 del messaggio CEF. |
cs5Label |
additional.fields{}.key : cs5Label , additional.fields{}.value.string_value : valore del campo CEF corrispondente |
Etichetta e valore del campo stringa personalizzata 5 del messaggio CEF. |
cs6Label |
additional.fields{}.key : cs6Label , additional.fields{}.value.string_value : valore del campo CEF corrispondente |
Etichetta e valore del campo stringa personalizzata 6 del messaggio CEF. |
dhost |
target.hostname |
Nome host di destinazione. |
deviceCustomString1 |
additional.fields{}.key : cs1Label , additional.fields{}.value.string_value : valore di deviceCustomString1 |
Stringa personalizzata del dispositivo 1. |
deviceCustomString2 |
additional.fields{}.key : cs2Label , additional.fields{}.value.string_value : valore di deviceCustomString2 |
Stringa personalizzata del dispositivo 2. |
deviceCustomString3 |
additional.fields{}.key : cs3Label , additional.fields{}.value.string_value : valore di deviceCustomString3 |
Stringa personalizzata del dispositivo 3. |
deviceCustomString4 |
additional.fields{}.key : cs4Label , additional.fields{}.value.string_value : valore di deviceCustomString4 |
Stringa personalizzata 4 del dispositivo. |
deviceCustomString5 |
additional.fields{}.key : cs5Label , additional.fields{}.value.string_value : valore di deviceCustomString5 |
Stringa personalizzata 5 del dispositivo. |
deviceCustomString6 |
additional.fields{}.key : cs6Label , additional.fields{}.value.string_value : valore di deviceCustomString6 |
Stringa personalizzata 6 del dispositivo. |
deviceDirection |
network.direction |
La direzione del traffico di rete. |
deviceEventClassId |
additional.fields{}.key : "eventId", additional.fields{}.value.string_value : Value of deviceEventClassId |
L'ID della classe di eventi del dispositivo. |
deviceFacility |
observer.product.subproduct |
La struttura del dispositivo. |
deviceProcessName |
about.process.command_line |
Il nome del processo del dispositivo. |
deviceSeverity |
security_result.severity |
La gravità del dispositivo. |
deviceTimeZone |
observer.zone |
Il fuso orario del dispositivo. |
deviceVendor |
metadata.vendor_name |
Il fornitore del dispositivo. |
deviceVersion |
metadata.product_version |
La versione del dispositivo. |
dpt |
target.port |
La porta di destinazione. |
dst |
target.ip |
L'indirizzo IP di destinazione. |
duser |
target.user.user_display_name |
L'utente di destinazione. |
eventId |
additional.fields{}.key : "eventId", additional.fields{}.value.string_value : Value of eventId |
ID evento. |
event_time |
metadata.event_timestamp |
L'ora in cui si è verificato l'evento, analizzata dal messaggio. |
firewall_action |
security_result.action_details |
L'azione del firewall intrapresa. |
host |
principal.hostname , intermediary.hostname |
Il nome host del dispositivo che genera il log. Utilizzato sia per il principale che per l'intermediario in casi diversi. |
msg |
security_result.summary |
Il messaggio associato all'evento, utilizzato come riepilogo del risultato di sicurezza. |
name |
metadata.product_event_type |
Il nome dell'evento. |
process_name |
additional.fields{}.key : "process_name", additional.fields{}.value.string_value : Value of process_name |
Il nome del processo. |
p_id |
target.process.pid |
L'ID processo, convertito in una stringa. |
sha256 |
principal.process.file.sha256 |
L'hash SHA256 di un file, estratto dalle informazioni della chiave SSH2. |
shost |
principal.hostname |
Nome host di origine. |
source_address |
principal.ip |
L'indirizzo IP di origine. |
source_port |
principal.port |
La porta di origine, convertita in un numero intero. |
src |
principal.ip |
L'indirizzo IP di origine. |
src_ip |
principal.ip |
L'indirizzo IP di origine. |
src_port |
principal.port |
La porta di origine, convertita in un numero intero. |
ssh2 |
security_result.detection_fields{}.key : "ssh2", security_result.detection_fields{}.value : Value of ssh2 |
Informazioni sulla chiave SSH2. |
subtype |
metadata.product_event_type |
Il sottotipo dell'evento. |
task_summary |
security_result.description |
Il riepilogo dell'attività, utilizzato come descrizione del risultato di sicurezza. |
timestamp |
metadata.event_timestamp |
Il timestamp dell'evento. |
user |
target.user.userid |
L'utente associato all'evento. |
username |
principal.user.userid |
Il nome utente associato all'evento. |
user_name |
principal.user.userid |
Il nome utente. |
metadata.vendor_name |
Codificato in modo permanente su "Juniper Firewall". Codificato in modo permanente su "Juniper Firewall". Codificato in modo permanente su "JUNIPER_JUNOS". Determinato dalla logica del parser in base ai contenuti del log. Se non è un messaggio CEF e non viene identificato nessun altro tipo di evento specifico, il valore predefinito è "STATUS_UPDATE". Imposta "NETWORK_HTTP" per i messaggi CEF. Se non è presente alcun campo desc , questo campo viene compilato con il valore message_description estratto dal messaggio di log non elaborato. |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.