identificare feature significative per l’analisi nell’informatica forense utilizzando tecniche...

28

Upload: antonio-notarangelo

Post on 12-Apr-2017

176 views

Category:

Data & Analytics


0 download

TRANSCRIPT

Computer and Network Forensics (CNF)

Cosa sono: Tecniche usate per scoprire le prove in una grande varietà di crimini come

• furto di segreti commerciali;

• protezione di proprietà intellettuali;

• generale abuso di computer.

Obiettivo: scoprire l’origine della falla nella sicurezza e assicurare la riservatezza delle informazioni.

2

Caratteristiche dei Sistemi Forensi Audit Trails

Audit Trails

Riconoscere gli attacchi

tramite pattern noti

Deviazioni da condotte normali

Violazioni delle

politiche di sicurezza

3

Principali carenze dei sistemi Audit Trails

Gestiscono grandissime quantità di dati richiedendo spazio su disco e risorse di CPU;

Ogni file di log deve essere convertito in un formato serializzabile per essere processato e poi comparato coi pattern conosciuti;

I pattern memorizzati devono essere costantemente aggiornati, talvolta richiedendo l’intervento umano.

4

L’esperimento della DARPA

La DARPA (Defense Advanced Research Projects Agency) ha istituito un programma di valutazione per la scoperta di intrusioni costruendo una tipica LAN della U.S. Air Force. Da ogni connessione TCP/IP sono state estratte 41 feature. I tipi di attacchi subiti sono stati organizzati in cinque principali categorie:

• Normal

• Probing

• DOS: denial of service

• U2SU: unauthorized access to local super user (root) privilege

• R2L: unauthorized access from a remote machine

5

Distribuzione degli attacchi subiti dalla DARPA

6

Perché classificare i dati di input

Gli obiettivi posti dalla classificazione degli input sono:

• Eliminare feature inutili per migliorare l’accuratezza dei risultati;

• Velocizzare la computazione;

• Migliorare le performance generali dei meccanismi di rilevamento degli attacchi;

• Nel caso non ci fossero feature inutili, concentrarsi sulle più importanti potrebbe ridurre il tempo d’esecuzione.

7

Primo approccio alla classificazione

• Assumiamo di avere una grande quantità di variabili in input con vari gradi di importanza

𝑥 = 𝑥1, 𝑥2, … , 𝑥𝑛

• Si ha la necessità di un modello analitico o di una formula matematica che descriva con precisione la relazione tra input e output

𝑦 = 𝐹(𝑥)

• Una volta ottenuto un insieme di dati sperimentali, possono essere costruiti modelli che siano finalizzati alla simulazione e alla predizione.

8

Procedura di classificazione basata su prestazioni

Comporre il training set e il testing set;

Per ogni feature effettuare i seguenti

passi:

Eliminare la feature dal training set e testing set;

Usare l’insieme dei dati risultanti per addestrare

il classificatore;

Analizzare le prestazioni del classificatore usando

il test set, in base ai criteri di rendimento;

Classificare l’importanza della feature in base alle

regole.

9

Support Vector Machines (SVM)

• Le Support Vector Machine (SVM) definiscono un’architettura per la classificazione e regressione di pattern in due classi con il minimo errore rispetto all’insieme di addestramento.

• Sono state massicciamente utilizzate in una svariata serie di applicazioni e i risultati ottenuti sono sempre stati altamente competitivi, se confrontati con le tecniche allo stato dell’arte.

10

Obiettivi delle SVM

• Uno dei principali obiettivi è quello di ottenere un classificatore in grado di generalizzare bene.

• Per fare questo occorre trovare il giusto equilibrio tra:

11

• Capacità della macchina: l’abilità di una funzione di imparare correttamente un qualsiasi training set;

• Smoothness dell’ approssimazione: non seguire troppo fedelmente i punti da approssimare, ma cercare di evincere l’andamento generale.

Modello matematico generico delle SVM

• Dato un insieme di osservazioni etichettate 𝐷 = 𝑥𝑖 , 𝑦𝑖 derivanti da una distribuzione 𝑃 𝑋, 𝑌 , fissata ma sconosciuta, l’obiettivo della classificazione è quello di inferire la relazione che esiste tra X e Y sulla base dell’insieme D, detto training set.

• Occorre predire, per ogni 𝑥 ∈ 𝑋, la corrispondente etichetta y attraverso una funzione 𝑓(𝑥).

12

Modello matematico delle SVM

• Sia dato un insieme di osservazioni etichettate 𝐷 = 𝑥𝑖 , 𝑦𝑖 , con 𝑖 = 1,… , 𝑛, 𝑦𝑖 ∈ −1,1 , 𝑥𝑖 ∈ 𝑅

𝑛. 𝐷 è linearmente separabile se, per qualche 𝑤 ∈ 𝑅𝑛 e 𝑏 ∈ 𝑅, vale che

𝑦𝑖(𝑥𝑖 ∙ 𝑤 + 𝑏) ≥ 1 𝑝𝑒𝑟 𝑖 = 1,2,… , 𝑛

• L’iperpiano 𝑤 ∙ 𝑥 + 𝑏 = 0 è chiamato piano separatore.

13

Normale all’iperpiano (peso della feature)

Punto di polarizzazione (offset iperpiano)

Iperpiano nelle SVM

• Definiamo il margine di un piano separatore come 𝑑+(𝑑−), cioè la minima distanza del piano separatore dal più vicino punto positivo (negativo)

• Nel caso di punti linearmente separabili, esistono molti piani separatori che classificano correttamente il training set.

• Da un punto di vista delle capacità di generalizzazione essi sono però diversi.

14

Iperpiano nelle SVM

• Le SVM cercano un iperpiano che non sia solo corretto sul training set, ma che riesca anche a generalizzare bene.

• Il criterio consiste nel trovare l’iperpiano che massimizza il margine.

15

Regole per classificare le feature da SVM

• Per classificare l’importanza delle 41 feature consideriamo 3 principali criteri:

• Generale accuratezza della classificazione;

• Training time;

• Testing Time.

• Ogni feature verrà classificata come «importante», «secondaria» o «insignificante» in base alle regole applicate ai risultati della comparazione di prestazioni delle 41 feature originali SVM con le 40 feature SVM.

16

Regole per classificare le feature da SVM

1. If accuracy decreases and training time increases and testing time decreases, then the feature is important.

2. If accuracy decreases and training time increases and testing time increases, then the feature is important.

3. If accuracy decreases and training time decreases and testing time increases, then the feature is important.

4. If accuracy unchanges and training time increases and testing time increases, then the feature is important.

5. If accuracy unchanges and training time decreases and testing time increases, then the feature is secondary.

6. If accuracy unchanges and training time increases and testing time decreases, then the feature is secondary.

7. If accuracy unchanges and training time decreases and testing time decreases, then the feature is unimportant.

8. If accuracy increases and training time increases and testing time decreases, then the feature is secondary.

9. If accuracy increases and training time decreases and testing time increases, then the feature is secondary.

10. If accuracy increases and training time decreases and testing time decreases, then the feature is unimportant.

17

Artificial Neural Networks (ANN)

• Una rete neurale artificiale definisce un modello matematico per la simulazione di una rete di neuroni biologici, come ad esempio il sistema nervoso umano

• Le applicazioni più diffuse di questo sistema sono:

• Sistemi di filtraggio del segnale

• Sistemi di classificazione

• Previsione di serie temporali

• Riconoscimento facciale

18

«La copertina di The 2nd Law, tratta dall'Human Connectome Project, rappresenta la mappa dei percorsi del cervello umano, monitorando i circuiti nelle nostre teste e come elaboriamo le informazioni con colori brillanti al neon.» - http://www.rollingstone.com/music/news/muse-map-out-brain-on-the-2nd-law-album-art-20120730

Obiettivi delle ANN

Simulare i diversi aspetti legati al comportamento e alle capacità del cervello umano, come:

• Elaborazione intelligente delle informazioni;

• Elaborazione distribuita;

• Elevato livello di parallelismo;

• Facoltà di apprendimento, di generalizzazione e di adattamento;

• Alta tolleranza ad informazioni poco precise (o sbagliate).

19

La rete neurale biologica

• È costituita da un insieme di cellule nervose (i neuroni) collegati tramite fibre nervose.

• La trasmissione delle informazioni fra i neuroni è paragonabile alla trasmissione di un segnale elettrico.

• La quantità di segnale (informazione) trasmessa verso il neurone postsinaptico dipende da diversi fattori:

• Intensità del segnale in entrata (anche ricezione di più segnali da neuroni diversi)

• Forza delle sinapsi dei neuroni in entrata (rilascio dei neurotrasmettitori)

• Soglia di attivazione del neurone ricevente

20

Rete neurale biologica VS Rete neurale artificiale

21

• n: neuroni in entrata;

• 𝑥𝑖: intensità del segnale;

• 𝑤𝑖: forza sinapsi;

• b: soglia del neurone postsinaptico

• ξ: combinazione segnali in entrata

• σ: funzione di attivazione

• y: output

Modello matematico delle ANN

22

Funzione di attivazione: funzione che simula il comportamento del neurone sinaptico;

Combinazione feature in ingresso: trasformazione matematica applicata al vettore delle feature in ingresso per determinare l’intensità del segnale in input;

Vettore dei pesi: funzione di memoria della conoscenza accumulata dal singolo neurone;

Vettore feature in ingresso.

𝑦′ =

1, 𝑠𝑒 𝑦′ = 𝜎 𝑤𝑖𝑥𝑖

𝑛

1

> 𝑏

−1, 𝑠𝑒 𝑦′ = 𝜎 𝑤𝑖𝑥𝑖

𝑛

1

< 𝑏

Modello di apprendimento del percettrone

• Formula di aggiornamento dei pesi:

• 𝒙𝒊: i-esimo esempio del training set

• 𝒙𝒊𝒋: j-esimo attributo dell’esempio 𝑥𝑖

• 𝒘 𝒌 : peso associato all’i-esimo esempio del training set dopo la k-esima iterazione, con 𝑤 𝑘 = 𝑤1

𝑘 , … , 𝑤𝑗𝑘 , … , 𝑤𝑛

𝑘

• λ: learning rate

• 𝝀 ≈ 𝟎: il nuovo peso è influenzato prevalentemente dai pesi attribuiti nelle precedenti iterazioni

• 𝝀 ≈ 𝟏: il nuovo peso p influenzato dall’aggiustamento eseguito all’iterazione corrente

23

• i: indice per iterare sugli esempi del training set

• j: indice per iterare sulle feature (attributi) di ciascun esempio del training set

• k: indice delle iterazioni

𝑤𝑗𝑘+1= 𝑤𝑗

𝑘+ 𝜆 𝑦𝑖 − 𝑦𝑖

′ 𝑘 ∙ 𝑥𝑖𝑗

Regole per classificare le feature da ANN

• Per classificare l’importanza delle 41 feature consideriamo 3 principali criteri:

• Generale accuratezza della classificazione (OA);

• Falsi positivi (FP): ipotesi valida, ma viene rifiutata;

• Falsi negativi (FN): ipotesi sbagliata, ma viene accettata.

• Ogni feature verrà classificata come «importante», «secondaria» o «insignificante» in base alle regole applicate ai risultati della comparazione di prestazioni delle 41 feature originale ANN con le 40 feature ANN.

• Insieme delle regole:

• 1. If OA increases and FP decreases and FN decreases, then the feature is unimportant.

• 2. If OA increases and FP increases and FN decreases, then the feature is unimportant.

• 3. If OA decreases and FP increases and FN increases, then the feature is important.

• 4. If OA decreases and FP decreases and FN increases, then the feature is important.

• 5. If OA un-changes and FP un-changes, then the feature is secondary.

24

Risultati con le SVM

25

Risultati con le ANN

26

Conclusioni

• Le SVM superano le ANN in termini di scalabilità, tempo di addestramento, tempo d’esecuzione e accuratezza nelle predizioni.

• Le SVM possono essere addestrate attraverso un numero molto grande di pattern, mentre le ANN richiederebbero troppo tempo per l’addestramento o fallirebbero quando il numero di pattern aumenta a dismisura.

• Le SVM raggiungono facilmente una altissima precisione di rilevamento (oltre il 99%) per ognuna delle 5 classi di dati, indipendentemente dal numero di feature usate (tutte le 41, le più importanti, ecc...).

27

Riferimenti bibliografici

• Intrusion Detection: Support Vector Machines and Neural Networks Srinivas Mukkamala, Guadalupe Janoski, Andrew H. Sung - New Mexico Institute of Mining and Technology http://www.cs.uiuc.edu/class/fa05/cs591han/papers/mukkCNN02.pdf

• Audit Data Reduction for Intrusion Detection S. Mukkamala, G. R. Tadiparthi, N. Tummala, G. Janoski - New Mexico Institute of Mining and Technology http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.105.7863&rep=rep1&type=pdf

• Identifying Significant Features for Network Forensic Analysis Using Artificial Intelligent Techniques Srinivas Mukkamala, Andrew H. Sung – New Mexico Institute of Mining and Technology http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.14.8291&rep=rep1&type=pdf

• Artificial Neural Network (ANN) Elisa Turricchia – Università di Bologna http://bias.csr.unibo.it/golfarelli/DataMiningSTI/MaterialeDidattico/Reti%20Neurali.pdf

• Introduzione alle Support Vector Machines per la classificazione Manuele Bicego – Università di Verona https://www.docenti.unina.it/downloadPub.do?tipoFile=md&id=74273

28