Unintentional and Hidden Information Leaks in Networked Software Applications

Language
en
Document Type
Doctoral Thesis
Issue Date
2012-05-16
Issue Year
2012
Authors
Schinzel, Sebastian
Editor
Abstract

Side channels are vulnerabilities that can be attacked by observing the behaviour of applications and by inferring sensitive information just from this behaviour. Because side channel vulnerabilities appear in such a large spectrum of contexts, there does not seem to be a generic way to prevent all side channel attacks once and for all. A practical approach is to research for new side channels and to specifically tailor mitigations for new side channel attacks. In this thesis, we extend the field of side channel attacks by introducing new ways to attack and to mitigate side channels in web applications. We start by proposing a new classification scheme for information leaks based on the information decoding effort an attacker has to spend. The four differ- ent classes—sorted by the order of ascending effort for the attacker—are: direct deterministic information leaks, obfuscated deterministic information leaks, pos- sibilistic information leaks, and probabilistic information leaks. Storage side channels are a new type of side channels which leak information through redundancies in protocols such as HTTP or languages such as HTML. We formalise storage side channels and describe a new method that allows de- tecting obfuscated deterministic information leaks in storage side channels even in dynamic and noisy environments. We test our method by applying it to real- world web applications and find that several widely used web applications are prone to obfuscated deterministic information leaks. Furthermore, we show a new method to exploit those timing side channels that have the property that the timing differences can be influenced by the at- tacker. We model these special timing side channels as a possibilistic timing side channel. The method allows very efficient timing side channel attacks even over noisy networks such as the Internet. We show that our method can break the confidentiality of XML Encryption messages in realistic environments. Finally, we model common existing timing side channels in web applications as probabilistic information leaks and present a new method to mitigate them in web applications. The method works by padding the response time using a deterministic and unpredictable delay (DUD). We show that DUD offers security guarantees that can be freely traded with performance reduction. By applying this method to vulnerable web applications, we show that the method offers an effective and performant way to mitigate timing side channels.

Abstract

Seitenkanalangriffe funktionieren, indem man das Verhalten von Anwendungen beobachtet und auf geheime Informationen anhand von diesem Verhalten schließt. Da Seitenkana ̈le in vielen Kontexten auftauchen, scheint es keine generischen Gegenmaßnahmen zu geben. Ein pragmatisches Vorgehen ist jedoch, nach neuen Seitenkan ̈alen zu suchen und spezielle Gegenmaßnahmen fu ̈r neu entdeckte Seit- enkan ̈ale zu entwerfen. In dieser Dissertation untersuchen wir neue Seitenkana ̈le in Web-Anwendungen und Gegenmaßnahmen fu ̈r Seitenkanalangriffe. Zuerst ordnen wir den Aufwand eines Angreifers, um Informationslecks eines Seitenkanals zu dekodieren, in vier Klassen ein: direkte deterministische Informa- tionslecks, verschleierte deterministische Informationslecks, possibilistische Infor- mationslecks und probabilistische Informationslecks. Storage-Seitenkan ̈ale bilden eine neue Art von Seitenkana ̈len, die durch Redun- danzen in Protokollen wie z.B. HTTP oder in Sprachen wie z.B. HTML entste- hen. Wir formalisieren Storage-Seitenkana ̈le und stellen eine neue Methode vor, die es erlaubt, verschleierte deterministische Informationslecks durch Storage- Seitenkan ̈ale selbst in dynamischen und verrauschten Umgebungen zu entdecken. Wir validieren unsere Methode, indem wir sie an weit verbreiteten Anwendungen testen. Die Resultate zeigen, dass mehrere Anwendungen verschleierte determin- istische Informationslecks enthalten. Danach stellen wir einen neue und effiziente Angriffsmethode vor, um solche Timing-Seitenkan ̈ale auszunutzen, bei denen der Angreifer die Zeitunterschiede beeinflussen kann. Wir modellieren den Angriff als possibilistisches Informations- leck und zeigen, dass dadurch sehr effiziente Timing-Angriffe m ̈oglich werden, die sogar u ̈ber verrauschte Netzwerke, wie z.B. das Internet, funktionieren. Als prak- tische Anwendung zeigen wir, dass wir mit unserer Methode die Vertraulichkeit von XML Encryption-Nachrichten innerhalb von drei Stunden u ̈ber den Local- host und in weniger als einer Woche u ̈ber das Internet brechen ko ̈nnen. Abschließend modellieren wir existierende Timing-Seitenkan ̈ale in Web-Anwen- dungen als probabilistische Informationslecks und stellen eine neue Methode vor, mit der man solche Angriffe zuverla ̈ssig verhindern kann. Die Methode verwendet deterministische und nicht-vorhersagbare Verz ̈ogerungen (DUD), die Sicherheits- garantien bereits mit geringer Performanzreduktion bietet. Wir zeigen, dass die Methode Timing-Seitenkana ̈le effektiv und performanzeffizient verhindert.

DOI
Document's Licence
Faculties & Collections
Zugehörige ORCIDs