Enhanced Performance and Privacy for Core Internet Protocols
Total Page:16
File Type:pdf, Size:1020Kb
Enhanced Performance and Privacy for Core Internet Protocols Kumulative Dissertation zur Erlangung des akademischen Grades Dr. rer. nat. an der Fakultät für Mathematik, Informatik und Naturwissenschaften der Universität Hamburg eingereicht beim Fach-Promotionsausschuss Informatik von Erik Sy aus Pasewalk November 2019 Gutachter: Prof. Dr.-Ing. Hannes Federrath Prof. Dr-Ing. Claudia Diaz Tag der Disputation: 18. August 2020 Danksagung Diese Dissertation ist zwischen 2016 und 2019 am Arbeitsbereich Security and Privacy der Universität Hamburg entstanden. An dieser Stelle möchte ich mich bei allen bedanken, die zu ihrem Gelingen beigetragen haben. Besonderer Dank gilt meinem Doktorvater Hannes Federrath, der mich bei der Erstellung dieser Dissertation begleitet hat. Er hat mit mir die Zuversicht geteilt, dass ich nach meinem Studium der Physik erfolgreich in der IT-Sicherheit forschen werde. Mein Dank gilt ferner Christian Burkert, Mathias Fischer, Dominik Herrmann, Moritz Mön- nich, Tobias Müller, und Matthias Marx für die tolle Zusammenarbeit beim Verfassen von Forschungsbeiträgen. Ich bedanke mich auch bei meinen Kollegen die ich während meiner Promotionszeit kennen und schätzen gelernt habe: Maximilian Blochberger, Britta Böhm, Doganalp Ergenc, Steffen Haas, Malte Hamann, Stefanie Jasser, David Jost, Jens Lindemann, Sadaf Momeni, Johanna Nehring- Ansohn, Tom Petersen, Dimitra Pons, Henning Pridöhl, Eugen Ruppert, Monina Schwarz, Nurefsan Sertbas, Bahareh Shojaie, Marius Stübs, Florian Wilkens und Ephraim Zimmer. Schließlich bedanke ich mich bei meiner Familie, die mich nach Kräften unterstützt und bestärkt hat. Mein ganz besonderer Dank gilt meiner Partnerin Lisa und meinen Kindern Malou und Bela. Sie haben mich intensiv während des Entstehens dieser Arbeit begleitet und mich, immer wenn es nötig war, wieder auf andere Gedanken gebracht. Zusammenfassung Der Datenverkehr im Internet besteht zu einem Großteil aus kurzen Datenübertragungen, welche die Protokolle Domain Name System (DNS), Transmission Control Protocol (TCP), Transport Layer Security (TLS) oder QUIC nutzen. Im Rahmen dieser Dissertation werden Möglichkeiten untersucht, wie diese Protokolle im Hinblick auf Datenschutz, Ressourcenverbrauch sowie Latenz für den Verbindungsaufbau optimiert werden können. Zu den Ergebnissen dieser Dissertation im Bereich DNS gehört die Vorstellung eines Designs zur Auflösung von Domainnamen in IP-Adressen, bei dem der Nutzer relevante DNS-Einträge nicht nur von DNS-Resolvern sondern ebenfalls direkt von Webservern erhalten kann. Dieser Ansatz kann dem Nutzer traditionelle DNS-Anfragen ersparen und damit den Aufruf von Websites erheblich beschleunigen. Ferner, ermöglicht dieser Ansatz einen besseren Schutz von Nutzerdaten, weil der verwendete DNS-Resolver deutlich weniger DNS-Anfragen vom Nutzer einsehen kann. Die Protokolle TCP, TLS und QUIC wurden im Rahmen dieser Dissertation auf Datenschutzprob- leme untersucht. Jedes dieser Protokolle erlaubt ein mehrtägiges Tracking von Onlineaktivitäten eines Internetnutzers. Im Fall der Fast Open Erweiterung des TCP-Protokolls sind die Daten- schutzprobleme besonders gravierend, weil der ausgenutzte Trackingmechanismus im Kernel der Betriebssysteme verankert ist und sich der Kontrolle durch Nutzeranwendungen weitgehend entzieht. Als Reaktion auf dieses Datenschutzproblem wurde u.a. im Browser Firefox die Unterstützung für diese TCP-Protokollerweiterung eingestellt. Zur konstruktiven Lösung der identifizierten Datenschutzprobleme wurden jeweils Verbesserungsmöglichkeiten vorgestellt, evaluiert und gegebenenfalls implementiert. Als Gegenmaßnahme zum erwähnten Problem von TCP Fast Open wurde das TCP Fast Open Privacy Protokoll eingeführt, welches unter an- derem einen TLS-verschlüsselten Datenkanal einsetzt, um Tracking auf Basis von beobachteten Datenverkehr zu verhindern. Zur Steigerung der Performanz von TCP, TLS und QUIC werden in dieser Dissertation zahlreiche Forschungsbeiträge vorgestellt. Beispielsweise konnte für den Aufbau von TLS-Verbindungen während des Aufrufs einer durchschnittlichen Website ein Einsparpotential von 44% der benötigten CPU-Berechnungen und bis zu 30,6% der benötigten Zeit aufgezeigt werden. Diese erhebliche Performanzsteigerung resultiert aus dem Umstand, dass oft TLS-Verbindungen zu anderen Hostnamen mit einem optimierten Verbindungsaufbau basierend auf TLS Session Resumptions durchgeführt werden können. Insgesamt stellt diese Dissertation mehrere Forschungsbeiträge vor, um dem Ziel von daten- schutzfreundlichen und performanten Datenübertragungen im Internet etwas näher zu kom- men. Abstract Most flows on the Internet are short transfers using the protocols Domain Name System (DNS), Transmission Control Protocol (TCP), Transport Layer Security (TLS), or QUIC. This thesis investigates opportunities to improve these protocols regarding their privacy protections, the consumed resources, and the delay caused by the connection establishment. The results of this thesis comprise in the scope of DNS the presentation of a design allowing web servers to push relevant DNS records to their clients. This novel approach can save the client traditional DNS lookups, which would add additional delay to the resolving of domain names into IP addresses. Concerning privacy protections, this design improves the privacy posture of the client with respect to the traditional DNS resolver because it reduces the number of DNS lookups that can be observed by the DNS resolver. Furthermore, this thesis studies privacy threats in the protocols TCP, TLS, and QUIC that each can be exploited to track a user’s online activities for several days. In the case of the Fast Open extension of the TCP protocol the identified privacy threats are especially serious because this tracking mechanism is implemented in the kernel of the operating systems and user applications have difficulties to restrict it. As a reaction to this detected tracking mechanism, the Mozilla Foundation deactivated this protocol extension in all their products including the popular Firefox browser. To mitigate the presented privacy problems, this thesis introduces, evaluates and, where appropriate, implements countermeasures. The issues of TCP Fast Open are addressed by the proposed TCP Fast Open Privacy protocol, which uses for this purpose a cross-layer approach combining TLS and TCP. Thus, a transport-encrypted data channel is used to prevent tracking based on traffic analysis. Moreover, in the scope of this thesis performance-optimizations for TCP, TLS, and QUIC are investigated. For example, savings of 44% of the required CPU computations and up to 30.6% of the required elapsed time are demonstrated for the TLS connection establishments during the retrieval of an average website. This improvement becomes feasible when efficient TLS session resumption handshakes are used across different hostnames. In summary, this thesis provides several contributions towards the goal of secure, privacy-friendly and well-performing transactions on the Internet. Contents 1 Introduction 1 1.1 Problem Statement . .1 1.2 Research Questions . .3 1.3 Research Methodology . .4 1.4 Contributions . .5 1.5 Structure of this Thesis . .9 1.6 List of Publications . 10 2 Enhanced Performance and Privacy via Resolver-Less DNS 13 2.1 Introduction . 14 2.2 DNS Overview and Problem Statement . 15 2.3 Resolver-less DNS . 17 2.4 Performance Evaluation . 22 2.5 Discussion . 26 2.6 Related Work . 28 2.7 Conclusions . 28 2.8 References . 29 3 Enhanced Performance and Privacy for TLS over TCP Fast Open 31 3.1 Introduction . 32 3.2 TCP Fast Open . 34 3.3 Tracking via TCP Fast Open . 38 3.4 TCP Fast Open Privacy . 45 3.5 Related Work . 55 3.6 Conclusion . 55 3.7 References . 56 4 Tracking Users across the Web via TLS Session Resumption 59 4.1 Introduction . 60 4.2 Background . 62 4.3 Privacy Problems with TLS Session Resumption . 64 4.4 Data Collection . 66 4.5 Evaluation . 68 4.6 Countermeasures . 77 4.7 Related Work . 78 4.8 Conclusion . 79 4.9 References . 80 5 Enhanced Performance for the encrypted Web through TLS Resumption across Hostnames 82 5.1 Introduction . 83 5.2 Problem Statement . 84 Contents 5.3 TLS Resumption across Hostnames . 86 5.4 Evaluation . 87 5.5 Discussion . 97 5.6 Related Work . 101 5.7 Conclusions . 101 5.8 References . 101 6 A QUIC Look at Web Tracking 103 6.1 Introduction . 104 6.2 Background on QUIC’s Handshake . 105 6.3 Tracking via QUIC . 107 6.4 Evaluation . 109 6.5 Discussion . 113 6.6 Related Work . 118 6.7 Conclusion . 119 6.8 References . 119 7 Surfing the Web Quicker Than QUIC via a Shared Address Validation 123 7.1 Introduction . 124 7.2 Problem Statement . 125 7.3 Shared Address Validation across Hostnames . 128 7.4 Evaluation . 129 7.5 Related Work . 133 7.6 Conclusions . 133 7.7 References . 134 8 QUICker Connection Establishment with Out-Of-Band Validation Tokens 136 8.1 Introduction . 137 8.2 Out-Of-Band Validation Token . 138 8.3 Evaluation and Discussion . 141 8.4 Related Work . 143 8.5 Conclusions . 144 8.6 References . 144 9 Accelerating QUIC’s Connection Establishment on High-Latency Access Net- works 145 9.1 Introduction . 146 9.2 Background and Problem Statement . 147 9.3 QuicSocks . 150 9.4 Evaluation . 153 9.5 Related Work . 158 9.6 Conclusion . 159 9.7 References . 159 10 Conclusion and Outlook 162 10.1 Conclusion . 162 10.2 Outlook . 163 Bibliography.