3. Stack elastico: analisi dei log di sicurezza. Cruscotti

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Negli articoli precedenti abbiamo acquisito un po' di familiarità con lo stack elk e l'impostazione del file di configurazione Logstash per il parser di log. In questo articolo passeremo alla cosa più importante da un punto di vista analitico, ciò che si desidera vedere dal sistema e per cosa è stato creato tutto: questi sono grafici e tabelle combinati cruscotti. Oggi daremo uno sguardo più da vicino al sistema di visualizzazione Kibana, vedremo come creare grafici e tabelle e, di conseguenza, costruiremo una semplice dashboard basata sui log del firewall Check Point.

Il primo passo nel lavorare con Kibana è creare modello di indice, logicamente, questa è una base di indici uniti secondo un certo principio. Naturalmente, questa è puramente un'impostazione per consentire a Kibana di cercare più comodamente le informazioni su tutti gli indici contemporaneamente. Viene impostato abbinando una stringa, ad esempio "checkpoint-*" e il nome dell'indice. Ad esempio, "checkpoint-2019.12.05" si adatterebbe allo schema, ma semplicemente "checkpoint" non esiste più. Vale la pena menzionare separatamente che nella ricerca è impossibile cercare informazioni su diversi modelli di indice contemporaneamente; poco più avanti negli articoli successivi vedremo che le richieste API vengono effettuate o dal nome dell'indice, o solo da uno linea del modello, l'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Successivamente, controlliamo nel menu Scopri che tutti i log siano indicizzati e che sia configurato il parser corretto. Se vengono rilevate incoerenze, ad esempio modificando il tipo di dati da una stringa a un numero intero, è necessario modificare il file di configurazione Logstash, di conseguenza, i nuovi log verranno scritti correttamente. Affinché i vecchi log assumano la forma desiderata prima della modifica, aiuta solo il processo di reindicizzazione; negli articoli successivi questa operazione verrà discussa più in dettaglio. Assicuriamoci che sia tutto in ordine, l'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

I registri sono a posto, il che significa che possiamo iniziare a creare dashboard. Sulla base dell'analisi dei dashboard dei prodotti di sicurezza, puoi comprendere lo stato della sicurezza delle informazioni in un'organizzazione, vedere chiaramente le vulnerabilità nella policy attuale e successivamente sviluppare modi per eliminarle. Costruiamo una piccola dashboard utilizzando diversi strumenti di visualizzazione. La dashboard sarà composta da 5 componenti:

  1. tabella per il calcolo del numero totale di tronchi per lama
  2. tabella sulle firme IPS critiche
  3. grafico a torta per gli eventi di Prevenzione delle minacce
  4. classifica dei siti più visitati
  5. tabella sull'utilizzo delle applicazioni più pericolose

Per creare figure di visualizzazione, è necessario accedere al menu Visualizzaree seleziona la figura desiderata che vogliamo costruire! Andiamo con ordine.

Tabella per il calcolo del numero totale di tronchi per lama

Per fare ciò, seleziona una figura Tabella dati, entriamo nell'attrezzatura per la creazione di grafici, a sinistra ci sono le impostazioni della figura, a destra c'è come apparirà nelle impostazioni attuali. Innanzitutto, mostrerò come sarà il tavolo finito, dopodiché esamineremo le impostazioni, l'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Impostazioni più dettagliate della figura, l'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Diamo un'occhiata alle impostazioni.

Inizialmente configurato metrica, questo è il valore in base al quale verranno aggregati tutti i campi. Le metriche vengono calcolate in base ai valori estratti in un modo o nell'altro dai documenti. I valori vengono solitamente estratti da i campi documento, ma può anche essere generato utilizzando script. In questo caso inseriamo Aggregazione: conteggio (numero totale di registri).

Successivamente, dividiamo la tabella in segmenti (campi) in base ai quali verrà calcolata la metrica. Questa funzione viene eseguita dall'impostazione Bucket, che a sua volta consiste in 2 opzioni di impostazione:

  1. dividere righe: aggiungere colonne e successivamente dividere la tabella in righe
  2. tabella divisa: divisione in più tabelle in base ai valori di un campo specifico.

В benne puoi aggiungere più divisioni per creare più colonne o tabelle, le restrizioni qui sono piuttosto logiche. Nell'aggregazione, puoi scegliere quale metodo verrà utilizzato per dividere in segmenti: intervallo ipv4, intervallo di date, Termini, ecc. La scelta più interessante è proprio Termini и Termini significativi, la divisione in segmenti viene effettuata in base ai valori di un campo indice specifico, la differenza tra loro sta nel numero di valori restituiti e nella loro visualizzazione. Poiché vogliamo dividere la tabella per il nome delle pale, selezioniamo il campo - prodotto.parola chiave e imposta la dimensione su 25 valori restituiti.

Invece di stringhe, elasticsearch utilizza 2 tipi di dati: testo и parola chiave. Se vuoi effettuare una ricerca full-text, dovresti utilizzare il tipo testo, una cosa molto comoda quando scrivi il tuo servizio di ricerca, ad esempio, cercando la menzione di una parola in un valore di campo specifico (testo). Se desideri solo una corrispondenza esatta, dovresti utilizzare il tipo di parola chiave. Inoltre, il tipo di dati parola chiave dovrebbe essere utilizzato per i campi che richiedono ordinamento o aggregazione, nel nostro caso.

Di conseguenza, Elasticsearch conta il numero di log per un certo tempo, aggregato per il valore nel campo product. In Custom Label, impostiamo il nome della colonna che verrà visualizzata nella tabella, impostiamo l'ora per la quale raccogliamo i log, iniziamo il rendering: Kibana invia una richiesta a elasticsearch, attende una risposta e quindi visualizza i dati ricevuti. Il tavolo è pronto!

Grafico a torta per gli eventi di Prevenzione delle minacce

Di particolare interesse è l'informazione su quante reazioni ci sono in percentuale individuare и prevenire sugli incidenti relativi alla sicurezza delle informazioni nell’attuale politica di sicurezza. Un grafico a torta funziona bene per questa situazione. Seleziona in Visualizza - Grafico a torta. Inoltre nella metrica impostiamo l'aggregazione in base al numero di log. Nei bucket inseriamo Termini => azione.

Tutto sembra essere corretto, ma il risultato mostra valori per tutti i blade; è necessario filtrare solo in base a quei blade che funzionano nell'ambito di Threat Prevention. Pertanto, lo abbiamo sicuramente impostato filtrare per cercare informazioni solo sui blade responsabili di incidenti di sicurezza informatica - prodotto: (“Anti-Bot” O “New Anti-Virus” O “DDoS Protector” O “SmartDefense” O “Threat Emulation”). L'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

E impostazioni più dettagliate, l'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Tabella eventi IPS

Successivamente, molto importante dal punto di vista della sicurezza delle informazioni è visualizzare e controllare gli eventi sul blade. IPS и Emulazione delle minacceChe non sono bloccati politica attuale, per poter successivamente modificare la firma per evitare o, se il traffico è valido, non controllare la firma. Creiamo la tabella nello stesso modo del primo esempio, con l'unica differenza che creiamo più colonne: protezioni.keyword, severità.keyword, product.keyword, originsicname.keyword. Assicurati di impostare un filtro per cercare informazioni solo sui blade responsabili di incidenti di sicurezza delle informazioni - prodotto: (“SmartDefense” O “Threat Emulation”). L'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Impostazioni più dettagliate, l'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Grafici per i siti più visitati

Per fare ciò, crea una figura - Barra verticale. Usiamo anche il conteggio (asse Y) come metrica e sull'asse X utilizzeremo il nome dei siti visitati come valori – “appi_name”. C'è un piccolo trucco qui: se esegui le impostazioni nella versione corrente, tutti i siti verranno contrassegnati sul grafico con lo stesso colore, per renderli multicolori utilizziamo un'impostazione aggiuntiva - "serie divisa", che ti consente di dividere una colonna già pronta in molti più valori, ovviamente a seconda del campo selezionato! Questa stessa divisione può essere utilizzata come una colonna multicolore in base ai valori in modalità impilata o in modalità normale per creare più colonne in base a un determinato valore sull'asse X. In questo caso, qui utilizziamo il stesso valore dell'asse X, questo permette di rendere multicolori tutte le colonne; saranno indicate dai colori in alto a destra. Nel filtro che abbiamo impostato - prodotto: “Filtro URL” per vedere le informazioni solo sui siti visitati, l'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

impostazioni:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Diagramma sull'utilizzo delle applicazioni più pericolose

Per fare ciò, crea una figura: barra verticale. Usiamo anche count (asse Y) come metrica e sull'asse X utilizzeremo il nome delle applicazioni utilizzate - "appi_name" come valori. La più importante è l'impostazione del filtro: prodotto: "Controllo applicazioni" E app_risk: (4 OR 5 OR 3 ) E azione: "accetta". Filtriamo i log in base al pannello Controllo applicazione, prendendo solo i siti classificati come siti a rischio critico, alto e medio e solo se l'accesso a questi siti è consentito. L'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Impostazioni, cliccabili:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Pannello di controllo

La visualizzazione e la creazione di dashboard si trovano in una voce di menu separata: Performance modelli/hostess. Qui tutto è semplice, viene creata una nuova dashboard, viene aggiunta la visualizzazione, posizionata al suo posto e il gioco è fatto!

Stiamo creando una dashboard attraverso la quale è possibile comprendere la situazione di base dello stato della sicurezza delle informazioni in un'organizzazione, ovviamente solo a livello di Check Point, l'immagine è cliccabile:

3. Stack elastico: analisi dei log di sicurezza. Cruscotti

Sulla base di questi grafici, possiamo capire quali firme critiche non sono bloccate dal firewall, dove vanno gli utenti e quali sono le applicazioni più pericolose che utilizzano.

conclusione

Abbiamo esaminato le funzionalità della visualizzazione di base in Kibana e creato un dashboard, ma questa è solo una piccola parte. Più avanti nel corso esamineremo separatamente la configurazione delle mappe, il lavoro con il sistema elasticsearch, la conoscenza delle richieste API, dell'automazione e molto altro!

Quindi rimanete sintonizzati (Telegram, Facebook, VK, Blog sulle soluzioni TS), Yandeks.Dzen.

Fonte: habr.com

Aggiungi un commento