4.3
Algoritmo di rilevazione
Una volta costruiti gli sketches bidimensionali, per ogni time bin, `e pos- sibile applicarvi un qualsiasi algoritmo di rilevazione: noi proponiamo il Bivariate Non-Parametric Detection Algorithm[19]. Consideriamo di esse- re al time bin t. Il sistema analizza l’evoluzione di due metriche X e Y nei precedenti W time bins. Per far questo, vengono definite due finestre temporali disgiunte:
• W0data dagli N1time bins di riferimento precedenti a {t-N2};
• W1data da N2time bins sotto test.
L’algoritmo di rilevazione prevede il calcolo di due funzioni:
FX= µX,1+σ2X,1 µX,0+σ2X,0 FY= µY,1+σY,12 µY,0+σY,02 (4.2)
dove i pedici si riferiscono rispettivamente alla metrica sotto test X, Y e alle finestre temporali 0, 1.
I generici parametri µ e σ2rappresentano una stima di media e varianza,
calcolati secondo l’algoritmo di EWMA (Exponentially Weighted Moving Average): ˆ µk= αˆµk−1+ (1 − α)yk; ˆ σ2k= αˆσ2k−1+ (1 − α)(yk− ˆµk)2; (4.3)
dove α `e un parametro compreso tra 0 e 1 e pesa in modo diverso le osservazioni precedenti da quella corrente; ˆµk−1e ˆσ2k−1rappresentano la
4.3. ALGORITMO DI RILEVAZIONE
stima EWMA di media e varianza nel time bin precedente e ykrappresen-
ta il campione corrente. Si noti che le statistiche FXe FYdevono essere
calcolate per ogni bucket dello sketch costruito per il time bin di test (per semplicit`a di notazione abbiamo omesso la dipendenza dagli indici di riga e colonna degli sketches).
Una volta calcolate le due funzioni FXe FYsi esegue un test di decisio-
ne. Nel dettaglio si considerano due valori di soglia TA e TBe si decide
4.3. ALGORITMO DI RILEVAZIONE
Figura 4.3: Blocco di Decisione
In particolare possono verificarsi tre casi specifici[19]:
1. FX< TA, FY< TA. Entrambe le statistiche sono inferiori al valore di
soglia minimo, quindi si pu`o stabilire che durante il time bin sotto test non `e stata rilevata alcuna anomalia. In questo caso, la finestra W0di riferimento verr`a aggiornata;
4.3. ALGORITMO DI RILEVAZIONE
2. FX> TB, FY> TB. Entrambe le statistiche deviano dal comporta-
mento normale di traffico di un valore superiore alla quantit`a mas- sima stabilita. Il time bin sotto test risulta anomalo e, per questo, la finestra di riferimento non viene aggiornata;
3. FX> TB, FY< TBe viceversa. In questo caso si definisce una nuova
finestra costituita da Nctime bins di controllo. A partire da {t+1} si
calcola e si controlla fino al time bin {t+1+τ} che anche la statistica Y, non anomala nel time bin di test, non ecceda la soglia massima considerata. Se questo dovesse verificarsi, in conseguenza al fatto che un’alterazione della metrica X pu`o causare delle variazioni nella metrica Y durante gli Nctime bins successivi, si decide che il time
bin sotto test `e sospetto e, per questo, la finestra di riferimento non viene aggiornata.
Implementando questa strategia di decisione per ciascun bucket dello sketch di test, se FXe FYeccedono TBper almeno un numero H di righe ( H `e
un valore che generalmente si setta a D
2+1con D numero totali di righe
che compongono lo sketch ), il time bin sotto sotto test viene considerato anomalo.
Si evidenzia che l’aggiornamento della finestra di riferimento W0av-
viene solo quando entrambe le statistiche di decisione sono al di sotto di TA. La ragione di tale scelta si deve al fatto che una corretta decisione
`e strettamente vincolata alla costruzione di una finestra di riferimento che rispecchi effettivamente il traffico legittimo del sistema: `e necessa- rio quindi che W0sia costituita da time bins che si ritengono sicuramente
4.3. ALGORITMO DI RILEVAZIONE
La possibilit`a di costruire una finestra di controllo che ispezioni l’evo- luzione temporale di una delle due metriche permette di ignorare le flut- tuazioni istantanee dell’altra e di aumentare le prestazioni del sistema in termini di probabilit`a di falso allarme[19].
Capitolo 5
Risultati sperimentali
In quest’ultimo capitolo vengono valutati i risultati ottenuti testando l’al- goritmo di detection descritto in (4.3) e se ne discutono le prestazioni.
Le prestazioni di un sistema sono comunemente descritte in termini di falsi positivi e falsi negativi e vengono rappresentate tramite curva ROC (Receiver Operating Characteristic): per far questo, si esegue un confronto tra i flussi ritenuti anomali dall’algoritmo BnPDA e quelli che realmente lo sono in funzione delle label con le quali i filtri presenti nell’archivio MAWI etichettano le tracce monitorate. Si propongono nella sezione successiva i dettagli.
5.1
Tracce MAWI
Le prove sperimentali sono state realizzate impiegando come dati di in- put alcune delle tracce di traffico reperibili nell’archivio MAWILab. L’ar-
5.1. TRACCE MAWI
chivio contiene pi`u di nove anni di tracce relative a 15 minuti di traffico giornaliero registrato sul link trans-Pacifico dal Giappone agli Stati Uni- ti. I dati sono stati memorizzati giornalmente a partire dal Gennaio 2001 e contengono le informazioni relative agli header dei pacchetti del livello IP e del livello trasporto (suddette informazioni sono disponibili online; gli indirizzi IP sono stati resi anonimi e vengono omesse le informazioni di payload). Tramite rilevazione eseguita da quattro detector differenti (i quali implementano algoritmi basati su Trasformata di Hough, divergenza di Kullback-Leibler, Principal Component Analysis e distribuzione Gamma), il contributo pi`u significativo fornito dal progetto MAWI `e stato quello di classificare le tracce monitorate come segue:
• anomalous: traffico quasi certamente anomalo;
• suspicious: traffico che con alta probabilit`a pu`o essere considerato anomalo;
• notice: traffico non anomalo ma segnalato da almeno un detector; • benign: traffico non anomalo, non segnalato da nessun detector. Inoltre, i flussi etichettati come ”anomalous” sono a loro volta suddivisi in:
• attack: anomalie riconducibili ad attachi noti;
• special: anomalie associate ad attivita che coinvolgono porte well- known;
• unknown: anomalie di tipo sconosciuto, che non rientra- no nelle due categorie precedenti.
5.1. TRACCE MAWI
Il traffico etichettato come anomalous, suspicious o notice `e riportato in due file di tipo xml per traccia analizzata (uno per le anomalie di tipo ano- malouse suspicious, uno per quelle di tipo notice), dove per ogni anomalia individuata vengono riportati:
• T: tipo di anomalia (anomalous, suspicious o notice);
• Dr, Da: distanze da due punti di riferimento rispettivamente per il traffico regolare e anomalo. Si utilizza l’algoritmo opportuno (SCANN) per processare le uscite dei quattro detector; sulla base di tali va- lori viene deciso il tipo di anomalia. In particolare a questa vie- ne assegnata la label anomalous se Da≤Dr,suspicious se Da>Dr e Da/Dr-1≤0.5, notice se Da/Dr-1>0.5;
• C: numero associato alla categoria dell’anomalia: gli attack sono contraddistinti da 1 ≤ C ≤ 500, le anomalie special sono carat- terizzate da 500 < C ≤ 900 mentre per gli unknown si ha che C > 900);
• V: vettore costituito da 12 elementi binari i cui valori indicano quali detector hanno rivelato l’anomalia e con quale modalit`a di lavoro. In ordine, il vettore riporta: Hough (sensitive, optimal, conservati- ve), Gamma (sensitive, optimal, conservative), KL (sensitive, optimal, conservative), PCA (sensitive, optimal, conservative).
• Filtri che identicano l’anomalia tramite feature del traffico; • Timestamp che forniscono informazioni sull’inizio e la fine del
5.1. TRACCE MAWI
Tramite confronto tra le tracce che l’algoritmo proposto distingue in anomalous e normal e la classificazione effettuata a partire dal calcolo dei parametri di cui sopra, si caratterizzano le prestazione del sistema proposto in termini di falsi positivi e falsi negativi.
I falsi positivi sono i flussi considerati anomali dal sistema ma che sono etichettati dall’archivio MAWI come benign o notice; i falsi negativi sono invece i flussi etichettati come anomalous che non vengono rilevati.
Valutando anche la categoria cui appartiene l’anomalia ( attack, spe- cial, unknown), si pu`o ridefinire il concetto di falso negativo e rivalutare le prestazioni complessive del sistema testato. Le possibili definizioni cui si fa riferimento sono le seguenti [18]:
1. ”fn 2/3/4 detector”: considera falsi negativi le mancate rivelazioni di flussi etichettati come anomalous individuati da 2/3/4 dei quattro detector usati dal progetto MAWI;
2. ”fn attack”: considera falsi negativi le mancate rivelazioni di flussi etichettati come anomalous appartenenti alla categoria attack, ossia quella degli attacchi noti;
3. ”fn attack special”: considera falsi negativi le mancate rivelazioni di flussi etichettati come anomalous appartenenti alla categoria attack o alla categoria special (attacchi che utilizzano porte well-known); 4. ”fn unknown”: considera falsi negativi le mancate rivelazioni di flus-
si etichettati come anomalous appartenenti alla categoria unknown (attivita anomale sconosciute);