Abo
  • Services:
Anzeige
HEIST - ein neuer Angriff auf TLS kombiniert einen Timing-Angriff und einen Angriff auf die HTTP-Kompression.
HEIST - ein neuer Angriff auf TLS kombiniert einen Timing-Angriff und einen Angriff auf die HTTP-Kompression. (Bild: Black-Hat-Slides)

HEIST: Timing- und Kompressionsangriff auf TLS

HEIST - ein neuer Angriff auf TLS kombiniert einen Timing-Angriff und einen Angriff auf die HTTP-Kompression.
HEIST - ein neuer Angriff auf TLS kombiniert einen Timing-Angriff und einen Angriff auf die HTTP-Kompression. (Bild: Black-Hat-Slides)

Durch die geschickte Kombination eines Timing-Angriffs in Javascript und der bereits bekannten Breach-Attacke ist es möglich, Geheimnisse in TLS-Verbindungen zu entschlüsseln. Anders als früher ist dafür kein Man-in-the-Middle-Angriff nötig.

Zwei Forscher der Universität Leuven haben auf der Sicherheitskonferenz Black Hat in Las Vegas einen neuen Angriff gegen HTTPS-verschlüsselte Webseiten namens HEIST vorgestellt (HTTP Encrypted Information can be Stolen through TCP-windows). Dieser kombiniert einen Timing-Angriff mittels Javascript mit bereits bekannten Schwächen von TLS in Kombination mit komprimierten Daten.

Anzeige

Crime und Breach

2012 entdeckten die Sicherheitsforscher Juliano Rizzo und Thai Duong den sogenannten Crime-Angriff. Sie nutzten dabei die Tatsache aus, dass die Kompression von TLS Informationen über die verschlüsselten Daten preisgibt. Der Crime-Angriff war jedoch in der Praxis nicht relevant, da die TLS-eigene Kompression nur selten genutzt wurde. Ein Jahr später wurde jedoch auf der Black Hat der Breach-Angriff präsentiert, der die von HTTP genutzte Gzip-Kompression ausnutzte. Nahezu alle Webseiten nutzen Gzip, um die übertragenen HTML-Daten zu komprimieren.

Beide Angriffe benötigen eine Webseite, die einen vom Angreifer kontrollierten String enthält. Das kann beispielsweise ein GET- oder POST-Parameter sein, der in irgendeiner Weise in der ausgelieferten HTML-Seite reflektiert wird und in deren HTML-Code enthalten ist. Befindet sich in derselben Webseite ein für den Angreifer interessantes Geheimnis - beispielsweise ein CSRF-Token für ein Formular -, kann der Angreifer durch Ausprobieren dieses Geheimnis schrittweise herausfinden. Immer wenn der Angreifer ein weiteres Zeichen des gesuchten Geheimnisses errät, werden die komprimierten Daten kleiner. Dadurch erhält der Angreifer Feedback und kann letztendlich den gesamten geheimen String entschlüsseln. Dieser bereits bekannte Angriff funktioniert jedoch nur, wenn der Angreifer die übertragenen Daten belauschen kann.

Timing-Angriff auf TCP-Verbindung

Mathy Vanhoef und Tom Van Goethem von der KU Leuven fanden jedoch heraus, dass sich die Information über die Länge der komprimierten und verschlüsselten Daten auch mittels Javascript extrahieren lässt. Dabei nutzten die Forscher die Funktionsweise von TCP aus. Üblicherweise werden bei TCP zunächst vom Server zehn Pakete übertragen, anschließend wartet der Server auf Antworten vom Client und überträgt dann eine höhere Anzahl von Paketen. Mittels zwei Javascript-Funktionen kann ein Angreifer herausfinden, wie lange eine TCP-Antwort eines durch das Skript abgesendeten Requests benötigt.

Eine Antwort des Servers, die in die ersten zehn TCP-Pakete passt, ist dabei schneller als eine, die mehr Pakete benötigt, da dafür ein weiterer Roundtrip notwendig ist. Durch Ausprobieren mit dem reflektierten Parameter kann der Angreifer herausfinden, wie groß er diesen Parameter setzen muss, damit er entweder genau in die ersten zehn TCP-Pakete passt oder genau ein Byte zu groß ist.

Mit dieser Information ist der Breach-Angriff wieder möglich. Der Angreifer muss lediglich die Länge der Antwort entsprechend anpassen und kann dann anhand der Zeit, die eine Antwort benötigt, darauf schließen, ob das nächste geratene Zeichen korrekt ist.

Mit HTTP/2 funktioniert dieser Angriff noch in einer zusätzlichen Variante. Bei HTTP/2 werden alle HTTP-Requests, auch wenn sie parallel abgeschickt werden, über eine einzige TCP-Verbindung gesendet. Das führt dazu, dass der Angriff auch dann funktioniert, wenn der reflektierte String und das gesuchte Geheimnis sich auf unterschiedlichen Seiten befinden.

Einem Opfer eine Seite mit vom Angreifer kontrolliertem Javascript unterzuschieben, ist oft nicht schwer. Die Entdecker erwähnen als Beispiel, dass dieses Javascript durch eine Werbeanzeige kommen könnte, da Ad-Netzwerke oft nicht besonders sicher seien.

Kein Man in the Middle nötig

Der entscheidende Unterschied zwischen dem neuen Angriff und dem bisher schon bekannten Breach-Angriff ist, dass der Angreifer hier den Netzwerkverkehr des Opfers nicht mitlesen muss. Somit ist kein Man-in-the-Middle-Angriff nötig.

Abhilfe gegen den Breach-Angriff ist nicht einfach. Zwar könnte man die Kompression abschalten, aber das ist kaum erwünscht, da sich HTML-Daten sehr gut komprimieren lassen. Auf die Kompression zu verzichten, würde erhebliche Performanceeinbußen bedeuten. Denkbar wäre es, geheime Daten von der Kompression auszunehmen. Das wird in der HTTP2-Header-Kompression HPACK versucht. Für Daten, die sich innerhalb des HTML-Teils befinden, beispielsweise CSRF-Tokens, ist ein derartiger Mechanismus aber nur schwer umsetzbar.

Verhindern lässt sich der Angriff, wenn man Third-Party-Cookies im Browser deaktiviert. Einige Webseiten könnten dann jedoch nicht mehr funktionieren.

Same-Site-Cookies könnten Abhilfe schaffen

Eine neuere Möglichkeit, die gegen solche und ähnliche Angriffe Schutz bietet, sind sogenannte Same-Site-Cookies. Damit kann eine Webapplikation verhindern, dass Seitenzugriffe, die von einer anderen Webseite kommen, in einem Account eingeloggt sind. Allerdings existiert für Same-Site-Cookies bislang nur ein Entwurf. In Chrome werden Same-Site-Cookies bereits unterstützt.

Nachtrag vom 8. August 2016, 11:13 Uhr

Tal Be'ery weist auf Twitter darauf hin, dass der wesentliche Teil des HEIST-Angriffs - die Ausnutzung mittels Javascript und Timing - keine Neuheit ist. Be'ery hatte bereits 2013 auf der Black Hat einen ähnlichen Angriff mit dem Namen TIME vorgestellt. Offenbar war dieser frühere Angriff den Autoren des HEIST-Angriffs und vielen anderen - darunter auch dem Autor dieses Artikels - nicht bekannt.


eye home zur Startseite
mustermensch 09. Aug 2016

Nein habe ich nicht. Das mit Http2 ist eine weitere Variante des Angriffs (du benötigst...

hannob (golem.de) 04. Aug 2016

Die Same Origin Policy schützt davor, dass ein Angreifer Daten von einem fremden Host...

LASERwalker 04. Aug 2016

Dann müsste man einfach mehr Daten sammeln um den "Zufall" herauszurechnen. Das ist immer...

kayozz 04. Aug 2016

Ist auch noch nicht Freitag



Anzeige

Stellenmarkt
  1. Zentrum für Kunst und Medientechnologie Karlsruhe, Karlsruhe
  2. Zühlke Engineering GmbH, Eschborn bei Frankfurt am Main
  3. ROTEXMEDICA GMBH, Trittau
  4. Mobile Software AG, München


Anzeige
Spiele-Angebote
  1. (-77%) 6,99€
  2. 27,99€
  3. 69,99€ mit Vorbesteller-Preisgarantie

Folgen Sie uns
       


  1. Rockstar Games

    "Normalerweise" keine Klagen gegen GTA-Modder

  2. Stromnetz

    Tennet warnt vor Trassen-Maut für bayerische Bauern

  3. Call of Duty

    Modern Warfare Remastered erscheint alleine lauffähig

  4. Gmail

    Google scannt Mails künftig nicht mehr für Werbung

  5. Die Woche im Video

    Ein Chef geht, die Quanten kommen und Nummer Fünf lebt

  6. Hasskommentare

    Koalition einigt sich auf Änderungen am Facebook-Gesetz

  7. Netzneutralität

    CCC lehnt StreamOn der Telekom ab

  8. Star Trek

    Sprachsteuerung IBM Watson in Bridge Crew verfügbar

  9. SteamVR

    Valve zeigt Knuckles-Controller

  10. Netflix und Amazon

    Legale Streaming-Nutzung in Deutschland nimmt zu



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Sony Xperia XZ Premium im Test: Taschenspiegel mit übertrieben gutem Display
Sony Xperia XZ Premium im Test
Taschenspiegel mit übertrieben gutem Display
  1. Keine Entschädigung Gericht sieht mobiles Internet nicht als lebenswichtig an
  2. LTE Deutsche Telekom führt HD Voice Plus ein
  3. Datenrate Vodafone bietet im LTE-Netz 500 MBit/s

1Sheeld für Arduino angetestet: Sensor-Platine hat keine Sensoren und liefert doch Daten
1Sheeld für Arduino angetestet
Sensor-Platine hat keine Sensoren und liefert doch Daten
  1. Calliope Mini im Test Neuland lernt programmieren
  2. Arduino Cinque RISC-V-Prozessor und ESP32 auf einem Board vereint
  3. MKRFOX1200 Neues Arduino-Board erscheint mit kostenlosem Datentarif

Mesh- und Bridge-Systeme in der Praxis: Mehr Access Points, mehr Spaß
Mesh- und Bridge-Systeme in der Praxis
Mehr Access Points, mehr Spaß
  1. Eero 2.0 Neues Mesh-WLAN-System kann sich auch per Kabel vernetzen
  2. BVG Fast alle Berliner U-Bahnhöfe haben offenes WLAN
  3. Broadcom-Sicherheitslücke Vom WLAN-Chip das Smartphone übernehmen

  1. Re: In anderen Worten

    unbuntu | 21:00

  2. Re: Nutzt irgendjemand hier wirklich noch google-mail

    Suppenpulver | 20:59

  3. Re: gegen Kostenerstattung abgeschaltet... Warum?

    wire-less | 20:47

  4. Ist die Original US/AT Version nicht sogar auf...

    Kunze | 20:45

  5. Re: Erik Range hat meiner Ansicht nach Recht

    Umaru | 20:39


  1. 13:30

  2. 12:14

  3. 11:43

  4. 10:51

  5. 09:01

  6. 17:40

  7. 16:22

  8. 15:30


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel