Machine Learning for Application-Layer Intrusion Detection

Download Machine Learning for Application-Layer Intrusion Detection

Post on 24-Jan-2015

6.553 views

Category:

Documents

0 download

DESCRIPTION

 

TRANSCRIPT

  • 1. 82.37.17.216:63601 anomalous (IIS exploit) 62.166.241.60:12431 normal190.72.84.114:10991normal 66.84.150.186:41206 anomalous (Nimda worm) Machine Learning for Application-Layer Intrusion Detection Dissertation by Konrad Rieck Fraunhofer Institute FIRST & Berlin Institute of Technology Berlin, Germany

2. Machine Learning for Application-Layer Intrusion Detection Konrad RieckVon der Fakultt IV Elektrotechnik und Informatik der Technischen Universitt Berlin zur Erlangung des akademischen Grades Doktor der Naturwissenscha en (Dr. rer. nat.) genehmigte DissertationVorsitzender: Prof. Dr. Klaus Obermayer (Technische Universitt Berlin) 1. Gutachter: Prof. Dr. Klaus-Robert Mller (Technische Universitt Berlin) 2. Gutachter: Prof. Dr. John Mc Hugh(Dalhousie University) 3. Gutachter: Pavel Laskov, Ph.D. (Universitt Tbingen)Tag der wissenscha lichen Aussprache: 6. Juli 2009Berlin, Deutschland 2009 D 83 3. To my parents and Astrid. AcknowledgementsFirst of all, I would like to thank Prof. Dr. Klaus-Robert Mller who by his guidance and infectious optimism has considerably fostered my interest and work in machine learning for intrusion detection. Second, and maybe for most, I like to thank Pavel Laskov, Ph.D. whoas a colleague, mentor and friendprovided indispensable support and advice during the course of my research. ird, I would like to thank Prof. Dr. John Mc Hugh for refereeing this thesis and providing his expertise in the areas of computer security and intrusion detection. is thesis would not have been possible without the help, spirit and humor of people in the great ReMIND team, namely Tammo Krger, Christian Gehl, Marius Klo , Ulf Brefeld, Sebastian Mika, Christin Schfer, Patrick Dssel, Ren Gerstenberger, Guido Schwenk and Cristian Grozea. Further notable support and companionship has been provided by my colleagues Sren Sonnenburg, Mikio Braun, Andreas Ziehe, Stefan Harmeling and Vojtch Franc. Overall, I would like to deeply thank all people at the Intelligent Data Analysis Department of the Fraunhofer Institute FIRST and the Ma- chine Learning Group of the Berlin Institute of Technology (TU Berlin).Finally, I like to gratefully acknowledge funding from the German Federal Ministry of Education and Research under the projects MIND (FKZ -SC A) and ReMIND (FKZ -ISA, http://www.mind-ids.org). 4. SummaryMisuse detection as employed in current network security products relies on the timely generation and distribution of so called attack signatures. While appropriate signatures are available for the majority of known attacks, misuse detection fails to protect from novel and unknown threats, such as zero-day exploits and worm outbreaks. e in- creasing diversity and polymorphism of network attacks further obstruct modeling sig- natures, such that there is a high demand for alternative detection techniques. We address this problem by presenting a machine learning framework for automatic detection of unknown attacks in the application layer of network communication. e framework rests on three contributions to learning-based intrusion detection: First, we propose a generic technique for embedding of network payloads in vector spaces such that numerical, sequential and syntactical features extracted from the payloads are ac- cessible to statistical and geometric analysis. Second, we apply the concept of kernel functions to network payload data, which enables e cient learning in high-dimensional vector spaces of structured features, such as tokens, q-grams and parse trees. ird, we devise learning methods for geometric anomaly detection using kernel functions where normality of data is modeled using geometric concepts such as hyperspheres and neigh- borhoods. As a realization of the framework, we implement a standalone prototype called S applicable to live network tra c.e framework is empirically evaluated using real HTTP and FTP network tra c and over attacks unknown to the applied learning methods. Our prototype S signi cantly outperforms the misuse detection system S and several state-of-the- art anomaly detection methods by identifying % unknown attacks with less than. % false positivesa quality that, to the best of our knowledge, has not been attained in previous work on network intrusion detection. Experiments with evasion attacks and unclean training data demonstrate the robustness of our approach. Moreover, run-time experiments show the advantages of kernel functions. Although operating in a vector space with millions of dimensions, our prototype provides throughput rates between Mbit/s on real network tra c. is performance renders our approach readily applicable for protection of medium-scale network services, such as enterprise Web ser- vices and applications. While the proposed framework does not generally eliminate the threat of network attacks, it considerably raises the bar for adversaries to get their attacks through network defenses. In combination with existing techniques such as signature-based systems, it strongly hardens todays network protection against future threats. 5. ZusammenfassungAktuelle Sicherheitssysteme zur Erkennung von netzbasierten Angri en sind auf die rechtzeitige Erstellung von Erkennungsmustern (Signaturen) angewiesen. Fr die Mehr- zahl der bekannten Angri e stehen solche Signaturen zur Verfgung; ein Schutz vor neuen Bedrohungen, wie Ausbrchen von Computerwrmern und Zero-Day Exploits, ist mit dieser Technik jedoch nicht mglich. Die zunehmende Diversitt und Polymor- phie von netzbasierten Angri en erschwert die Modellierung von Signaturen, so dass ein Bedarf an alternativen Techniken zur Angri serkennung besteht. In dieser Doktorarbeit werden neuartige Anstze zur Erkennung von unbekannten und neuen Angri en in der Anwendungsschicht entwickelt. Grundlage der vorgestell- ten Methoden bilden moderne Konzepte des maschinellen Lernens. Zunchst werden Techniken zur Einbettung von Netzinhalten in Vektorrume konzipiert, die numeri- sche, sequentielle und syntaktische Merkmale fr Methoden des maschinellen Lernens zugnglich machen. Um eine e ziente Berechnung in diesen hochdimensionalen Vek- torrumen zu gewhrleisten, werden Kernfunktionen fr strukturierte Merkmale, wie Tokens, Q-gramme und Parsebume, entwickelt. Schlielich werden kernbasierte Lern- verfahren zur Anomalieerkennung vorgestellt, die unbekannte und neue Angri e durch geometrische Strukturen wie Kugeln und Nachbarscha en von normalen Daten di e- renzieren. Die entwickelten Konzepte zur Angri serkennung werden in einem Prototyp realisiert, der autark Angri e im Netzverkehr identi ziert. In einer empirischen Evaluation werden die Erkennungs- und Laufzeitleistung der vorgestellten Verfahren mit realen HTTP- und FTP-Netzdaten und Angri en unter- sucht. Der entwickelte Prototyp bertri deutlich die Leistung des signaturbasierten Systems S und aktueller Anomalieerkennungsmethoden. Er identi ziert % der unbekannten Angri e bei unter , % falsch-positiven Alarmen eine Qualitt, die nicht in bisherigen Anstzen zur netzbasierten Angri serkennung erreicht werden konnte. Experimente mit getarnten Angri en und verunreinigten Daten demonstrieren die Robustheit der Lerntechniken. Weiterhin ermglicht der Einsatz von Kernfunktio- nen Durchsatzraten zwischen Mbit/s, so dass ein Schutz von kleinen und mittel- groen Netzanwendungen mglich wird. Die aus dieser Arbeit resultierenden Verfahren knnen die Bedrohung durch An- gri e aus dem Netz nicht grundstzlich eliminieren, dennoch erschwert der Einsatz lernbasierter Erkennung erheblich das unbemerkte Durchfhren von Angri en. In Kom- bination mit klassischen Sicherheitstechniken wie signaturbasierten Systemen kann so der Schutz von Netzwerken vor zukn igen Bedrohungen gestrkt werden. 6. Contents 1 Introduction1. Intrusion Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3. Machine Learning . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5.esis Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8.esis Organization .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92 Feature Extraction at Application Layer11. Network Layers . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 11. Feature Maps . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 14. Numerical Features for Payloads . . . . . . . . . . . . . . . . . . . . . . . . 14. Sequential Features for Payloads . . . .. . . . . . . . . . . . . . . . . . . . 16. Syntactical Features for Payloads . . . . . . . . . . . . . . . . . . . . . . . 19. Related Work . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 243 From Network Features to Kernels 29.Kernel Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29.Kernels for Sequences . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . 32.Kernels for Trees . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . 40.Normalization of Kernels . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49.Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494 Learning for Intrusion Detection 53. Machine Learning and Intrusion Detection. . . . . . . . . . . . . . . . . 53. Anomaly Detection using Hyperspheres . .. . . . . . . . . . . . . . . . . 56. Anomaly Detection using Neighborhoods . . . . . . . . . . . . . . . . . . 62. Retraining and Calibration . . . . . . . . . .. . . . . . . . . . . . . . . . . 67. Visualization and Explainability . . . . . . .. . . . . . . . . . . . . . . . . 69. Related Work . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . 755 Empirical Evaluation and Applications 79.Evaluation Data and Setup . . . . . .. . . . . . . . . . . . . . . . . . . . .80.Detection Performance . . . . . . . .. . . . . . . . . . . . . . . . . . . . .86.Comparison with State of the Art . . . . . . . . . . . . . . . . . . . . . . .90.Robustness and Mimicry . . . . . . . . . . . . . . . . . . . . . . . . . . . .92.Run-time Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97.An Application Scenario . . . . . . .. . . . . . . . . . . . . . . . . . . . . 102 7. List of Figures vii 6 Conclusions105.Summary of Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106.Application Domains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107.Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107A Appendix 109 A. Lemmas and Proofs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 A.e Birthday Paradox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 A. Automatic Symbol Selection. . . . . . . . . . . . . . . . . . . . . . . . . . 110 A. Analysis of Feature Spaces .. . . . . . . . . . . . . . . . . . . . . . . . . . 113 A. Model Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 A. Notation and Symbols . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . 117 List of Figures . Reported vulnerabilities and malicious so ware per year. . . . . . . . . .2 . Security as a cyclic process. . . . . . . . . . . . . . . . . . . .. . . . . . . .3 . Graphical depiction of structural risk minimization. . . . . . . . . . . . .7 . Machine learning for application-layer intrusion detection.. . . . . . . .9 .e TCP/IP model. . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . 12.Embedding languages for sequential features. . . . . . . . . . . . . . . . . 17.Parse tree for an HTTP request. . . . . . . . .. . . . . . . . . . . . . . . . 21.Parse tree for an FTP session. . . . . . . . . . . . . . . . . . . . . . . . . . 21.Embedding sets for syntactical features. . . . . . . . . . . . . . . . . . . . 22 .Geometry in feature space. . . . . . . . . . . . . . . . . . . . . . . . . . . . 30.Sorted arrays of -grams for two sequences. . . . . . . . . . . . . . . . . . 35.Annotation of su x tree edges. . . . . . . . . . . . . . . . . . . . . . . . . 36.Generalized su x tree for two sequences. . . . . . . . . . . . . . . . . . . 37.Run-time performance of sequence kernels.. . . . . . . . . . . . . . . . . 39.Shared subtrees in parse trees. . . . . . . . .. . . . . . . . . . . . . . . . . 41.Dynamic programming for tree kernels. . .. . . . . . . . . . . . . . . . . 43.Run-time performance of tree kernels. . . .. . . . . . . . . . . . . . . . . 48 .Hypersphere for anomaly detection. . . . . . . . . . . . . . . . . . . . . . 56.Center of mass and one-class SVM. . .. . . . . . . . . . . . . . . . . . . . 57.One-class SVM with RBF kernel. . . . . . . . . . . . . . . . . . . . . . . . 60.Neighborhoods for anomaly detection. . . . . . . . . . . . . . . . . . . . . 62.Gamma anomaly score. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 8. viii List of Tables. Zeta anomaly score. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65. Feature di erences of bu er over ow attack. . . . . . . . . . . . . . . . . . 71. Feature di erences of command injection attack. . . . . . . . . . . . . . . 71. Feature di erences of PHP code injection attack.. . . . . . . . . . . . . . 72. Feature coloring of bu er over ow attack. . . . . . . . . . . . . . . . . . . 73. Feature coloring of command injection attack. . . . . . . . . . . . . . . . 74. Feature coloring of PHP code injection attack. . .. . . . . . . . . . . . . . 74.Connection lengths in data sets. . . . . . . . . . . . . .. . . . . . . . . . .81 .Regular and bounded ROC curves. . . . . . . . . . . . . . . . . . . . . . .85 .Detection performance for binary q-grams. . . . . . . . . . . . . . . . . .88 .Impact of q-gram length on detection performance. . . . . . . . . . . . .89 .Comparison of S and state-of-the-art methods. . . . . . . . . . . . .91 .Impact of attacks in training data. . . . . . . . . . . . . . . . . . . . . . . .93 .Detection performance with attacks in training data. .. . . . . . . . . . .94 .HTTP attack with mild mimicry. . . . . . . . . . . . .. . . . . . . . . . .95 .HTTP attack with blended mimicry. . . . . . . . . . . . . . . . . . . . . .97 .Learning times of one-class SVM and Zeta. . . . . . . . . . . . . . . . . .98 .Prediction time of one-class SVM. . . . . . . . . . . . . . . . . . . . . . . .99 .Prediction time of Gamma and Zeta. . . . . . . . . . .. . . . . . . . . . . 100 .Visualization of anomaly scores for HTTP. . . . . . . . . . . . . . . . . . . 102 .Visualization of anomaly scores for FTP. . . . . . . . .. . . . . . . . . . . 103A. Detection performance of approximate tree kernel. . . . . . . . . . . . . . 111 A. Kernel PCA of approximate tree kernel. . . . . . .. . . . . . . . . . . . . 112 A. Kernel PCA of network features. . . . . . . . . . . . . . . . . . . . . . . . . 114 A. Expansion constants of network features. . . . . . .. . . . . . . . . . . . . 114 List of Tables. Numerical features for application payloads. . . . . . . . . . . . . . . . . . 15. General numerical features for application paylo...

Recommended

View more >