Syslog e Common Event Format (CEF) tramite connettori AMA per Microsoft Sentinel

Syslog tramite AMA e COMMON Event Format (CEF) tramite connettori di dati AMA per Microsoft Sentinel filtrare e inserire messaggi Syslog, inclusi i messaggi in formato CEF (Common Event Format), da computer Linux e da dispositivi e appliance di rete e di sicurezza. Questi connettori installano l'agente di monitoraggio Azure (AMA) in qualsiasi computer Linux da cui si desidera raccogliere messaggi Syslog e/o CEF. Questo computer potrebbe essere l'originatore dei messaggi o un server d'inoltro che raccoglie messaggi da altri computer, ad esempio dispositivi e appliance di rete o di sicurezza. Il connettore invia le istruzioni degli agenti in base alle regole di raccolta dati definite dall'utente. I controller di dominio specificano i sistemi da monitorare e i tipi di log o messaggi da raccogliere. Definiscono i filtri da applicare ai messaggi prima che vengano inseriti, per ottenere prestazioni migliori e query e analisi più efficienti.

Syslog e CEF sono due formati comuni per la registrazione dei dati da dispositivi e applicazioni diversi. Consentono agli amministratori di sistema e agli analisti della sicurezza di monitorare e risolvere i problemi di rete e identificare potenziali minacce o eventi imprevisti.

Che cos'è Syslog?

Syslog è un protocollo standard per l'invio e la ricezione di messaggi tra dispositivi o applicazioni diversi tramite una rete. È stato originariamente sviluppato per sistemi Unix, ma ora è ampiamente supportato da varie piattaforme e fornitori. I messaggi syslog hanno una struttura predefinita costituita da una priorità, un timestamp, un nome host, un nome dell'applicazione, un ID processo e un testo del messaggio. I messaggi syslog possono essere inviati tramite UDP, TCP o TLS, a seconda della configurazione e dei requisiti di sicurezza.

L'agente di monitoraggio Azure supporta i messaggi Syslog formattati in base a RFC 3164 (BSD Syslog) e RFC 5424 (IETF Syslog).

Che cos'è Common Event Format (CEF)?

CEF, o Common Event Format, è un formato indipendente dal fornitore per la registrazione dei dati da dispositivi e appliance di rete e di sicurezza, ad esempio firewall, router, soluzioni di rilevamento e risposta e sistemi di rilevamento delle intrusioni, nonché da altri tipi di sistemi, ad esempio server Web. Estensione di Syslog, è stato sviluppato in particolare per le soluzioni siem (Security Information and Event Management). I messaggi CEF hanno un'intestazione standard che contiene informazioni quali il fornitore del dispositivo, il prodotto del dispositivo, la versione del dispositivo, la classe di evento, la gravità dell'evento e l'ID evento. I messaggi CEF hanno anche un numero variabile di estensioni che forniscono maggiori dettagli sull'evento, ad esempio gli indirizzi IP di origine e di destinazione, il nome utente, il nome file o l'azione eseguita.

Raccolta di messaggi Syslog e CEF con AMA

I diagrammi seguenti illustrano l'architettura della raccolta di messaggi Syslog e CEF in Microsoft Sentinel, usando Syslog tramite AMA e Common Event Format (CEF) tramite connettori AMA.

Questo diagramma mostra i messaggi Syslog raccolti da una singola macchina virtuale Linux, in cui è installato l'agente di monitoraggio Azure (AMA).

Diagramma della raccolta Syslog da una singola origine.

Il processo di inserimento dei dati tramite l'agente di monitoraggio Azure usa i componenti e i flussi di dati seguenti:

  • Le origini di log sono le varie macchine virtuali Linux nell'ambiente che producono messaggi Syslog. Questi messaggi vengono raccolti dal daemon Syslog locale sulla porta TCP o UDP 514 (o da un'altra porta in base alle proprie preferenze).

  • Il daemon Syslog locale ( rsyslog o syslog-ng) raccoglie i messaggi di log sulla porta TCP o UDP 514 (o su un'altra porta in base alle proprie preferenze). Il daemon invia quindi questi log all'agente di monitoraggio Azure in due modi diversi, a seconda della versione ama:

    • Le versioni AMA 1.28.11 e successive ricevono i log sulla porta TCP 28330.
    • Le versioni precedenti di AMA ricevono i log tramite il socket di dominio Unix.

    Se si vuole usare una porta diversa da 514 per la ricezione di messaggi Syslog/CEF, assicurarsi che la configurazione della porta nel daemon Syslog corrisponda a quella dell'applicazione che genera i messaggi.

  • L'agente di monitoraggio Azure installato in ogni macchina virtuale Linux da cui si desidera raccogliere i messaggi syslog configurando il connettore dati. L'agente analizza i log e li invia all'area di lavoro Microsoft Sentinel (Log Analytics).

  • Area di lavoro Microsoft Sentinel (Log Analytics): i messaggi Syslog inviati qui si ritrovano nella tabella Syslog, in cui è possibile eseguire query sui log ed eseguire analisi su di essi per rilevare e rispondere alle minacce alla sicurezza.

Nota

Quando si inseriscono dati syslog usando un server d'inoltro del log e Azure'agente di monitoraggio (AMA), possono verificarsi incoerenze tra i TimeGenerated campi e EventTime .

  • TimeGenerated riflette l'ora UTC in cui il messaggio syslog è stato elaborato dal computer che ospita l'utilità di inoltro o l'agente di raccolta log.
  • EventTime viene estratto dall'intestazione syslog, che non include le informazioni sul fuso orario e viene convertito in formato UTC usando l'offset del fuso orario locale dell'agente di inoltro/agente di raccolta.

Ciò può causare differenze tra i due campi quando il server d'inoltro/agente di raccolta e il dispositivo che genera il log si trovano in fusi orari diversi.

Processo di installazione per la raccolta dei messaggi di log

Dall'hub contenuto in Microsoft Sentinel installare la soluzione appropriata per Syslog o Common Event Format. Questo passaggio installa i rispettivi connettori dati Syslog tramite AMA o Common Event Format (CEF) tramite il connettore dati AMA. Per altre informazioni, vedere Individuare e gestire Microsoft Sentinel contenuto predefinito.

Come parte del processo di installazione, creare una regola di raccolta dati e installare l'agente di monitoraggio Azure (AMA) nel server d'inoltro del log. Eseguire queste attività usando il portale di Azure o Microsoft Defender o l'API di inserimento dei log di monitoraggio Azure.

  • Quando si configura il connettore dati per il Microsoft Sentinel nel portale Azure o Microsoft Defender, è possibile creare, gestire ed eliminare controller di dominio per ogni area di lavoro. L'AMA viene installato automaticamente nelle macchine virtuali selezionate nella configurazione del connettore.

  • In alternativa, inviare richieste HTTP all'API di inserimento log. Con questa configurazione è possibile creare, gestire ed eliminare controller di dominio. Questa opzione è più flessibile rispetto al portale. Ad esempio, con l'API è possibile filtrare in base a livelli di log specifici. Nella Azure o nel portale di Defender è possibile selezionare solo un livello di log minimo. L'aspetto negativo dell'uso di questo metodo consiste nel fatto che è necessario installare manualmente l'agente di monitoraggio Azure nel server d'inoltro del log prima di creare un DCR.

Dopo aver creato il DCR e l'installazione di AMA, eseguire lo script di "installazione" nel server d'inoltro del log. Questo script configura il daemon Syslog per l'ascolto dei messaggi provenienti da altri computer e per aprire le porte locali necessarie. Configurare quindi i dispositivi o le appliance di sicurezza in base alle esigenze.

Per altre informazioni, vedere gli articoli seguenti:

Evitare la duplicazione dell'inserimento dei dati

L'uso della stessa funzionalità per i messaggi Syslog e CEF potrebbe comportare la duplicazione dell'inserimento dei dati tra le tabelle CommonSecurityLog e Syslog.

Per evitare questo scenario, usare uno di questi metodi:

  • Se il dispositivo di origine abilita la configurazione della funzionalità di destinazione: in ogni computer di origine che invia i log al server d'inoltro del log in formato CEF, modificare il file di configurazione Syslog per rimuovere le funzionalità usate per inviare messaggi CEF. In questo modo, le funzionalità inviate in CEF non vengono inviate anche in Syslog. Assicurarsi che ogni DCR configurato usi rispettivamente la funzionalità pertinente per CEF o Syslog.

    Per vedere un esempio di come disporre un DCR per inserire sia messaggi Syslog che CEF dallo stesso agente, passare ai flussi Syslog e CEF nello stesso DCR.

  • Se la modifica della funzionalità per l'appliance di origine non è applicabile: dopo aver creato il DCR, aggiungere la trasformazione tempo di inserimento per filtrare i messaggi CEF dal flusso Syslog per evitare la duplicazione. Vedere Esercitazione: Modificare una regola di raccolta dati (DCR). Aggiungere una trasformazione KQL simile all'esempio seguente:

    "transformKql": "  source\n    |  where ProcessName !contains \"CEF\"\n"
    

Passaggi successivi