Organisation effektiver Timing-Angriffe mit HTTP / 2 und WPA3

Neue Hacking-Technik überwindet das Problem des "Netzwerk-Jitters", das den Erfolg von Seitenkanal-Angriffen beeinflussen kann.







Eine neue Technik, die von Forschern der Universität Leuven (Belgien) und der New York University in Abu Dhabi entwickelt wurde, hat gezeigt, dass Angreifer Funktionen von Netzwerkprotokollen zum Organisieren verwenden können Lecks vertraulicher Informationen.



Diese Technik namens Timeless Timing Attacks , die auf der diesjährigen Usenix-Konferenz demonstriert wurde, nutzt die Netzwerkprotokollbehandlung gleichzeitiger Anforderungen, um eines der Probleme von Remote-Timing-Seitenkanalangriffen zu lösen.



Probleme von Fernangriffen nach Zeit



Bei Timing-Angriffen messen Angreifer Unterschiede in der Ausführungszeit verschiedener Befehle und versuchen, den durch die Verschlüsselung bereitgestellten Schutz zu umgehen und Informationen über vertrauliche Informationen wie Verschlüsselungsschlüssel, private Korrespondenz und Surfverhalten der Benutzer zu erhalten.



Um Timing-Angriffe erfolgreich zu implementieren, muss ein Angreifer jedoch genau wissen, wie lange es dauert, bis die angegriffene Anwendung eine Anforderung verarbeitet.



Dies wird zu einem Problem, wenn entfernte Systeme wie Webserver angegriffen werden, da die Netzwerklatenz (Jitter) zu unterschiedlichen Antwortzeiten führt, was die Berechnung der Verarbeitungszeit erschwert.



Bei Remote-Timing-Angriffen senden Angreifer normalerweise jeden Befehl mehrmals und führen statistische Analysen der Antwortzeiten durch, um die Auswirkungen von Netzwerkjitter zu verringern. Diese Methode ist jedoch nur bedingt sinnvoll.



"Je kleiner der Zeitunterschied ist, desto mehr Anforderungen sind erforderlich, und ab einem bestimmten Zeitpunkt wird die Berechnung unmöglich", sagt Tom Van Götham, Datensicherheitsforscher und Hauptautor eines Artikels über die neue Art von Angriffen.



Zeitloser Zeitangriff



Die von Göthem und seinen Kollegen entwickelte Technik führt Remote-Timing-Angriffe so durch, dass sie die Auswirkungen von Netzwerkjitter negieren.



Das Prinzip eines zeitlosen Zeitangriffs ist einfach: Sie müssen sicherstellen, dass Anforderungen genau zur gleichen Zeit beim Server eingehen und nicht nacheinander übertragen werden.



Parallelität stellt sicher, dass sich alle Anforderungen unter denselben Netzwerkbedingungen befinden und dass ihre Verarbeitung nicht durch den Pfad zwischen dem Angreifer und dem Server beeinflusst wird. Die Reihenfolge, in der die Antworten empfangen werden, gibt dem Angreifer alle Informationen, die zum Vergleichen der Ausführungszeiten erforderlich sind.



„Der Hauptvorteil zeitloser Angriffe auf das Timing besteht darin, dass sie viel genauer sind und weniger Anforderungen erforderlich sind. Auf diese Weise kann der Angreifer Unterschiede in der Ausführungszeit von bis zu 100 ns erkennen “, sagt Van Götham.



Der minimale Zeitunterschied, den Forscher bei einem herkömmlichen Internet-Zeitangriff beobachteten, betrug 10 μs, dh 100-mal mehr als bei einem gleichzeitigen Anforderungsangriff.



Wie Gleichzeitigkeit gewährleistet ist



„Wir bieten Parallelität, indem wir beide Anforderungen in dasselbe Netzwerkpaket stellen“, erklärt Van Götham. "In der Praxis hängt die Implementierung hauptsächlich vom Netzwerkprotokoll ab."



Forscher nutzen die Funktionen verschiedener Netzwerkprotokolle, um gleichzeitige Anforderungen zu senden.



Beispielsweise unterstützt HTTP / 2, das sich schnell zum De-facto-Standard für Webserver entwickelt, das "Anforderungsmultiplexing", eine Funktion, mit der ein Client mehrere Anforderungen parallel über eine einzelne TCP-Verbindung senden kann.



"Im Fall von HTTP / 2 müssen wir nur sicherstellen, dass beide Anforderungen in dasselbe Paket gestellt werden (z. B. indem wir beide gleichzeitig in den Socket schreiben)." Diese Technik hat jedoch ihre eigenen Feinheiten. In den meisten Content Delivery-Netzwerken wie Cloudflare, das Inhalte für den größten Teil des Webs bereitstellt, erfolgt die Verbindung zwischen den Edgeservern und der Site beispielsweise über HTTP / 1.1, das keine Multiplexing-Anforderungen unterstützt.



Dies verringert zwar die Effektivität eines zeitlosen Angriffs, ist jedoch immer noch genauer als klassische Remote-Timing-Angriffe, da sie Jitter zwischen dem Angreifer und dem CDN-Edgeserver beseitigen.



Bei Protokollen, die das Anforderungsmultiplexen nicht unterstützen, können Angreifer ein Zwischennetzwerkprotokoll verwenden, das die Anforderungen kapselt.



Forscher haben gezeigt, wie ein zeitloser Zeitangriff auf das Tor-Netzwerk funktioniert. In diesem Fall kapselt der Angreifer mehrere Anforderungen in eine Tor-Zelle, ein verschlüsseltes Paket, das zwischen Tor-Knoten in einzelnen TCP-Paketen übertragen wird.



„Da die Tor-Kette für Zwiebelservices bis zum Server reicht, können wir sicherstellen, dass Anfragen gleichzeitig eingehen“, sagt Van Götham.



Zeitlose Angriffe in der Praxis



In ihrem Artikel untersuchten die Forscher zeitlose Angriffe in drei verschiedenen Situationen.



Bei direkten Timing-Angriffen stellt der Angreifer eine direkte Verbindung zum Server her und versucht, vertrauliche Informationen zu verlieren, die der Anwendung zugeordnet sind.



"Da die meisten Webanwendungen die Tatsache nicht berücksichtigen, dass Timing-Angriffe sehr praktisch und genau sein können, glauben wir, dass viele Websites für solche Angriffe anfällig sind", sagt Van Gothen.



Bei standortübergreifenden Timing- Angriffen stellt der Angreifer vom Browser des Opfers aus Anfragen an andere Websites und trifft Annahmen über den Inhalt vertraulicher Informationen, indem er die Reihenfolge der Antworten beobachtet.



Angreifer nutzten dieses Schema, um eine Sicherheitsanfälligkeit im HackerOne-Bug-Bounty-Programm auszunutzen und Informationen wie Schlüsselwörter zu extrahieren, die in vertraulichen Berichten über ungelöste Sicherheitsanfälligkeiten verwendet wurden.



„Ich habe nach Fällen gesucht, in denen der Zeitangriff zuvor aufgezeichnet wurde, aber nicht als effektiv angesehen wurde. Der HackerOne-Fehler wurde bereits mindestens dreimal gemeldet (Fehler-IDs: 350432 , 348168 und 4701 ), wurde jedoch nicht behoben, da angenommen wurde, dass der Angriff nicht verwendet werden konnte. Dann habe ich ein einfaches internes Forschungsprojekt mit zeitlosen Zeitangriffen erstellt.



Zu der Zeit war es noch sehr unoptimiert, da wir weiterhin die Details des Angriffs herausfanden, aber es stellte sich dennoch als ziemlich genau heraus (bei meiner WiFi-Heimverbindung konnte ich sehr genaue Ergebnisse erzielen).



Die Forscher versuchten auch zeitlose Angriffe auf das WPA3-WLAN-Protokoll .



Einer der Mitautoren des Artikels, Mati Vanhof, hat zuvor ein potenzielles Zeitleck im WPA3-Handshake-Protokoll entdeckt . Die Zeit war jedoch entweder zu kurz, um auf High-End-Geräten verwendet zu werden, oder sie konnte nicht gegen Server verwendet werden.



„Mit einer neuen Art von zeitlosen Timing-Angriffen haben wir gezeigt, dass es tatsächlich möglich ist, Authentifizierungs-Handshake (EAP-pwd) für Server zu verwenden, selbst wenn auf ihnen leistungsstarke Hardware ausgeführt wird“, erklärt Van Goethem.



Perfekter Moment



In ihrem Artikel gaben die Forscher Empfehlungen zum Schutz von Servern vor zeitlosen Angriffen ab, z. B. die Beschränkung der Ausführung auf konstante Zeit und das Hinzufügen einer zufälligen Latenz. Weitere Forschung ist erforderlich, um praktische Schutzmaßnahmen gegen direkte Timing-Angriffe zu implementieren, die nur geringe Auswirkungen auf die Netzwerkleistung haben würden.



„Wir glauben, dass sich dieser Forschungsbereich in einem sehr frühen Entwicklungsstadium befindet und viel eingehender untersucht werden muss“, sagt Van Götham.



Zukünftige Forschungen könnten andere Techniken untersuchen, mit denen Angreifer im Laufe der Zeit gleichzeitige Angriffe ausführen könnten, andere Protokolle und Netzwerkebenen, die angegriffen werden könnten, und die Verwundbarkeit beliebter Websites bewerten, die es ermöglichen, solche Forschungen unter Programmbedingungen durchzuführen. Suche nach Fehlern.



Der Name „zeitlos“ wurde gewählt, „weil wir bei diesen Angriffen keine (absoluten) Zeitinformationen verwendet haben“, erklärt Van Goethem.



"Darüber hinaus können sie als 'zeitlos' angesehen werden, da es (Fern-) Timing-Angriffe schon lange gibt und sich die Situation nach unseren Untersuchungen nur noch verschlechtern wird."





Der vollständige Bericht von Usenix ist hier .






Werbung



Leistungsstarkes VDS mit DDoS-Schutz und modernster Hardware. All dies dreht sich um unsere epischen Server . Die maximale Konfiguration beträgt 128 CPU-Kerne, 512 GB RAM, 4000 GB NVMe.






All Articles