SSL – Secure Sockets Layer
Abkürzung: SSL
Netscape entwickelte das Protokoll Mitte der neunziger Jahre, um Zahlungsvorgänge im Web abzusichern. Mit der Übergabe an die IETF wurde es 1999 in TLS umbenannt. Technisch ist TLS 1.0 der direkte Nachfolger von SSL 3.0, und die Versionszählung begann von vorn — was die Verwirrung bis heute nährt.
Warum SSL immer noch SSL heißt
Der Begriff hat das Protokoll überlebt, weil er sich in Produktnamen und Preislisten festgesetzt hat. Was im Handel als SSL-Zertifikat verkauft wird, ist ein X.509-Zertifikat, das mit TLS verwendet wird — mit SSL hat es nichts zu tun. Dasselbe gilt für Begriffe wie SSL-Verschlüsselung, SSL-Offloading oder die Bibliothek OpenSSL.
Für ein Lexikon ist die Unterscheidung dennoch nötig: Wer nach SSL sucht, will meist wissen, wie das Protokoll heute heißt und ob die eigene Konfiguration noch etwas davon enthält.
Die Versionen
SSL 1.0 wurde nie veröffentlicht; die Entwürfe wiesen gravierende Fehler auf.
SSL 2.0 erschien 1995 und hatte strukturelle Schwächen: Der Handshake war nicht gegen Veränderung geschützt, Prüfsummen und Verschlüsselung nutzten denselben Schlüssel, und es fehlte eine geschützte Abbaumeldung — ein Angreifer konnte die Verbindung beenden, ohne dass es auffiel. RFC 6176 verbietet die Version seit 2011.
SSL 3.0 von 1996 war ein vollständiger Neuentwurf und über Jahre die Grundlage der Websicherheit. Nachträglich wurde es 2011 in RFC 6101 dokumentiert, von Anfang an mit dem Status Historic.
Das Ende von SSL 3.0
2014 wurde ein Angriff auf die Betriebsart Cipher Block Chaining in SSL 3.0 veröffentlicht, bekannt als POODLE. Er nutzt aus, dass die Füllbytes am Blockende in SSL 3.0 nicht von der Prüfsumme abgedeckt sind. Wer die Verbindung beeinflussen und viele Versuche erzwingen kann, liest damit die Nutzdaten byteweise aus.
Verschärft wurde die Lage dadurch, dass Clients bei Verbindungsproblemen selbsttätig auf ältere Protokollversionen zurückfielen. Ein Angreifer musste den Handshake nur so lange stören, bis beide Seiten bei SSL 3.0 landeten — auch wenn sie TLS 1.2 beherrschten.
RFC 7568 zog daraus 2015 die Konsequenz und schaffte SSL 3.0 ab. Die Rückfallautomatik verschwand aus den Browsern, und TLS 1.3 kennt überhaupt keine Versionsverhandlung mehr in der alten Form.
Was heute noch davon übrig ist
In der Praxis trifft man SSL noch an drei Stellen:
In Konfigurationsdateien. Direktiven wie ssl_protocols oder SSLEngine on tragen den alten Namen, schalten aber TLS. Wer dort SSLv3 findet, hat eine Altlast — die Zeile gehört entfernt, nicht nur kommentiert.
In Werkzeugnamen. openssl s_client ist das gängige Mittel, eine TLS-Verbindung von Hand zu prüfen, obwohl es SSL im Namen trägt.
In Prüfberichten. Scanner melden „SSL/TLS" als Sammelbegriff. Dass eine Zeile SSL erwähnt, heißt nicht, dass SSL im Einsatz ist.