03.06.2013 Views

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 ...

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!