Transport Layer Security (TSL)
Transport Layer Security (TLS), auch bekannt unter der Vorgängerbezeichnung Secure Sockets Layer (SSL), ist ein Verschlüsselungsprotokoll zur sicheren Datenübertragung im Internet. TLS besteht aus den beiden Hauptkomponenten TLS Handshake und TLS Record. Im TLS Handshake findet ein sicherer Schlüsselaustausch und eine Authentifizierung statt. TLS Record verwendet dann den im TLS Handshake ausgehandelten symmetrischen Schlüssel für eine sichere Datenübertragung – die Daten werden verschlüsselt und mit einem MAC gegen Veränderungen geschützt übertragen.
Für den Schlüsselaustausch sind in den älteren TLS Versionen verschiedene Algorithmen mit unterschiedlichen Sicherheitsgarantien im Einsatz. Die neueste Version TLS 1.3 verwendet allerdings nur noch das Diffie Hellman Schlüsselaustauschprotokoll (DHE oder ECDHE). Dabei wird für jede Verbindung ein neuer Sitzungsschlüssel (Session Key) ausgehandelt. Da dies ohne Verwendung eines Langzeitschlüssels geschieht, erreicht TLS 1.3 Perfect Forward Secrecy.
TLS in der Praxis
TLS Verschlüsselung wird gegenwärtig vor allem mit HTTPS eingesetzt. Die meisten aktuellen Webbrowser und Webserver bevorzugen TLS 1.3 und TLS 1.2. Die älteren Versionen TLS 1.1 und TLS 1.0 werden nicht mehr unterstützt. In aktuellen Browsern ist SSLv3 und SSLv2 deaktiviert, da diese Protokollversion eine Reihe von Sicherheitslücken, unter anderem des Poodle Angriffs aufweist. Die Weiterentwicklung TLS 1.3 wird von allen nennenswert verbreiteten Browsern auf Desktops und Smartphones unterstützt, TLS 1.2 wird von 98,7 Prozent aller Browserinstallationen unterstützt; Ausnahmen sind mehrere Jahre alte Versionen (Stand 02/2022).
Das Deutsche Bundesamt für Sicherheit in der Informationstechnik empfiehlt bei der Verwendung von TLS die Versionen 1.2 und 1.3. Cipher Suiten mit Perfect Forward Secrecy werden bevorzugt empfohlen.
Seit einiger Zeit nutzen immer mehr Webseitenbetreiber Extended Validation TLS Zertifikate (EV TLS Zertifikat). In der Adresszeile des Browsers wird zusätzlich ein Feld angezeigt, in dem Zertifikats und Domaininhaber im Wechsel mit der Zertifizierungsstelle eingeblendet werden. Zudem wird je nach verwendetem Browser und/oder Add on die Adresszeile (teilweise) grün eingefärbt. Internetnutzer sollen so schneller erkennen, ob die besuchte Webseite echt ist, und besser vor Phishingversuchen geschützt werden. EV TLS Zertifikate bieten in technischer Sicht keinen erweiterten Schutz, die Verschlüsselung und deren Stärke ist identisch. Nur der Inhaber wird dabei besser und aufwändiger verifiziert. Seit 2019 werden diese Zertifikate in den Browsern nicht mehr prominent hervorgehoben, weil der erwartete Sicherheitsgewinn für den Endbenutzer ausblieb.
Seit Januar 2017 markiert der Web Browser Chrome Internetseiten als unsicher, die Informationen sammeln, ohne dabei HTTPS zu nutzen. Das wird voraussichtlich zu einem signifikanten Anstieg des Einsatzes von HTTPS führen. Im Februar 2017 war HTTPS bei 2,57 % aller registrierten deutschen Internet Domains sowie bei 3,70 % der österreichischen Domains und 9,71 % der Schweizer Domains aktiviert. Eine Untersuchung von rund 40.000 Webseiten klein und mittelständischer Unternehmen in Baden Württemberg durch den Landesbeauftragten für den Datenschutz und die Informationsfreiheit Baden Württemberg hat ergeben, dass rund 7 % der untersuchten Webseiten über HTTPS angeboten werden. Bei jenen Webseiten, die über HTTPS angeboten werden, ist die serverseitige Unterstützung für TLS 1.0 noch sehr weit verbreitet (99 %).
TLS ist ohne eine zertifikatsbasierte Authentifizierung anfällig für Man in the Middle Angriffe: Ist der Man in the Middle vor der Übergabe des Schlüssels aktiv, kann er beiden Seiten seine Schlüssel vorgaukeln und so den gesamten Datenverkehr im Klartext aufzeichnen und unbemerkt manipulieren. Wegen der mangelnden Vertrauenswürdigkeit einiger Zertifizierungsstellen wird seit Anfang 2010 die Sicherheit von TLS grundsätzlich angezweifelt. Durch die Deaktivierung fragwürdiger Zertifizierungsstellen im eigenen Browser lässt sich dieses Risiko jedoch weitgehend beseitigen.
In Verbindung mit einem virtuellen Server, zum Beispiel mit HTTP (etwa beim Apache HTTP Server über den VHost Mechanismus), ist es grundsätzlich als Nachteil zu werten, dass pro Kombination aus IP Adresse und Port nur ein Zertifikat verwendet werden kann, da die eigentlichen Nutzdaten des darüber liegenden Protokolls (und damit der Name des VHosts) zum Zeitpunkt des TLS Handshakes noch nicht übertragen wurden. Dieses Problem wurde mit der TLS Erweiterung Server Name Indication (SNI) im Juni 2003 durch den RFC 3546 behoben. Dabei wird bereits beim Verbindungsaufbau der gewünschte Servername mitgesendet. Die ursprüngliche Erweiterung wurde für TLS 1.0 beschrieben, aufgrund der Kompatibilität der einzelnen TLS Versionen zueinander wird SNI auch bei TLS 1.1, Version 1.2 und 1.3 entsprechend der Empfehlung umgesetzt. In der Version 1.3 wird zusätzlich auch versucht, die SNI zu verschlüsseln, um mitzulesenden Parteien nicht zu ermöglichen, trotz verschlüsselter Verbindung Informationen über den Zielserver preiszugeben. Das muss jedoch vom Browser unterstützt, im Domain Name System (DNS) ein Schlüssel hinterlegt und verschlüsseltes DNS genutzt werden.
Im Tor Netzwerk sind TLS Zertifikate für Verbindungen in das Internet von besonderer Bedeutung, da ein Abhören einer unverschlüsselten Verbindung mittels Man in the Middle Angriff dort durch den Rechner, der die Verbindung in das Internet herstellt (bezeichnet als »exit node«), sehr einfach möglich wäre. Da eine Verbindung zwischen zwei Endpunkten im Tor Netzwerks jedoch verschlüsselt ist, kann die verschlüsselte Übertragung von Daten innerhalb des Netzwerks nachrangig betrachtet werden, sofern man dem Routing der Verbindungen vertraut. Hier liegt das Hauptmerkmal der TLS Verschlüsselung in der Authentizität der Gegenseite.
Neben HTTPS als verschlüsselte Variante von HTTP sind weitere bekannte Anwendungsfälle für TLS beispielsweise:
-
NNTPS für NNTP
-
LDAPS für LDAP
-
MBS/IP TLS
-
EAP TLS
-
TN3270 TLS
-
DNS over TLS, DNS over HTTPS und DNS over QUIC um DNS Abfragen durch TLS zu tunneln
Auch Verbindungen zu Datenbanksystemen können über TLS abgesichert werden. Dabei werden die Identität des Servers oder auch des Clients geprüft und die gesamte Kommunikation verschlüsselt.
Quelle Wikipedia