Thema
- #TLS
Erstellt: 2024-10-27
Erstellt: 2024-10-27 21:31
Ab etwa 2020 wurde die Unterstützung für TLS 1.1 eingestellt,
weshalb ältere Server überprüft werden mussten.
Wenn TLS 1.1 beibehalten wird, können bei der Kommunikation zwischen Cloud-Diensten wie AWS und Azure Fehler auftreten oder
Fehler bei der Kommunikation mit externen APIs (z. B. Zahlungen) auftreten oder je nach Browserversion Probleme entstehen.
- Versionen vor 6.x scheinen TLS 1.2 nicht zu unterstützen. Mit einem JRE ab Java 7 muss TLS 1.2 verwendet werden.
- Version 1.1.13 scheint TLS 1.2 zu unterstützen.
Client Hello: Der Client sendet eine Verbindungsanfrage an den Server. (Enthält die unterstützten TLS-Versionen und Cipher Suites)
Server Hello: Der Server sendet die zu verwendende TLS-Version, die Cipher Suites und das SSL-Zertifikat, um die Vertrauenswürdigkeit zu belegen.
Schlüsselaustausch und Erzeugung des Session Keys: Client und Server erzeugen mithilfe eines Schlüsselaustauschalgorithmus einen gemeinsam genutzten Session Key.
Abschlussnachricht: Client und Server senden jeweils mit ihrem Schlüssel verschlüsselte Abschlussnachrichten.
Datenübertragung: Die Daten werden mithilfe des Session Keys verschlüsselt und ausgetauscht.
Abschluss: Nach Abschluss der Datenübertragung werden Abschlussnachrichten ausgetauscht und die Session Key-Informationen gelöscht.
TLS ist ein Sicherheitsprotokoll für die Übertragungsebene und bildet die Grundlage von HTTPS. Es bietet Authentifizierung, Integrität und Verschlüsselung.
1.2 soll im Vergleich zu 1.1 in Bezug auf Sicherheit und Leistung überlegen sein.
- 1.1 verwendet die Hash-Algorithmen MD5 und SHA-1.
- 1.1 kann anfällig für BEAST-, Man-in-the-Middle- und Cipher Suite-Angriffe sein.
* BEAST: Ein Angreifer fängt die HTTPS-Verbindung ab und schleust bösartige Inhalte ein.
* Man-in-the-Middle: Ein Angreifer fängt die Kommunikation ab und stiehlt Daten.
- 1.2 verwendet den SHA-256-Algorithmus (ein stärkerer Sicherheitsalgorithmus).
- 1.2 unterstützt GCM-Cipher Suites (Galois/Counter Mode), die Verschlüsselung und Authentifizierung gleichzeitig durchführen und daher schneller sind.
Alle notwendigen Verschlüsselungsmechanismen, damit Client und Server Daten austauschen können, bestehen aus vier Teilen.
1. Schlüsselaustauschalgorithmus
- Methode zum sicheren Austausch eines gemeinsamen geheimen Schlüssels, z. B. RSA, Diffie-Hellman.
2. Authentifizierungsalgorithmus
- Überprüft mit Zertifikaten, ob der Server vertrauenswürdig ist, z. B. öffentlicher Schlüssel mit RSA.
3. Symmetrischer Verschlüsselungsalgorithmus
- Methode zum Verschlüsseln von Daten während der Sitzung, wobei Client und Server denselben Session Key zum Entschlüsseln verwenden, z. B. AES.
4. Message Authentication Code
- Überprüfung der Datenintegrität, z. B. HMAC-SHA256.
Eine Cipher Suite wird als Kombination der oben genannten vier Elemente dargestellt.
Kommentare0