RSA im Standard PKCS #1 v1.5 angreifbar

Dem Angriff von Bleichenbacher liegen zwei Eigenschaften zugrunde: zum einen das sogenannte Padding nach dem Standard PKCS #1 v1.5, mit dem Daten vor einer RSA-Verschlüsselung bearbeitet werden, und zum anderen eine Eigenschaft der RSA-Verschlüsselung, die als Malleability bezeichnet wird.

Stellenmarkt
  1. Expert Configuration Management (m/w/d)
    Vodafone GmbH, Eschborn
  2. Solution Architect (m/w/d) medizinische Dokumentation
    KBV Kassenärztliche Bundesvereinigung, Berlin
Detailsuche

Den Daten, die mit RSA verschlüsselt werden, werden bei PKCS #1 v1.5 immer zwei Bytes vorangestellt (00 02). Wenn ein Server diese beiden Bytes prüft und feststellt, dass sie nicht korrekt sind, erscheint es naheliegend, die Verbindung sofort mit einer Fehlermeldung abzubrechen. Doch genau das führt zum Problem: Tut ein Server das, dann verrät er dem Angreifer etwas darüber, in welchem Intervall die entschlüsselten Daten liegen.

Die sogenannte Malleability von RSA ermöglicht es einem Angreifer, RSA-verschlüsselte Daten gezielt so zu manipulieren, dass das Ergebnis der Entschlüsselung ein Vielfaches des ursprünglichen Ergebnisses ist. Hat ein Angreifer etwa einen verschlüsselten Datenblock des Inhaltes M, dann kann er auch die Verschlüsselung von zweimal M oder dreimal M etc. erzeugen.

Beide Eigenschaften zusammen ermöglichten es Bleichenbacher, einen Algorithmus zu entwickeln, mit dem durch viele Anfragen an den Server RSA-Daten entschlüsselt werden können.

Gegenmaßnahmen in TLS 1.2 extrem komplex und fehleranfällig

Golem Akademie
  1. Scrum Product Owner: Vorbereitung auf den PSPO I (Scrum.org): virtueller Zwei-Tage-Workshop
    3.–4. März 2022, virtuell
  2. Einführung in Unity: virtueller Ein-Tages-Workshop
    17. Februar 2022, Virtuell
Weitere IT-Trainings

Der aktuelle TLS-Standard 1.2 verwendet weiterhin PKCS #1 v1.5. Um Bleichenbacher-Angriffe zu verhindern, schlägt TLS folgendes vor: Wenn ein Server einen nicht korrekt formatierten Datenblock entschlüsselt, soll der Server statt der entschlüsselten Daten Zufallsdaten verwenden und damit den Handshake weiter durchführen. Um dabei Timing-Angriffe zu verhindern, müssen diese Zufallsdaten allerdings schon vor der Entschlüsselung erzeugt werden.

Da der Server die Kommunikation nun mit unsinnigen Daten durchführt, schlägt die TLS-Verbindung bei der Prüfung der sogenannten Finished-Nachricht fehl. Wenn der Server diese Gegenmaßnahmen korrekt durchführt, kann ein Angreifer nicht unterscheiden, welche Art von Fehler auftrat, und lernt somit nichts über die entschlüsselten Daten.

Das gesamte Verfahren ist extrem komplex. Es füllt im TLS-Standard mehr als zwei Seiten. Dort werden mehrere verschiedene mögliche Algorithmen vorgeschlagen, die in einen Server implementiert werden können. Es ist daher eigentlich wenig überraschend, dass diese Gegenmaßnahmen in Servern häufig nicht korrekt implementiert werden - vor allem, da dies im Normalbetrieb überhaupt nicht auffällt und derartige Angriffe kaum getestet werden.

Forward Secrecy hilft - ein bisschen

Wie schwerwiegend die Sicherheitslücke ist, hängt von den genauen Umständen ab. In TLS kommt RSA sowohl für Signaturen als auch zur Verschlüsselung zum Einsatz - es hängt von der gewählten Ciphersuite ab.

Bei Servern, die nur die RSA-Verschlüsselung unterstützen, ist der Angriff absolut fatal. Ein Angreifer kann Daten mitlesen und anschließend in Ruhe entschlüsseln. Bei Servern, die neben der RSA-Verschlüsselung auch Verschlüsselungsmethoden mit RSA-Signaturen und Forward Secrecy unterstützen, führt das üblicherweise dazu, dass diese genutzt werden. Angreifen lässt sich das nur, wenn es gelingt, den Angriff während des Handshakes durchzuführen. Der dauert maximal einige Sekunden. Zumindest bei Zielen wie Facebook, die viele schnelle Server betreiben, dürfte das aber durchaus realistisch sein.

Nur kleine Änderungen im Vergleich zum Angriff von 1998

Der ROBOT-Angriff unterscheidet sich in zwei Punkten von Bleichenbachers originalem Angriff von 1998: Zum einen können neben Fehlermeldungen auch andere Signale genutzt werden, um einen verwundbaren Server zu erkennen. Das können TCP-Verbindungsabbrüche, Timeouts oder auch Protokollfehler sein - einige Server schickten etwa doppelte TLS-Fehler.

Zum anderen sind einige Server nur dann verwundbar, wenn man die gewöhnliche Abfolge der Nachrichten im TLS-Handshake ändert. Üblicherweise schickt ein Client die Protokollnachrichten Client Key Exchange, CCS und Finished direkt hintereinander. Es stellte sich aber heraus, dass einige Server eine Verwundbarkeit zeigten, wenn man nur die Client-Key-Exchange-Nachricht schickt.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 ROBOT-Angriff: 19 Jahre alter Angriff auf TLS funktioniert immer nochNur Abschalten von RSA-Verschlüsselung hilft wirklich 
  1.  
  2. 1
  3. 2
  4. 3
  5.  


pEinz 14. Dez 2017

Linux == Kernel Komm da erstmal ran

Anonymer Nutzer 14. Dez 2017

https://blog.cloudflare.com/do-the-chacha-better-mobile-performance-with-cryptography...

VigarLunaris 14. Dez 2017

An den Erklärungen merkt man schon das Problem mit solcherlei Fehlern. Es wird...

wurstfett 13. Dez 2017

https://www.youtube.com/watch?v=R-nQDA_RnOk "Angst kenn eich ney" Geenau der Angriff ist...



Aktuell auf der Startseite von Golem.de
Sam Zeloof
Student baut Chip mit 1.200 Transistoren

In seiner Garage hat Sam Zeloof den Z2 fertiggestellt und merkt scherzhaft an, Moore's Law schneller umgesetzt zu haben als Intel selbst.

Sam Zeloof: Student baut Chip mit 1.200 Transistoren
Artikel
  1. Xbox Cloud Gaming: Wenn ich groß bin, möchte ich gerne Netflix werden
    Xbox Cloud Gaming
    Wenn ich groß bin, möchte ich gerne Netflix werden

    Call of Duty, Fallout oder Halo: Neue Spiele bequem am Business-Laptop via Stream zocken, klingt zu gut, um wahr zu sein. Ist auch nicht wahr.
    Ein Erfahrungsbericht von Benjamin Sterbenz

  2. IBM: Watson Health anteilig für 1 Mrd. US-Dollar verkauft
    IBM
    Watson Health anteilig für 1 Mrd. US-Dollar verkauft

    Mit Francisco Partners greift eine große Investmentgruppe zu, das Geschäft mit Watson Health soll laut IBM darunter aber nicht leiden.

  3. Lego Star Wars UCS AT-AT aufgebaut: Das ist kein Mond, das ist ein Lego-Modell
    Lego Star Wars UCS AT-AT aufgebaut
    "Das ist kein Mond, das ist ein Lego-Modell"

    Ganz wie der Imperator es wünscht: Der Lego UCS AT-AT ist riesig und imposant - und eines der besten Star-Wars-Modelle aus Klemmbausteinen.
    Ein Praxistest von Oliver Nickel

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • MediaMarkt & Saturn: Heute alle Produkte versandkostenfrei • Corsair Vengeance RGB RT 16-GB-Kit DDR4-4000 114,90€ • Alternate (u.a. DeepCool AS500 Plus 61,89€) • Acer XV282K UHD/144 Hz 724,61€ • MindStar (u.a. be quiet! Pure Power 11 CM 600W 59€) • Sony-TVs heute im Angebot [Werbung]
    •  /