SSL und TLS, auch Transportverschlüsselung genannt, wird inzwischen von fast jeder Webseite eingesetzt. Nicht nur ist eine solche Transportverschlüsselung für personenbezogene Daten nach der Datenschutzgrundverordnung Pflicht, sondern Suchmaschinen wie Google bestrafen das Fehlen des s in https:// auch in ihren Suchergebnissen und das mit gutem Grund.
Einordnung zum Thema (Audio 🎧)
Der Unterschiede zwischen SSL und TLS
Fast überall werden die Begriffe SSL und TLS äquivalent verwendet, doch sind sie das genaugenommen keineswegs. Zunächst einmal ist SSL älter als TLS und wird inzwischen ausdrücklichst in allen Versionen nicht mehr empfohlen. Browser, die eine verschlüsselte Seite via SSLv2 oder SSLv3 aufrufen, zeigen eine Sicherheitswarnung an, ähnlich einer Seite ganz ohne Transportverschlüsselung. Das liegt schlichtweg daran, dass seit der Veröffentlichung von SSLv2 in 1995 durch Netscape und der Folgeveröffentlichung von SSLv3 in 1996, eine große Menge kritischer Sicherheitslücken und Protokollschwächen gefunden wurden. SSLv1 wurde hingegen nie veröffentlicht.1
Der Mehrwert einer Transportverschlüsselung mit SSLv2 oder SSLv3 ist dermaßen gering, weil ein Angreifer in der Mitte (Man-in-the-Middle) mit verhältnismäßig wenig Aufwand sowohl Inhalte mitschneiden, als auch kompromittieren kann - wie bei einer unverschlüsselten Verbindung.
TLSv1.0 hingegen basiert auf SSLv3, ist aber keineswegs damit kompatibel, aber sowohl TLSv1.0, als auch TLSv1.1 werden ebenfalls nicht mehr empfohlen. Eine aktuelle Webseite sollte ausdrücklich nur TLSv1.2 und TLSv1.3 erlauben. Alles andere macht die Webseite und dessen Nutzer unnötig angreifbar, denn ein Parallelbetrieb von mehreren (unsicheren) Verschlüsselungsversionen geht immer mit dem Risiko und Angriffsvektor der schlechtesten Version einher.
SSL ist also enorm unsicher, aber selbst beim sichereren Nachfolger TLS gibt es bereits 2 Versionen, die ebenso nicht mehr als sicher angesehen werden. Es ist also sehr wichtig, immer auf dem aktuellen Stand zu bleiben.
Wichtig zu erwähnen sei noch, dass die dahinterliegenden einzigartigen Zertifikate, die jede Webseite braucht, sowohl mit SSL, als auch TLS kompatibel sind. Das ist aber im Grunde die einzige Gemeinsamkeit.
Wie vertraut Ihr Webbrowser der Verschlüsselung einer Webseite
Ihr Webbrowser und eine Webseite möchten nun also, wie es seit Jahren üblich ist, eine verschlüsselte Verbindung zum Austausch initiieren. Doch es gibt ein zentrales Problem: Woher weiß Ihr Webbrowser, dass das Zertifikat, was soeben die Webseite Ihnen geschickt hat, auch wirklich vertrauenswürdig ist und von der Webseite kam? Ein Angreifer könnte sich nämlich zwischen Sie und die Webseite setzen und Ihren Webbrowser versuchen zu täuschen. Ein sogenannter “Man in the middle” Angriff.
Die Webseite hat ein super komplexes und teures Zertifikat mit Namen und Adresse? Kein Problem, der Angreifer kann sich innerhalb Sekunden auf einem langsamen Computer ein ähnliches Zertifikat mit den gleichen Merkmalen selbst ausstellen.
Die Verbindung wäre dann immer noch verschlüsselt, aber der Wert der Verschlüsslung sinkt auf 0, da der Angreifer die Verschlüsslung kontrolliert und alles mitliest - es ist ja sein Zertifikat.
Und genau deswegen gibt es sogenannte Certificat Authorities (CAs), oder zu Deutsch Zertifizierungsstellen. Ähnlich wie Sie wissen, dass sie einem Deutschen Pass mit all seinen Sicherheitsmerkmalen vertrauen können, ist es möglich ein SSL-Zertifikat eindeutig und absolut fälschungssicher kryptografisch zu signieren.
Wenn Ihr Webbrowser nun also eine Webseite aufruft, schickt die Webseite das von der CA zuvor signierte Zertifikat zurück und Ihr Webbrowser überprüft, ob die Signatur der CA stimmt. Passt alles, wird auf Basis des Inhalts des signierten Zertifikats die Verschlüsselung aufgebaut, damit die Medien und Inhalte sicher verschlüsselt ausgetauscht werden können. Sollte hingegen etwas mit der Signatur nicht stimmen, etwa weil ein Angreifer in der Mitte versucht Ihren Webbrowser zu täuschen, blockiert der Webbrowser schlichtweg diesen Verbindungsaufbau.
OCSP, oder wie Zertifikate vorzeitig widerrufen werden können
Alle modernen Browser unterstützen zudem seit einiger Zeit sogenanntes OCSP (Online Certificate Status Protocol). Damit wird nicht nur überprüft, ob das Webseitenzertifikat von einer vertrauenswürdigen Zertifizierungsstelle abgesegnet wurde, sondern bei jedem Aufruf wird auch noch zusätzlich via OCSP überprüft, ob das Zertifikat vorzeitig zurückgerufen wurde. Ein solches vorzeitiges zurückrufen kann etwa vonnöten sein, wenn ein Teil der Webseiteninfrastruktur gehackt und mitunter etwa das Zertifikat entwendet wurde. Früher konnte in einem solchen Fall nur abgewartet und nichts sonst getan werden, was besonders kritisch war, wenn das Zertifikat mehrere Jahre gültig waren. Mit OCSP kann nun in einem solchen Fall schnell und vollautomatisch das von der CA signierte Zertifikat widerrufen werden und es somit völlig unbrauchbar machen.