Original-URL des Artikels: https://www.golem.de/news/tls-immer-wieder-padding-oracles-1902-139679.html    Veröffentlicht: 27.02.2019 11:45    Kurz-URL: https://glm.io/139679

TLS

Immer wieder Padding Oracles

In manchen OpenSSL-Konfigurationen und in Citrix-Loadbalancern wurde eine Padding-Oracle-Lücke gefunden, mit der man TLS-Datenverkehr entschlüsseln kann. Ein Forscherteam hat weitere Lücken entdeckt, weiß aber bei vielen nicht, welche Produkte dafür verantwortlich sind.

Neu ist diese Lücke wirklich nicht: Die ursprüngliche Idee für Angriffe mittels sogenannter Padding Oracles geht auf den Kryptographen Sergey Vaudenay zurück, der diese 2002 veröffentlicht hat. Doch auch 17 Jahre später findet man noch verwundbare Implementierungen, wie unabhängig voneinander ein Team der Universität Bochum und Craig Young von der Firma Tripwire aufzeigten.

In früheren Versionen des Internet-Verschlüsselungsstandards TLS war es üblich, Daten mit Hilfe des CBC-Verschlüsselungsmodus zu schützen. Bei CBC handelt es sich um eine sogenannte Blockverschlüsselung, was bedeutet, dass die Eingabedaten in Blöcken einer bestimmten Größe - üblicherweise 8 oder 16 Byte - verschlüsselt werden. Um die Daten auf die entsprechende Größe zu bringen, werden sie bei TLS zunächst mit einem Padding versehen, außerdem wird vor dem Padding ein Authentifizierungstag hinzugefügt, der die Daten vor Veränderung schützen soll.

Unterschiedliches Fehlerverhalten ist angreifbar

Diese beiden Schritte sorgen nun für das Problem, denn bei manipulierten Daten treten unterschiedliche Fehlertypen auf. Das Padding selbst kann fehlerhaft sein oder der Authentifizierungstag. Was Vaudenay herausfand: Wenn ein Angreifer diese beiden Fehler unterscheiden kann, kann er - genügend manipulierte Datenpakete vorausgesetzt - Daten entschlüsseln.

Varianten solcher Padding Oracles wurden immer wieder bei TLS aufgezeigt. 2013 wurde der Lucky-Thirteen-Angriff vorgestellt, bei dem winzige Zeitunterschiede bei den Antworten ausgenutzt wurden. Der POODLE-Angriff nutzte eine im Protokoll vorhandene Schwachstelle der Uraltversion SSL 3. Auch anderswo treten Padding-Oracle-Schwachstellen auf, so war etwa das bundesweite Rechtsanwaltsregister durch eine entsprechende Lücke angreifbar.

Ein Team der Universität Bochum hat jetzt systematisch Webseiten im Internet nach entsprechenden Schwachstellen gescannt. Über 90 verschiedene Verhaltensweisen, die zu Verwundbarkeiten führen, fanden sie dabei. Aber in vielen Fällen wissen die Forscher nicht, welche Software oder Hardware für die Schwachstelle verantwortlich ist. Bisher sind zwei Schwachstellen öffentlich bekannt: eine in OpenSSL und eine in Citrix-Loadbalancern. In beiden Fällen sind Updates verfügbar.

Die OpenSSL-Schwachstelle tritt nur unter sehr speziellen Bedingungen auf. Das Bochumer Team fand zahlreiche Server von Amazon, die davon betroffen waren und es gelang in Zusammenarbeit mit Colm MacCárthaigh von Amazon, die Ursache herauszufinden.

OpenSSL-Schwachstelle unter sehr ungewöhnlichen Bedingungen

Die Schwachstelle betrifft OpenSSL nur dann, wenn einige Dinge zusammenkommen. So sind nur Verschlüsselungsalgorithmen betroffen, die nicht die Hardwarebeschleunigung für AES auf modernen Prozessoren nutzen. Außerdem betrifft die Schwachstelle nur Applikationen, welche eine bestimmte OpenSSL-Funktion - SSL_shutdown() - zweimal aufrufen. Das ist genaugenommen eine fehlerhafte Verwendung der API, aber es sollte im Normalfall harmlos sein. Die aktuelle Version von OpenSSL - 1.1.1 - ist nicht betroffen, nur der ältere Versionszweig 1.0.2.

Das Bochumer Team schreibt, dass es noch mit weiteren Herstellern in Kontakt ist. Es ist also zu erwarten, dass in Kürze weitere Sicherheitsupdates veröffentlicht werden. Allerdings gelang es in vielen Fällen nicht, die verantwortlichen Produkte zu identifizieren. Es ist zwar davon auszugehen, dass es sich bei den über 90 verschiedenen Verwundbarkeiten teilweise um uralte Produkte handelt, die nie aktualisiert wurden, aber vermutlich gibt es weitere nicht identifizierte Schwachstellen.

Die Bochumer Forscher bieten Herstellern von TLS-Produkten an, ihre Produkte kostenlos auf diese Schwachstellen zu untersuchen. In Kürze wollen sie auch ein Testtool veröffentlichen.

Die Schwachstelle in Citrix-Loadbalancern wurde unabhängig davon ebenfalls von Craig Young von der Firma Tripwire entdeckt. Dabei handelt es sich um eine Neuauflage der POODLE-Schwachstelle. Young taufte diese daher Zombiepoodle, da er eigentlich dachte, dass dieses Problem inzwischen überall behoben sei. Eine weitere Schwachstelle nennt Young Goldendoodle, er nennt aber bisher keinen Hersteller. Auf der bevorstehenden Black-Hat-Konferenz in Singapur wird Young seine Resultate im Detail präsentieren.

Neu entdeckte Uralt-Schwachstellen sind in TLS keine Seltenheit

Wieder einmal zeigt sich, dass auch uralte TLS-Schwachstellen weiterhin ein Problem darstellen können, wenn niemand systematisch nach ihnen sucht. Zwar gab es immer wieder Forschungsarbeiten, die neue Varianten von Padding Oracles aufzeigten, aber dabei ging es meist um einzelne Produkte. Die gängigen Tests für TLS-Implementierungen hatten bisher keine oder unzureichende Tests für Padding Oracles.

Grundsätzlich gilt, dass sich der CBC-Modus in TLS nur sehr schwer korrekt implementieren lässt. In der aktuellen TLS-Version 1.3 ist er daher auch entfernt worden. Moderne Server und Browser nutzen in der Regel die authentifizierten Verschlüsselungsmodi AES-GCM oder Chacha20-Poly1305, bei denen solche Probleme nicht auftauchen.  (hab)


Verwandte Artikel:
BeA: Rechtsanwaltsregister wegen Sicherheitslücke abgeschaltet   
(13.04.2018, https://glm.io/133825 )
Dark Matter: TLS-Zertifikate von der Spionagefirma aus den Emiraten   
(25.02.2019, https://glm.io/139614 )
Linux: Container-Distro Alpine wechselt von Libre- zu OpenSSL   
(30.01.2019, https://glm.io/139069 )
Futuremark: Servermark testet Media-Transcode- und VM-Server   
(30.10.2017, https://glm.io/130879 )
Content Management System: Unterstützung für Drupal 7 endet 2021   
(26.02.2019, https://glm.io/139659 )

© 1997–2019 Golem.de, https://www.golem.de/