Il Security Operations Center (Soc) di un’azienda di medie dimensioni, che monitora i dati di rete e degli endpoint in tempo reale per individuare le potenziali minacce, riceve in media circa 200.000 avvisi al giorno.
Solo una piccola parte di questi avvisi può essere elaborata da una persona, perché ogni avviso richiede mediamente 15-20 minuti di attenzione da parte dell’analista per rispondere alla domanda fondamentale, capire cioè se si tratta di un falso positivo o se l’organizzazione è sotto attacco.
Questo fattore rappresenta un limite per quasi tutte le organizzazioni, perché anche le piccole realtà generano un numero di eventi di rete, provenienti dagli endpoint e dai log, di gran lunga superiore a quello che gli esseri umani possono gestire con successo.
Per questo motivo, i Soc devono necessariamente impiegare un software di monitoraggio della sicurezza che consenta di preselezionare e ridurre il numero di eventi che richiedono un intervento umano.
Una tecnologia che potrebbe facilitare questo processo è l’intelligenza artificiale, ma il problema è se possiamo fidarci delle risposte dell’intelligenza artificiale applicata alla sicurezza informatica.
Ecco quali sono i suoi limiti e come superarli.
Indice degli argomenti
L’apprendimento automatico per la cyber security
L’apprendimento automatico (machine learning, ML) per la sicurezza informatica è un tema ampiamente studiato[1], perché le attività dei Soc producono una grande quantità di dati e il machine learning è la tecnologia sempre più diffusa nel software di sicurezza.
Tuttavia, il machine learning non gode ancora di una fiducia ampia nei Soc e, in questo senso, un importante ostacolo, affinché ciò avvenga, è rappresentato dal fatto che i metodi di machine learning sono carenti dal punto di vista della “explainability”[2].
L’Explainable AI (XAI) è, infatti, un importante campo di ricerca nell’ambito dell’intelligenza artificiale, focalizzato sulla trasparenza e l’interpretabilità dei sistemi di IA e dei relativi risultati.
Mentre l’AI tradizionale mira principalmente a massimizzare le prestazioni predittive, l’XAI si concentra sulla comprensione del processo decisionale dei modelli, rendendoli comprensibili e interpretabili dagli esseri umani.
In assenza di trasparenza, è comprensibile che gli analisti dei Soc non si fidino del ML.
La richiesta di trasparenza
Oltre al settore della cyber security, c’è un’ampia richiesta di trasparenza nell’utilizzo dei metodi di ML.
Il Regolamento generale europeo sulla protezione dei dati (GDPR) sancisce il “diritto a una spiegazione” nell’ambito dell’utilizzo dei ML nei processi decisionali che riguardano un individuo (articolo 22 e considerando 71).
Pertanto, anche l’analista Soc ha bisogno di verificare il processo logico, perché le decisioni che deve prendere, spesso sotto pressione e con informazioni ambigue, possono avere un impatto significativo sulla sua organizzazione.
Il paradigma del cyber-informed machine learning
Il cyber-informed machine learning è un paradigma elaborato dal Software engineering institute e basato sul concetto di “explainability”, che prevede l’analisi dei tre casi d’uso più comuni nel machine learning applicato alla cyber security:
- comprensione dei dati da parte dell’uomo;
- comprensione del modello da parte dell’uomo;
- quella dell’uomo da parte del modello.
In particolare, si tenta di fornire una sintesi di ciascun caso di interpretazione e i suggerimenti di ricerca necessari per raggiungere un livello di trasparenza che possa incoraggiare l’uso dei sistemi basati su ML destinati a supportare le operazioni di cyber security.
Comprensione dei dati da parte dell’uomo
Solitamente, la capacità di fornire una spiegazione dei dati tenta di rispondere alla domanda su cosa mi dicono i dati.
Si tratta della forma più nota di comprensione ed è una delle ragioni principali per cui esistono materie come la statistica, la data science e le discipline ad esse correlate.
Nel contesto dei Soc, il caso d’uso di base è la comprensione del normale profilo del traffico di rete, mentre un caso d’uso più specifico potrebbe prevedere la comprensione della storia di un particolare indirizzo di protocollo Internet (IP) interno che interagisce con un indirizzo IP esterno.
Sebbene questo tipo di dimostrazione possa sembrare semplice, ci sono diverse difficoltà specifiche legate alla sicurezza informatica che è necessario considerare. Si considerino, per esempio, i campi utilizzati dal comando NetFlow per identificare il traffico di rete raccolto (Tabella 1).

I metodi di machine learning possono essere facilmente applicati ai campi numerici, come “packets”, “bytes” e “duration”.
Tuttavia, gli indirizzi IP sorgente e destinazione sono stringhe e, nel contesto dell’apprendimento automatico, sono variabili “categorical”. Una variabile è categorical nel caso in cui la sua gamma di valori possibili è un insieme di livelli (categorie).
Sebbene “source port”, “destination port”, “protocolo” e “type” siano rappresentati come numeri interi, in realtà sono variabili categorial.
Inoltre, non essendo ordinali, non presentano alcun senso di ordine o scala (per esempio, la porta 59528 non è successiva o più grande della porta 53).
Per comprendere l’importanza della distinzione tra variabili numeriche e categoriche, è sufficiente osservare i punti rappresentati nella Figura 1.
La funzione che ha generato i dati è chiaramente lineare. Pertanto, potremmo adattare un modello lineare e utilizzarlo per prevedere i punti futuri. Le variabili di input categorial non ordinali (come gli indirizzi IP, i numeri di port e i protocolli) rappresentano una difficoltà per il machine learning, in quanto manca un senso di ordine o di scala su cui fare leva.
Questa criticità ci costringe a utilizzare le statistiche e gli avvisi di superamento di soglia nelle applicazioni Soc.

Un’altra criticità correlata è rappresentata dal fatto che i dati informatici hanno spesso una notazione debole della distanza.
Come quantificare la distanza tra i due log NetFlow
Per esempio, vediamo come si può quantificare la distanza tra i due log NetFlow della Tabella 2.
Per la variabile numerica “duration”, la distanza tra i due log è data da 19,417 – 7,639, ovvero 11,787 millisecondi.
Tuttavia non esiste una nozione simile di distanza tra le due “port”, così come per le altre variabili categorical.

Come misurare la verosimiglianza tra i logs con variabili categorical
Esistono diverse tecniche per misurare la verosimiglianza tra i logs con variabili categorical.
Per esempio, si potrebbe contare il numero di campi di valore equivalente tra i due logs. I logs che presentano più valori in comune sono in un certo senso più simili tra loro. Grazie a questa regola in grado di misurare quantitativamente la distanza, è possibile creare un clustering non supervisionato per scoprire i cluster naturali di logs all’interno dei dati.
Si spera che questi raggruppamenti siano cyber-significativi, come il raggruppamento in base all’applicazione che ha generato ciascun log, come mostra la Figura 2. Tuttavia, nella pratica, tali raggruppamenti cyber-significativi non si verificano senza un po’ di persuasione.
Un esempio di apprendimento automatico cyber-informato consiste nel trasferire l’esperienza umana nel processo di apprendimento automatico.

Come integrare la conoscenza umana in una pipeline di ML
Nella Figura 3 è rappresentato il modo in cui è possibile integrare la conoscenza umana in una pipeline di ML. Invece di eseguire la clusterizzazione di tutti i log senza alcuna preelaborazione, i data scientist possono richiedere ai cyber-analisti le relazioni e i tipi di cluster che conoscono e che desiderano approfondire.
Per esempio, potrebbero essere interessanti i port, la direzione del flusso e la volumetria dei pacchetti. In questo caso, si potrebbero prepartizionare i log in base a questi campi e poi eseguire un clustering sui bin risultanti per comprenderne la composizione.
Sebbene la comprensibilità dei dati per l’uomo sia il tipo di comprensibilità più noto, ancora oggi sono presenti delle criticità dovute ai dati informatici.

A complicare ulteriormente la situazione, vi è il grande volume di dati generato dai processi informatici. È quindi fondamentale coinvolgere i cyber analisti nel processo di analisi, in modo da integrare le loro competenze e migliorare il processo di apprendimento.
Comprensione del modello da parte dell’uomo
La comprensione del modello da parte dell’uomo cerca di rispondere alle domande: cosa mi sta dicendo il modello e perché?
Un caso d’uso comune nel Soc è comprendere il motivo per cui un rilevatore di anomalie segnala un determinato evento. Per evitare di aumentare il carico di allarmi che già grava sugli analisti del SOoc, è fondamentale che i sistemi di ML implementati nel Soc siano comprensibili all’uomo.
Man mano che un numero sempre maggiore di organizzazioni implementa l’ML negli ambienti di produzione, la necessità che i modelli siano comprensibili per gli esseri umani diventa sempre più impellente.
Il Gdpr e i regolamenti europei e nazionali sottolineano l’importanza di rendere i modelli comprensibili e trasparenti agli esseri umani.
White box o black box
I modelli di ML possono essere classificati come white box o black box, a seconda della facilità con cui è possibile visualizzare, esaminare e interpretare i loro parametri.
I modelli white box sono completamente interpretabili e le loro previsioni possono essere comprese con precisione. Va tuttavia notato che anche i modelli white box potrebbero non essere interpretabili, soprattutto quando diventano molto grandi e complessi.
I modelli white box includono:
- la regressione lineare;
- la regressione logistica;
- l’albero decisionale;
- i metodi basati sui vicini (per esempio: k-nearest neighbor).
Questi modelli non sono interpretabili e la base delle loro previsioni deve essere dedotta indirettamente attraverso metodi come l’analisi dell’importanza globale e locale delle caratteristiche.
I modelli black box
Essi includono reti neurali, metodi di ensemble (come il random forest, l’isolation forest e l’XGBOOST) e metodi basati su kernel (come il support vector machine).
Un esempio di modello predittivo white box
Un esempio di modello predittivo white box è l’albero decisionale che garantisce un’alta comprensibilità del modello e di ogni sua previsione.
Le regole di un albero decisionale
Dopo la fase di addestramento, le regole di un albero decisionale possono essere implementate direttamente nelle soluzioni software senza dover ricorrere al modello ML.
Queste regole possono essere presentate visivamente sotto forma di albero (Figura 4 – white-box), il che facilita la comunicazione con gli stakeholder non tecnici.
L’ispezione dell’albero fornisce indicazioni rapide e intuitive sulle caratteristiche che il modello stima essere maggiormente predittive della risposta.

Sebbene i modelli complessi come le reti neurali (Figura 4 – “black box”) possano simulare sistemi complessi con maggiore precisione, non è sempre così facile.
L’indagine
Per esempio, una survey accademica [3] ha messo a confronto le prestazioni di varie forme di modello sviluppate da molti ricercatori su numerosi set di dati di riferimento per la sicurezza informatica.
L’indagine ha evidenziato che i modelli più semplici, come gli alberi decisionali, spesso hanno prestazioni simili a quelle dei modelli più complessi, come le reti neurali.
Quando i modelli più complessi superano quelli più interpretabili, si verifica un compromesso: il miglioramento delle prestazioni avviene a scapito di una minore comprensibilità.
Tuttavia, l’indagine di Xin e degli altri ricercatori mostra anche che il miglioramento delle prestazioni è spesso incrementale e, in questi casi, gli architetti di sistema dovrebbero favorire il modello interpretabile per garantire la comprensibilità del modello da parte dell’uomo.
Comprensione dell’uomo da parte del modello
L’obiettivo è consentire agli utenti finali di influenzare un modello addestrato esistente e di comprenderne il funzionamento. Si consideri, per esempio, un analista Soc che voglia dire al modello di rilevamento delle anomalie di non allertare più su un particolare tipo di log perché si tratta di un falso positivo.
Poiché gli utenti finali spesso non hanno competenze specifiche in materia di dati, una parte fondamentale della comprensione “uomo-modello” consiste nell’integrazione di aggiustamenti di un modello predittivo basato sui giudizi espressi dagli analisti Soc.
Questa è la forma meno matura di comprensione e richiede ulteriori studi e approfondimenti.
L’esempio della fase di codifica di una pipeline ML
Un esempio è rappresentato dalla fase di codifica di una pipeline ML. Si ricorda che l’apprendimento automatico richiede caratteristiche numeriche, ma i dati cyber includono molte caratteristiche categorical.
La codifica è una tecnica che consente di trasformare le caratteristiche categorical in caratteristiche numeriche.
Per esempio: la codifica dei numeri interi potrebbe assegnare a ciascun indirizzo IP un numero intero arbitrario. Questo approccio è inappropriato, pertanto è opportuno lavorare con l’analista SOC per sviluppare strategie di codifica cyber-significative.
Per esempio, si potrebbero raggruppare gli indirizzi IP in base a criteri come la provenienza geografica o le informazioni sulle minacce. In questo modo, si fornirebbero competenze informatiche alla pipeline della scienza dei dati e questo rappresenterebbe un esempio di comprensione da modello a uomo.
Il paradigma Physics-Informed machine learning
Per risolvere questa criticità, si prende ispirazione da un paradigma chiamato Physics-Informed machine learning [4], che consente di utilizzare il machine learning (ML) in alcune applicazioni ingegneristiche.
In fisica, le equazioni descrivono leggi naturali come la conservazione della massa e dell’energia. Queste equazioni sono incorporate nei modelli utilizzati per l’analisi ingegneristica.
Se li esercitassimo su un ampio spazio di progettazione, potremmo utilizzare i dati risultanti (gli input mappati sugli output) per addestrare i modelli di apprendimento automatico (ML).
Questo è un esempio di come l’esperienza umana nel campo della fisica possa essere trasferita ai modelli di apprendimento automatico (ML).
La competenza degli esperti
Nel campo della sicurezza informatica non si dispone di modelli matematici che descrivano in modo stabile il comportamento dei sistemi e degli utenti, ma è possibile avvalersi della competenza degli esperti del settore.
Gli analisti informatici basano le proprie conoscenze, i propri ragionamenti e i propri intuiti sull’esperienza maturata. Esistono anche le cyber-analisi, che sono forme codificate dell’esperienza umana.
Come per la comunità della fisica, anche la sicurezza informatica ha bisogno di metodi che consentano di sfruttare l’ampia esperienza umana per influenzare i modelli di apprendimento automatico utilizzati.
Raccomandazioni pratiche per l’uso del machine learning nella cyber security
I metodi di comprensione dei dati per l’uomo sono relativamente maturi. Le organizzazioni che volessero trarre il massimo dai propri dati, potrebbero avvalersi dei metodi e degli strumenti della ricerca già esistenti.
La comprensibilità del modello per gli esseri umani può essere notevolmente migliorata assegnando, almeno nelle prime fasi di adozione, un data scientist che fornisca supporto agli utenti finali dell’ML in caso di dubbi.
Inoltre, è utile che l’azienda sviluppi internamente le proprie competenze in materia di sicurezza informatica. Infine, gli utenti finali possono rivolgersi ai fornitori di software di sicurezza per verificare se i loro strumenti di ML siano spiegabili.
I modelli di ML dovrebbero almeno riportare l’importanza delle caratteristiche, indicando quali dati di input sono più influenti per il modello.
Sebbene la ricerca sui metodi di comprensione human-to-model nella cyber security sia ancora in fase embrionale, è possibile intraprendere alcune azioni immediate.
Gli utenti finali possono richiedere ai loro fornitori di software di sicurezza di calibrare i loro strumenti di ML sulla base dei feedback ricevuti.
I Soc potrebbero anche prendere in considerazione la possibilità di raccogliere gli avvisi benigni smaltiti tramite indagini manuali in un database strutturato per la futura calibrazione del modello.
Infine, la riqualificazione di un modello è una forma di calibrazione e, pertanto, valutare quando e come i modelli Soc vengono riqualificati può aiutare a influenzarne le prestazioni.
Bibliografia
[1] Saker, I. et al., “Cybersecurity data science: an overview from machine learning perspective”.
[2] Mellon, J.; Worrel, C.,”Explainability in Cybersecurity Data Science”.
[3] Xin et al, “Machine Learning and Deep Learning Methods for Cybersecurity”.
[4] Karniadakis et al., “Physics-informed machine learning”.