Vai al contenuto principale
Blog Tanium

Come monitoriamo il tempo medio di applicazione delle patch

Questo è il terzo articolo della nostra serie di quattro post sul blog dedicata all’analisi delle modalità con cui utilizziamo la piattaforma Tanium all’interno della nostra organizzazione. In questa puntata, l’ingegnere SecOps Greg Pothier illustra come utilizzare congiuntamente Tanium e Splunk per fornire dati relativi alla gestione delle patch, che i CSO e altri responsabili della sicurezza possono sfruttare per valutare il potenziale di rischio.

Monitoraggio del tempo medio

Quanto sarebbe utile monitorare il tempo medio di ripristino (Mean Time to Patch ) per ogni dispositivo presente nella Sua rete? Che ne direste di poter fornire immediatamente risultati precisi sul numero di vulnerabilità non risolte ogni volta che il vostro CIO, CSO o vicepresidente delle operazioni ne faccia richiesta?

Queste sono le domande che abbiamo iniziato a porci qui su Tanium. Le risposte rivestono un reale valore aziendale per i nostri responsabili della sicurezza e dell’IT, i quali possono utilizzare tali dati per monitorare costantemente la nostra superficie di attacco e le prestazioni delle patch.

È vero che la maggior parte delle organizzazioni non conosce nemmeno lo stato attuale delle patch nella propria rete, ma noi di Tanium non solo disponiamo di queste informazioni, ma abbiamo anche creato un indicatore per monitorare il tempo medio necessario per l’applicazione delle patch.

Questo è il metodo più accurato che noi di Tanium utilizziamo per raccogliere, tramite l’ Tanium Platform , dati sulle prestazioni della nostra organizzazione nella gestione delle patch. Tanium semplifica la raccolta di risultati accurati, quali le patch critiche non applicate e lo stato di ogni applicazione installata, anche all’interno delle aziende di maggiori dimensioni. Per i responsabili della sicurezza informatica (CSO) e gli altri responsabili della sicurezza, una panoramica delle vulnerabilità non corrette a livello aziendale costituisce un indicatore fondamentale, in quanto li aiuta a valutare il potenziale di rischio. Grazie a “ Tanium”, possiamo andare oltre, valutando l’efficacia delle nostre operazioni di applicazione delle patch misurando il tempo medio necessario per applicarle a livello aziendale. Ecco come procediamo, utilizzando Tanium e Splunk (si apre in una nuova scheda), uno strumento di analisi dei dati.

Tanium Connect

In primo luogo, abbiamo configurato un Tanium  Connect (si apre in una nuova scheda) che invia i dati a Splunk il nostro Tanium Question “Ottieni il nome del computer, il sistema operativo e le patch disponibili da tutte le macchine.” Il sistema operativo è facoltativo; lo aggiungiamo nel caso in cui, in futuro, si volesse filtrare i risultati in base a sistemi operativi specifici.

Tanium Connect dashboard di integrazione che mostra la connessione tra l' Splunk e e i risultati della query sull'inventario dei computer

Una volta creato il file di controllo ( Connect ) all’indirizzo Tanium , lo eseguiamo e verifichiamo all’indirizzo Splunk che i risultati vengano elaborati come previsto. Iniziamo la ricerca con la query Index=“tanium”, poiché abbiamo configurato questa connessione in modo che venga indicizzata come Tanium. A questo punto, aggiungiamo quanto segue:

<code>Index=”tanium”
Question="Ottenere il nome del computer, il numero di serie e le patch disponibili da tutti i computer"
</code>

Qui sono riportati tutti i risultati delle patch disponibili, elencati da Computer Name. Ora disponiamo di un elenco di tutte le patch, comprensivo di titolo, livello di gravità, CVE_ID ecc. (Nota di : nella schermata riportata di seguito utilizziamo una tabella per la formattazione dei risultati esclusivamente a scopo illustrativo; tale formattazione non è altrimenti necessaria.)

Splunk interfaccia che mostra i risultati della ricerca relativi agli aggiornamenti di sicurezza di Windows e ai dati relativi alle patch provenienti da Tanium

A questo punto, creiamo una chiara rappresentazione visiva delle patch suddivise per livello di gravità. Al fine di garantire che non vengano elaborati risultati duplicati, convogliamo le informazioni di connessione in una funzione di deduplicazione, ad esempio:

<code>| dedup Computer_Serial_Number, KB_Article, CVE_ID, Title</code>
Splunk interfaccia che mostra i risultati della ricerca relativi alle patch e agli aggiornamenti di sicurezza di Windows , provenienti dall’integrazione con Tanium

Ciò garantisce che tali valori (Computer_Serial_Number, KB_Article, CVE_ID, Title) vengano riportati una sola volta e siano quindi univoci. Una volta ottenuti i valori univoci, eseguiamo una semplice funzione per rappresentare graficamente i risultati in base alla gravità:

<code>| Conteggio dei grafici per livello di gravità
</code>

I risultati danno origine a un grafico chiaro che illustra il numero totale di ciascun livello di gravità, nonché la relativa percentuale:

Splunk visualizzazione che mostra un grafico a torta relativo alla distribuzione delle patch o degli aggiornamenti di Windows

Ora disponiamo di un dashboard affidabile e automatizzato che riporta le patch attualmente aperte, ordinate in base alla gravità. Si noti che potremmo facilmente procedere allo stesso modo per i computer che utilizzano altri sistemi operativi, quali Linux o Mac OSX. Proseguiamo con il nostro obiettivo di creare una soluzione automatizzata che calcoli e visualizzi il tempo medio necessario per l’applicazione di una patch.

Successivamente, torniamo alla nostra query di base ed eliminiamo la deduplicazione, in modo da poter lavorare con tutti i log delle patch ricevuti. A questo punto si aggiunge:

<code>| statistiche: earliest(_time) come "First", latest(_time) come "Last" per Computer_Name, CVE_ID, Severity, Title</code>
Splunk tabella dei risultati di ricerca che mostra gli aggiornamenti di sicurezza e le informazioni sul catalogo relative a Windows

Questo approccio sfrutta la funzione statistica per verificare la data della prima segnalazione della patch, nonché quella dell’ultima segnalazione, in base a Computer Name, CVE, all’ID, al livello di gravità e al titolo. Il presente rapporto ci fornisce una data e un'ora relative al momento in cui le patch sono state individuate per la prima volta e per l'ultima volta. A questo punto, calcoliamo la differenza tra i due valori per determinare la durata, quindi convertiamo il formato del tempo di epoca in una stringa leggibile:

<code>| eval diff = Last - First | eval diff2 = tostring(diff, "durata")</code>
Splunk Risultati della ricerca che mostrano gli aggiornamenti di sicurezza di Windows con le relative classificazioni di gravità

I risultati riportano l' Computer Name, le informazioni relative alle patch e il periodo di tempo durante il quale ciascuna patch è risultata aperta su ciascun computer. Ora calcoliamo il valore massimo, il valore minimo e la media effettivi di tali valori di differenza:

<code>| conteggio statistiche, max(diff), min(diff), media(diff)
</code>

E questo è tutto. Ora conosciamo i valori massimi, minimi e medi di tutte le aree. Lo rendiamo più chiaro rinominando “mean(diff)” in “average”, arrotondando le cifre decimali in eccesso e creando una stringa ben formattata che indichi i giorni, le ore, i minuti e così via.

<code>| rinominare mean(diff) come average | calcolare average = round(average, 0) | calcolare averageTime = tostring(average,</code>
Splunk interfaccia che mostra la query di ricerca per l'aggregazione degli aggiornamenti di sicurezza

In questo articolo del blog abbiamo utilizzato un file “ Question ” salvato dal sito Tanium, inviato una volta al giorno tramite Tanium Connect all’indirizzo Splunk, per creare due importanti metriche automatizzate. I responsabili IT possono utilizzare queste informazioni per valutare la nostra superficie di attacco e le prestazioni relative all’applicazione delle patch, sia nello stato attuale che nel corso del tempo.

Questa è la terza parte di una serie composta da quattro parti. Nell’articolo “ ” (), prima parte (), spiego in che modo noi di Tanium monitoriamo le vulnerabilità critiche. Nell’articolo “ ” () e nella seconda parte “”, descrivo come utilizziamo Tanium per monitorare gli indicatori chiave relativi alla conformità. Nell’articolo “ ” (), parte quarta (), fornisco alcune linee guida sul tempo medio di risposta e spiego perché tempi di risposta rapidi sono fondamentali per ogni azienda.

Informazioni sull’autore: Greg Pothier è un ingegnere della sicurezza presso Tanium e vanta esperienza nei settori dell’automazione della sicurezza, dell’analisi dei dati, dei test di penetrazione e dello sviluppo software. Prima di entrare a far parte di Tanium, Greg ha ricoperto il ruolo di ingegnere senior presso diverse agenzie governative e di intelligence statunitensi. Greg ha conseguito il master in Informatica presso la George Mason University, dove gli è stata conferita la borsa di studio “NSA Information Assurance Cyber Scholarship”.