Un modello integrato control-flow e data-flow per il rilevamento ...
Un modello integrato control-flow e data-flow per il rilevamento ...
Un modello integrato control-flow e data-flow per il rilevamento ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Indice<br />
1 Introduzione 1<br />
1.1 Anomaly detection e system call . . . . . . . . . . . . . . . . . . . . 3<br />
1.2 Obiettivo del lavoro . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br />
1.3 Struttura della tesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br />
2 Modelli <strong>per</strong> l’anomaly detection 9<br />
2.1 Modelli <strong>control</strong> <strong>flow</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . 10<br />
2.1.1 Automi a stati finiti . . . . . . . . . . . . . . . . . . . . . . . 10<br />
2.1.2 VtPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12<br />
2.1.3 Execution graphs . . . . . . . . . . . . . . . . . . . . . . . . . 13<br />
2.1.4 Abstract stack, un <strong>modello</strong> costruito staticamente . . . . . . 16<br />
2.2 Modelli <strong>data</strong> <strong>flow</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />
2.2.1 <strong>Un</strong> <strong>modello</strong> <strong>data</strong> <strong>flow</strong> . . . . . . . . . . . . . . . . . . . . . . 19<br />
2.3 Discussione dei modelli studiati . . . . . . . . . . . . . . . . . . . . . 21<br />
3 <strong>Un</strong> <strong>modello</strong> che integra <strong>control</strong> <strong>flow</strong> e <strong>data</strong> <strong>flow</strong> 25<br />
3.1 Debolezze dei modelli esistenti . . . . . . . . . . . . . . . . . . . . . 25<br />
3.1.1 Primo scenario: vulnerab<strong>il</strong>ità nel codice . . . . . . . . . . . . 26<br />
3.1.2 Secondo scenario: errore di configurazione di un server . . . . 31<br />
3.1.3 Terzo scenario: debolezza delle relazioni binarie . . . . . . . . 34<br />
3.2 Proposta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35<br />
3.3 Costruzione del <strong>modello</strong> . . . . . . . . . . . . . . . . . . . . . . . . . 37<br />
3.3.1 Algoritmo di apprendimento delle relazioni unarie . . . . . . 37<br />
3.3.2 Algoritmo di apprendimento delle relazioni binarie . . . . . . 38<br />
3.3.3 Descrizione dell’algoritmo . . . . . . . . . . . . . . . . . . . . 44<br />
3.4 L’algoritmo completo <strong>per</strong> la costruzione del <strong>modello</strong> . . . . . . . . . 46<br />
3.4.1 Relazione con l’algoritmo originale rispetto ai falsi positivi . . 46<br />
3.4.2 <strong>Un</strong>a possib<strong>il</strong>e variante . . . . . . . . . . . . . . . . . . . . . . 47