SNI-Sicherheitslücke: Abhilfe naht

Eine nicht unerhebliche Sicherheitslücke bei der Web-Verschlüsselung könnte bald Historie sein. Cloudflare, Spezialist für Web-Performance und -Sicherheit, arbeitet an einem Projekt, ein Security-Problem der weit verbreiteten SNI (Server Name Indication)-Technologie zu lösen.

Das Problem

SNI ist eine unverschlüsselte Datei, die den Namen der ausgewählten Website enthält. Sie wird vom Browser gesendet, wenn man Web-Seiten sicher besucht. Doch SNI ist ein Kompromiss: Es öffnet ein kleines Datenschutzloch auf Kosten der Schließung einer viel größeren Lücke. Noch vor wenigen Jahren war das Web weitgehend unverschlüsselt und der gesamte Inhalt der HTTP-Nachrichten konnte durch Interloper überlagert und modifiziert werden. In diesem Zusammenhang war das SNI-Leck ein kleiner Preis für die enorme Steigerung der Privatsphäre und Sicherheit, indem es HTTPS auf Shared Hosts einfacher macht.

Man wusste zwar, dass diese Lücke früher oder später geschlossen werden muss, doch bisher wusste niemand wie das Problem gelöst werden kann. Die Lösung von Cloudflare heißt Encrypted SNI und soll schon bald getestet werden.

Die SNI-Sicherheitslücke

Wenn man eine Website über eine verschlüsselte HTTPS-Verbindung besucht, fragt der Computer den Hosting-Server, nach seinem digitalen Zertifikat. Er vergleicht den Namen im Zertifikat mit dem Namen der Website. Stimmen die Namen überein, wird ein verschlüsselter Tunnel zwischen den beiden Computern errichtet und es können HTTP-Nachrichten gesendet und empfangen werden.

Es gibt jedoch einen Haken. Häufig besucht man eine Website auf einem Server, der viele verschiedene Websites mit unterschiedlichen Zertifikaten hostet. Dann muss der Computer dem Server mitteilen, für welche Website er ein Zertifikat möchte, um einen verschlüsselten Tunnel zu erstellen. Das Problem: Der Computer sagt dem Server, welche Website er über HTTP verwenden möchte, kann jedoch keine HTTP-Nachrichten senden, bis er einen verschlüsselten Tunnel erstellt hat – eine Endlosschleife, die ins Nichts führen würde.

SNI hilft diese Blockade zu überwinden. SNI ermöglicht es einem Webbrowser, den Namen der gewünschten Website im Voraus zu senden und zwar bevor der verschlüsselte Tunnel gebildet wird. Damit weiß der Server, welches Zertifikat er senden soll. Die SNI-Daten werden jedoch in Klartext gesendet und können somit von jedem gelesen werden, der Browserverkehr abfangen kann, etwa ein ISP oder ein betrügerischer Wi-Fi-Zugangspunkt.

Die Lösung

Der Prozess der Aushandlung eines verschlüsselten Tunnels zwischen dem Browser und einem Webserver wird als "Handshake" bezeichnet. Dabei werden Klartext-SNI-Daten gesendet, um dem Server mitzuteilen, welches Zertifikat man wünscht. Es wird überprüft, ob man mit diesem Server spricht und es wird vereinbart, welche Verschlüsselungen verwendet werden sollen. Auch die Verschlüsselungscodes werden ausgetauscht.

Die Korrektur von SNI ist deshalb so schwierig, weil die gesendeten SNI-Daten vom Server entschlüsselt werden müssen, bevor er den Handshake durchführen kann. Die Lösung besteht darin, die nötigen Informationen in das lesbare globale Internet-Adressbuch DNS (Domain Name System) zu packen. Der Ansatz von Cloudflare ist, dass Website-Besitzer neben ihrer IP-Adresse ein Paar kryptographischer Schlüssel erstellen – einen öffentlichen und einen privaten, wobei der öffentliche Schlüssel im DNS-Eintrag veröffentlicht ist.

Der öffentliche Schlüssel kann von jedermann verwendet werden, um einen symmetrischen Verschlüsselungscode abzuleiten, den nur der Eigentümer des geheimen, privaten Schlüssels (der Eigentümer der Website) freischalten kann. Der Server nutzt seinen privaten Schlüssel und den öffentlichen Schlüssel des Browsers, um den Schlüssel abzuleiten, der die SNA-Daten entschlüsseln kann. Danach erfolgt der Handshake für die verschlüsselte HTTP-Sitzung.

Cloudflare versucht diese ESNI über die IETF (Internet Engineering Task Force) zu einem offenen Standard zu machen. Die Funktion ist bereits für jeden verfügbar, der Cloudflare-Nameserver verwendet. Bisher wird diese Technologie noch von keinem Browser unterstützt. Doch es ist zu erwarten, dass dieses Feature in einem der nächsten Builds von Firefox integriert ist.

Mehr Details zur Lösung der SNI-Sicherheitslücke beschreibt Mark Stockley auf Naked Security unter:

https://nakedsecurity.sophos.com/2018/09/26/finally-a-fix-for-the-encrypted-webs-achilles-heel/

Firmenkontakt und Herausgeber der Meldung:

Sophos Technology GmbH
Gustav-Stresemann-Ring 1
65189 Wiesbaden
Telefon: +49 (611) 5858-0
Telefax: +49 (611) 5858-1042
http://www.sophos.de

Ansprechpartner:
Arno Lücht
TC Communications
Telefon: +49 (8081) 954619
E-Mail: sophos@tc-communications.de
Thilo Christ
TC Communications
Telefon: +49 (8081) 954617
E-Mail: sophos@tc-communications.de
Ariane Wendt
Telefon: +1 (724) 536839
E-Mail: sophos@tc-communications.de
Jörg Schindler
PR Manager EMEA
Telefon: +49 (721) 25516-263
E-Mail: joerg.schindler@sophos.com
Ulrike Masztalerz
TC Communications
Telefon: +49 (30) 55248198
E-Mail: sophos@tc-communications.de
Für die oben stehende Pressemitteilung ist allein der jeweils angegebene Herausgeber (siehe Firmenkontakt oben) verantwortlich. Dieser ist in der Regel auch Urheber des Pressetextes, sowie der angehängten Bild-, Ton-, Video-, Medien- und Informationsmaterialien. Die United News Network GmbH übernimmt keine Haftung für die Korrektheit oder Vollständigkeit der dargestellten Meldung. Auch bei Übertragungsfehlern oder anderen Störungen haftet sie nur im Fall von Vorsatz oder grober Fahrlässigkeit. Die Nutzung von hier archivierten Informationen zur Eigeninformation und redaktionellen Weiterverarbeitung ist in der Regel kostenfrei. Bitte klären Sie vor einer Weiterverwendung urheberrechtliche Fragen mit dem angegebenen Herausgeber. Eine systematische Speicherung dieser Daten sowie die Verwendung auch von Teilen dieses Datenbankwerks sind nur mit schriftlicher Genehmigung durch die United News Network GmbH gestattet.