Network Traffic Exposed and Concealed
Total Page:16
File Type:pdf, Size:1020Kb
Network Traffic Exposed and Concealed Dissertation submitted for the degree of Doctor of Engineering Presented by Thomas Zink at the Faculty of Sciences Department of Computer and Information Science Date of the oral examination: 2014-12-18 First supervisor: Prof. Dr. Marcel Waldvogel Second supervisor: Prof. Dr. Oliver Haase Konstanzer Online-Publikations-System (KOPS) URL: http://nbn-resolving.de/urn:nbn:de:bsz:352-0-268285 (CC BY 4.0) This work is licensed under a Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/. To Valerian and Floriana. You have enriched my life beyond belief. May the force be with you. Abstract Cyberspace: a world at war. Our privacy, freedom of speech, and with them the very foundations of democracy are under attack. In the virtual world frontiers are not set by nations or states, they are set by those, who control the flows of information. And control is, what everybody wants. The Five Eyes are watching, storing, and evaluating every transmission. Internet corporations compete for our data and decide if, when, and how we gain access to that data and to their pretended free services. Search engines control what information we are allowed - or want - to consume. Network access providers and carriers are fighting for control of larger networks and for better ways to shape the traffic. Interest groups and copyright holders struggle to limit access to specific content. Network operators try to keep their networks and their data safe from outside - or inside - adversaries. And users? Many of them just don't care. Trust in concepts and techniques is implicit. Those who do care try to take back control of the Internet through privacy-preserving techniques. This leads to an arms race between those who try to classify the traffic, and those who try to obfuscate it. But good or bad lies in the eye of the beholder, and one will find himself fighting on both sides. Network Traffic Classification is an important tool for network security. It allows identification of malicious traffic and possible intruders, and can also optimize network usage. Network Traffic Obfuscation is required to protect transmissions of important data from unauthorized observers, to keep the information private. However, with security and privacy both crumbling under the grip of legal and illegal black hat crackers, we dare say that contemporary traffic classification and obfuscation techniques are fundamentally flawed. The underlying concepts cannot keep up with technological evolution. Their implementation is insufficient, inefficient and requires too much resources. We provide (1) a unified view on the apparently opposed fields of traffic classification and obfuscation, their deficiencies and limitations, and how they can be improved. We show that (2) using multiple classification techniques, optimized for specific tasks improves overall resource requirements and subsequently increases classification speed. (3) Classification based on application domain behavior leads to more accurate information than trying to identify communication protocols. (4) Current approaches to identify signatures in packet content are slow and require much space or memory. Enhanced methods reduce these requirements and allow faster matching. (5) Simple and easy to implement obfuscation techniques allow circumvention of even sophisticated contemporary classification systems. (6) Trust and privacy can be increased by reducing communication to a required minimum and limit it to known and trustworthy communication partners. Our techniques improve both security and privacy and can be applied efficiently on a large scale. It is but a small step in taking back the Web. Kurzfassung Es herrscht Krieg im Cyberspace. Unsere Privatsph¨are,das Recht auf Meinungsfreiheit, und mit ihnen die Grundlagen der Demokratie werden angegriffen. In der virtuellen Welt werden Grenzen nicht von Staaten gezogen, sondern von denen, die die Informationsfl¨usse kontrollieren. Und diese Kontrolle wollen alle. Die \Five Eyes"-Staaten beobachten und speichern jegliche Daten¨ubertragung und werten diese aus. Internetfirmen konkurrieren um unsere Daten und entscheiden ob, wann und wie wir auf diese Daten oder die von ihnen scheinbar kostenlos bereitgestellten Dienstleistungen zugreifen d¨urfen.Suchmaschinen kontrollieren welche Informationen wir konsumieren d¨urfen{ oder wollen. Netzbetreiber k¨ampfenum die Kontrolle noch gr¨oßerer Netzwerke und um bessere Methoden den Datenverkehr zu beeinflussen. Interessengruppen und Rechteverwerter bem¨uhensich um Limitierung oder gar Zensur bestimmter Inhalte. Administratoren versuchen ihre Netze und Daten vor Gegnern zu sch¨utzen. Und die Benutzer? Die meißten interessieren sich f¨urall dies gar nicht. Das Vertrauen in Konzepte und Techniken wird vorbehaltlos gegeben. Doch diejenigen, die sich interessieren, versuchen die Kontrolle ¨uber das Internet zur¨uck zu gewinnen. Sie versuchen dies mit Techniken, die die Privatsph¨areerhalten sollen. Dies f¨uhrtzu einem Wettr¨ustenzwischen denen, die den Netzwerkverkehr identifizieren wollen, und denen, die ihn verschleiern wollen. Aber Gut und B¨oseliegen im Auge des Betrachters und so wird man sich an beiden Fronten k¨ampfensehen. Netzwerkverkehr-Analyse ist ein wichtiges Werkzeug zur Erhaltung der Netzwerk- Sicherheit. Es erlaubt, sch¨adlichen Datentransfer und Einbrecher zu erkennen und kann ebenfalls dazu genutzt werden, die Auslastung der Infrastruktur zu optimieren. Netzwerkverkehr-Verschleierung wird ben¨otigtum die Ubertragung¨ wichtiger Daten vor unbefugten Beobachtern zu sch¨utzen.Es dient dem Datenschutz. Aber Sicherheit und Datenschutz brechen unter der eisernen Faust von legalen und illegalen Hackern zusammen. Wir wagen zu behaupten dass sowohl Netzwerkverkehr-Analyse als auch Netzwerkverkehr- Verschleierung fundamentale M¨angelaufweisen. Die Grundkonzepte k¨onnennicht mit den Entwicklungen der letzten Jahre mithalten. Ihre Implementierungen sind nicht ausreichend, ineffizient und ben¨otigenzu viele Ressourcen. Wir zeigen (1) eine umfassende Ubersicht¨ der vermeintlich entgegengesetzten Felder der Verkehrsanalyse und der Verkehrsverschleierung. (2) Die Kombination mehrerer optimierter Klassifikationstechniken kann Anforderungen an Ressourcen reduzieren und dadurch die Leistung erh¨ohen.(3) Klassifizierung von Anwendungsdom¨anenliefert aus- sagekr¨aftigereErgebnisse als die Identifizierung von Kommunikationsprotokollen. (4) Derzeitige Techniken zur Erkennung von Signaturen sind langsam und ben¨otigenviel Spe- icher. Diese Anforderungen k¨onnenreduziert werden und die Suche beschleunigt werden. (5) Einfach zu implementierende Verschleierungstechnicken k¨onnenselbst hochentwickelte Klassifizierungstechniken umgehen. (6) Vertrauen und Datensicherheit k¨onnenverbessert werden, indem man Kommunikation vermeidet und auf ein Mindestmaß beschr¨ankt. Unsere Techniken verbessern sowohl die Datensicherheit als den Datenschutz und k¨onneneffizient eingesetzt werden. Es ist ein kleiner Schritt, um das Netz zur¨uck zu erobern. vi Contents I Overview 1 1 Introduction 3 1.1 In a Nutshell . 4 1.2 Motivation . 5 1.3 Claims and Contribution . 7 1.3.1 Publications . 9 1.3.2 Software . 10 1.4 Outline and Content . 10 2 Background 13 2.1 Protocols, Layers, and Encapsulation . 13 2.2 Router Functions . 15 2.3 Of Packets and Flows . 16 2.4 Traffic Classification and Obfuscation . 17 3 The Art of Traffic Classification and Obfuscation 21 3.1 Traffic Classification Issues . 25 3.1.1 No publicly available or shareable Data and Rulesets. 25 3.1.2 No standard Measurement and evaluation Metrics. 26 3.1.3 Different Classification Scope and Goals. 26 3.1.4 Few publicly available Classification Tools. 26 3.1.5 No Baseline or Ground Truth. 26 3.1.6 Increasing Line-Speeds and Scalability. 27 3.2 Traffic Classification Challenges . 27 3.3 Traffic Classification Techniques . 29 3.3.1 Point Location . 30 3.3.2 Pattern Matching . 30 3.3.3 Machine Learning . 31 3.3.4 Behavior Analysis . 32 3.4 A unified Taxonomy . 33 3.4.1 Purpose . 33 3.4.2 Goal . 34 3.4.3 Scope . 35 3.4.4 Application . 35 3.4.5 Link Location . 35 3.4.6 Data . 35 3.4.7 Method . 36 vii Contents 3.4.8 Traffic Features . 36 3.4.9 Metrics . 36 3.5 Effective Traffic Obfuscation . 37 3.5.1 Encrypt Payload . 38 3.5.2 Obfuscate Flow Features . 38 3.5.3 Traffic Hiding . 39 3.6 Conclusion . 39 II Traffic Identification 41 4 Building better Multi-Classification Systems 43 4.1 Traditional Rulesets and Multi-Classification . 44 4.1.1 Traditional Rulesets . 44 4.1.2 Multi-classification . 47 4.2 Rules Anatomy . 47 4.3 From Rules to Circuits . 49 4.3.1 Rule Preprocessing . 51 4.3.2 Ruleset Partitioning . 52 4.3.3 Compile the Engines . 54 4.4 Evaluation . 56 4.4.1 Ruleset Structure . 56 4.4.2 Ruleset Preprocessing . 57 4.4.3 Rule Matching . 59 4.5 Conclusion . 60 5 Efficient P2P flow classification on Physical Interface Cards 63 5.1 Introduction . 64 5.2 Related Work . 64 5.3 A brief history of Peer-to-Peer Protocols . 65 5.3.1 P2P Properties . 66 5.3.2 Obfuscation and Encryption in P2P networks . 67 5.4 Efficient P2P Classification . 68 5.4.1 Challenges in classifying P2P traffic . 68 5.4.2 Classification Algorithm . 69 5.4.3 A Guide for Hardware Implementation . 74 5.5 Evaluation . 77 5.5.1 Dataset, Baseline, and Metrics . 78 5.5.2 Converting Flows and Building a Baseline . 78 5.5.3 Results . 79 5.6 Conclusion . 82 6 Enhanced String Matching 85 6.1 Introduction . 86 6.2 Related Work . 87 6.3 Generic Single-Byte Matching engine . 88 6.3.1 Regular Expression Encoding . 89 6.3.2 Rule Encoding . 91 viii Contents 6.3.3 Rule Matching . 93 6.3.4 Constraints and Limitations . 94 6.4 Evaluation . 95 6.5 Conclusion . 96 III Traffic Obfuscation 99 7 Efficient BitTorrent Traffic Obfuscation 101 7.1 Introduction . 102 7.2 Related Work . 103 7.3 Introduction to BitTorrent . 105 7.4 Obfuscated Handshaking . 105 7.4.1 Concealing Signatures, a first approach . 105 7.4.2 Achieving true randomness . 106 7.4.3 Reducing Reconnects: Magic Peer ID . 108 7.4.4.