Weltweit werden täglich Milliarden von Websites und -dienste aufgerufen. Immer mehr davon erfordern die Eingabe, Verarbeitung oder Übertragung von persönlichen (geheimen) Informationen wie IP-Adressen, Bankdaten oder Passwörter. Mit der Verbreitung des Internets wird die Sicherheit der übertragenen Daten zunehmend wichtiger. Deshalb wurden verschiedene Verfahren entwickelt, um eine sichere Datenübertragung zu gewährleisten. In diesem Beitrag soll eines dieser Verfahren, das „Transport Layer Security“ (TLS), vorgestellt werden. Wir zeigen u. a., woran Sie eine gesicherte Verbindung erkennen und wie Sie die angezeigten Informationen verstehen sowie bewerten können. Eine detailliertere Funktionsbeschreibung von TLS und „Secure Sockets Layer“ (SSL) finden Sie z. B. in diesem Beitrag.
Das Verschlüsselungsprotokoll TLS wurde als Nachfolger des SSL, welches Anfang der 90er entwickelt wurde und inzwischen als unsicher gilt, von der Internet Engineering Task Force (IETF) eingeführt. TLS hat selbst im Laufe der Zeit einige Neuerungen durchlaufen. Aktuell werden die Versionen TLS 1.2 und TLS 1.3 (veröffentlicht im August 2018) vom Bundesamt für Sicherheit in der Informationstechnik (BSI) empfohlen.
Als sichere Verbindung werden Verbindungen bezeichnet, die die Schutzziele Vertraulichkeit, Integrität und Authentizität gewährleisten. Die Vertraulichkeit und Integrität in der aktuellen TLS-Versionen 1.3 werden dabei mittels „Authenticated Encryption with Associated Data“(AEAD)-basierten kryptographischen Verfahren sichergestellt. Diese vereinen Verschlüsselung, Authentifizierung und Wahrung der Integrität in einem integrierten Schema. Je nach TLS-Version stehen verschiedene Algorithmen und Schlüssellängen zur Verfügung.
Funktionsweise des TLS
Der problematischste Teil von TLS ist dabei die Authentifizierung, d. h. sicherzustellen, dass das Gegenüber das ist, das es vorgibt zu sein. Die Sicherstellung der Authentifizierung basiert auf Zertifikaten. Ein Zertifikat enthält dabei Informationen zur Verifikation der Gültigkeit, zum Einsatzgebiet, zum Inhaber und dem Aussteller des Zertifikats. Der Aussteller ist in der Pflicht, diese Daten, so weit nötig, zu prüfen. Dabei hat sich das (hierarchische) Root-of-Trust-Modell durchgesetzt. Darin wird einigen wenigen sog. Certificate Authorities (CAs) – ca. 125 weltweit – grundsätzlich vertraut. Diese sog. Root-Zertifikate sind dabei in Betriebssystemen und Browsern integriert und werden in unregelmäßigen Abständen von den Browser-Herstellern oder durch Betriebssystem-Updates aktualisiert. Jedem Zertifikat, dessen Herkunft auf eines dieser Root-Zertifikate zurückgeführt werden kann, wird „vertraut“. Die Betreiber der CAs müssen dabei eine ganze Reihe an strengen Anforderungen erfüllen. Dennoch wurden in der Vergangenheit immer wieder Zertifikate fehlerhaft oder missbräuchlich ausgestellt (siehe bspw. die Übersicht von sslmate). Um solche Fälle leichter erkennen und zurückverfolgen zu können, wurde „Certificate Transparency“ als Verzeichnis für ausgestellte Zertifikate sämtlicher CAs eingerichtet (mehr Informationen finden Sie hier).
Ist meine Verbindung sicher?
Ob der Datenaustausch sicher ist, erkennt man zum einen daran, dass die URL der Website statt mit „http“ mit „https“ anfängt. Der Buchstabe „s“ im Netzwerkprotokoll weist auf eine verschlüsselte und damit eine sichere Verbindung mit TLS hin. Viele Browser zeigen zudem ein Schloss-Symbol auf der Adress-Zeile, wenn die Verbindung sicher ist (Abb. 1). Das bedeutet, dass alle auf der Website angegebenen Informationen verschlüsselt übertragen werden. Dabei ist zu beachten, dass TLS nur den Transportweg der Daten sichert. Die Sicherheit und Vertraulichkeit der Daten auf dem Zielsystem können darüber nicht abschließend bewertet werden.
Hinweis: Google erwägt das Schloss-Symbol in Chrome bald durch ein anderes Symbol zu ersetzen, da es oft für Missverständnisse sorgt und noch aus der Zeit stammt, als HTTPS neu war (mehr lesen Sie hier und hier).
Klickt man auf das Schloss-Symbol, erhält man Informationen über die gesicherte Verbindung (Abb. 2).
Darunter befinden sich Informationen, wie z. B die Domain, für die das Zertifikat gültig ist (in unserem Beispiel „www.dsn-group.de“), die Zertifizierungsstelle (Let’s Encrypt), die Gültigkeitsdauer des Zertifikates sowie die kryptographische Prüfsumme, mit der geprüft werden kann, ob das Zertifikat wirklich von der Zertifizierungsstelle ausgestellt wurde (Abb. 3).
Neben browserspezifischen Einstellungen gibt es auch betriebssystemweite Einstellungen, die TLS betreffen. Hier wollen wir diese beispielhaft für das Windows-Betriebssystem zeigen.
Mit dem „Ausführen“-Befehl (Windows + R) kann man das Dialogfeld „Eigenschaften von Internet“ öffnen, indem hier „inetcpl.cpl“ eingegeben wird (Abb. 4).
Unter dem Register „Erweitert“ findet man im Abschnitt „Sicherheit“ verschiedene Optionen, die den Einsatz von unterschiedlichen Versionen von SSL/TLS erlauben. Dabei sind (Stand Mai 2023) nur TLS 1.2 und 1.3 als sicher zu betrachten (Abb. 5).
Zusammenfassung
Die Nutzung von Internetdiensten ist inzwischen fester Bestandteil des täglichen Lebens, gleichwohl birgt die Nutzung viele Risiken. Böswillige Angreifer im Cyberspace sind mit zum Teil hoch komplexen Tools und Verfahren auf der Suche nach persönlichen und sensiblen Informationen. Der Transportweg bietet dabei die Möglichkeit, die persönlichen Daten vieler Nutzer gleichzeitig abzugreifen. Mithilfe des Verschlüsselungsverfahrens TLS können die Informationen auf dem Transportweg gesichert werden, sofern die besuchten Websites das TLS-Verfahren einsetzen. Mit dem Schloss-Symbol-Hinweis im URL-Eingabefeld und „https“-Verbindung statt „http“ kann zumindest sichergestellt werden, dass die Datenübertragung nicht im Klartext, sondern verschlüsselt erfolgt. Sicherheitsrisiken lassen sich zwar nicht komplett ausschließen, werden aber minimiert.