Rilevamento delle minacce
L'identificazione delle minacce avviene attraverso due approcci distinti:
- Signature-Based: Riconoscimento statico basato su pattern malevoli noti, con file di signature regolarmente aggiornato.
- Behavioral-Based: Riconoscimento dinamico mediante modelli di Machine Learning.
Entrambi gli approcci lavorano anche sui dati storici mantenuti all’interno del repository che è possibile interrogare per tutto il periodo di retention impostato. La piattaforma di gestione abilita la ricerca manuale di IOC nei dati raccolti. Si consideri di sapere che un certo IP destinazione rappresenta un IOC, ovvero è evidenza di un qualche tipo di attacco o minaccia. La piattaforma di gestione della nostra soluzione XDR consente la generazione di query specifiche per la ricerca di tale dato all’interno di tutti gli IP destinazione associati alle connessioni.
Di seguito un esempio di query per effettuare la ricerca appena esposta, supponendo di voler ricercare l’IP destinazione 224.0.0.252:
La query è impostata per restituire anche il conteggio del numero di connessioni che hanno coinvolto quell’IP. In aggiunta, come specificato anche in precedenza, la piattaforma consente la configurazione di un alert che invia una notifica ogni volta che l’IP appare all’interno di una connessione.
La soluzione integra modelli di Machine Learning progettati per il rilevamento di comportamenti anomali all’interno dell’infrastruttura monitorata. Tali modelli, al fine di garantire delle metriche di performance adeguate, sono addestrati utilizzando i dati dell’infrastruttura stessa, qualunque sia la loro provenienza (log derivati da apparati di rete, traffico di rete intercettato dalla sonda, log derivanti da soluzioni di identity, eventi derivanti dalla componente ISD statica ecc..). La soluzione è fornita con una serie di modelli preconfigurati per la detection di incidenti, resta vero che è possibile sviluppare ulteriori modelli di ML per il riconoscimento specifici comportamenti anomali caratterizzanti il business dell'organizzazione monitorata.
I modelli possono essere configurati per lavorare su un certo bucket di input, che corrisponde ad una serie di indici del repository dei dati. Ogni modello, così configurato riesce ad apprendere il comportamento standard della rete attraverso i dati derivanti da più sorgenti al fine di rilevare comportamenti sospetti su dispositivi non direttamente monitorati (dispositivo su cui non è stato installato alcun agente). Questo risulta fondamentale al fine di monitorare il comportamento di dispositivi di proprietà di utenti ospiti o occasionali che per ovvie ragioni non sono direttamente monitorati dalle soluzioni di cybersecurity messe in atto dall’organizzazione.
Di seguito è mostrato il json relativo ad uno dei modelli integrati nella soluzione XDR:
{
"state" : {
"loss" : 0.00905147445824953,
"trained" : true
},
"settings" : {
"min_threshold" : 0,
"default_bucket" : "input",
"run" : {
"detect_anomalies" : true,
"flag_abnormal_data" : true,
"save_prediction" : true,
"output_bucket" : "output",
"save_output_data" : true
},
"interval" : 60,
"forecast" : 5,
"span" : 20,
"type" : "timeseries",
"features" : [
{
"io" : "io",
"field" : "conn.id.resp_h.keyword",
"default" : 0,
"anomaly_type" : "high",
"measurement" : "traffic",
"metric" : "cardinality",
"name" : "Number_of_ips"
},
{
"metric" : "cardinality",
"name" : "open_ports",
"measurement" : "opened_ports",
"field" : "conn.id.resp_p",
"io" : "i",
"default" : 0
}
],
"grace_period" : 0,
"default_datasource" : "input",
"name" : "ipsvsport",
"seasonality" : {
"daytime" : true,
"weekday" : true
},
"max_threshold" : 0,
"bucket_interval" : "1m",
"max_evals" : 10,
"timestamp_field" : "@timestamp",
"offset" : 30
}
}
Di seguito un esempio di configurazione dei bucket di input ed output, il primo indica l'insieme dei dati sui quali il modello sarà addestrato, il secondo, invece rappresenta il contenitore dentro il quale il modello archivierà le predizioni effettuate:
buckets:
- name: input
type: elasticsearch
addr: localhost:9200
index: logstash-*
doc_type: _doc
- name: output
type: elasticsearch
addr: localhost:9200
index: output-models
doc_type: _doc
storage:
path: /var/lib/loudml
server:
listen: 0.0.0.0:8077
#
Inoltre, i modelli di Machine Learning utilizzati dalla soluzione XDR associano un punteggio per ciascun evento predetto. Il punteggio assegnato indica la priorità e quindi la pericolosità dell’evento appena avvenuto, superata una certa soglia di score, l’evento viene considerano anomalo e quindi prioritario.
Sfruttando i modelli di ML la soluzione effettua riconoscimento di IOC su base comportamentale. Ogni IOC può essere modificato ed è possibile aggiungere nuovi indicatori personalizzati sulla base di quanto detto nel requisito precedente, assegnando di volta in volta la categoria di ATT&CK corrispondente.
Ciascuna macrocategoria definita dal framework è associata ad una specifica dashboard sulla piattaforma. Ogni dashboard contiene una serie di visualizzazioni, ognuna impostata per rilevare IOC di attacchi e minacce afferenti alla categoria associata alla dashboard stessa.