Die Sicherheit mehr oder weniger jeder SSL– oder TLS-geschützten Verbindung hängt weitgehend von der Auswahl der Cipher Suites durch den Client und den Server ab.
Wenn Sie Dateiübertragungsprotokolle wie HTTPS, FTPS und AS2 verwenden, aber nicht wissen, worum es sich bei Cipher Suites handelt, wird Ihnen dieser Beitrag zu einem besseren Verständnis dieser  elementaren Verschlüsselungstechnik verhelfen.

Grundlagen einer Cipher Suite

Die Definition einer Cipher Suite besteht im Wesentlichen aus einem vollständigen Satz von Algorithmen, die zum Sichern einer Netzwerkverbindung über SSL (Secure Sockets Layer) bzw. TLS (Transport Layer Security) erforderlich sind. Der Name jeder Cipher Suite ist dabei repräsentativ für die spezifischen Algorithmen, aus denen er besteht.

Bestandteile einer Cipher Suite

Die Algorithmen, die eine typische Cipher Suite bilden, sind die folgenden:

1. Schlüsselaustausch-Algorithmus – bestimmt die Art und Weise, wie symmetrische Schlüssel ausgetauscht werden; Einige Schlüsselaustauschalgorithmen: RSA, DH, ECDH, ECDHE;

2. Authentifizierungs-Algorithmus – legt fest, wie die Serverauthentifizierung und (falls erforderlich) die Clientauthentifizierung durchgeführt werden. Einige Authentifizierungsalgorithmen: RSA, DSA, ECDSA;

3. Massenverschlüsselungs-Algorithmus – legt fest, welcher Algorithmus mit symmetrischem Schlüssel zum Verschlüsseln der tatsächlichen Daten verwendet wird; Einige Massenverschlüsselungsalgorithmen: AES, 3DES, CAMELLIA;

4. MAC-Algorithmus (Message Authentication Code) – Bestimmt die Methode, mit der die Verbindung Datenintegritätsprüfungen durchführt. Einige MAC-Algorithmen: SHA, MD5;

Jede Suite besteht in der Regel aus einem Schlüsselaustausch-, einem Authentifizierungs-, einem Verschlüsselungs und einem MAC-Algorithmus. Bei der Konfiguration einer Cipher Suite wird kurz gesagt festgelegt, wann welche Verschlüsselungs- und Dechiffrierverfahren wie angewendet werden.

Typischerweise könnte eine Cipher Suite also wie folgt aufgebaut sein:

TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384

Aufgeschlüsselt liest sich diese Sammlung kryptografischer Verfahren folgendermaßen:

TLS zeigt einfach das Protokoll an;
ECDHE bezeichnet den Schlüsselaustauschalgorithmus;
ECDSA bezeichnet den Authentifizierungsalgorithmus.
AES_256_CBC gibt den Massenverschlüsselungsalgorithmus an. SHA384 gibt den MAC-Algorithmus an.

Diese Chiffren arbeiten an verschiedenen Punkten zusammen, um die Authentifizierung, die Schlüsselerzeugung und den Austausch sowie eine Prüfsumme zur Gewährleistung der Integrität durchzuführen. Um zu bestimmen, welche spezifischen Algorithmen verwendet werden sollen, entscheiden sich Client und Server zunächst für eine zu verwendende Suite. Zu Beginn der Verbindung teilen sich dafür beide Parteien eine Liste der unterstützten Cipher Suites und entscheiden sich dann für die sicherste, von beiden Seiten unterstützte Suite.

Mehr zum Thema:
Von fundamentaler Bedeutung für jede IT-Abteilung: Sichere Passwörter

Verwendung

Cipher Suites werden in Netzwerkverbindungen verwendet, die durch SSL oder TLS gesichert sind. Das heißt, Netzwerkprotokolle wie HTTPS, FTPS, WebDAVS, AS2, POP3, IMAP und SMTP verwenden alle Cipher Suites.

Bevor eine Clientanwendung und ein Server Daten über eine SSL bzw. TLS-Verbindung austauschen können, müssen sich diese beiden Parteien zunächst auf einen gemeinsamen Satz von Algorithmen einigen, um die Verbindung zu sichern. Das sind die Algorithmen, die weiter oben bereits erwähnt wurden. Wenn die beteiligten Parteien keine Einigung erzielen, kann keine Verbindung hergestellt werden.
Dieser „Verhandlungsprozess“ findet während des sogenannten SSL-Handshakes statt. Beim SSL-Handshake teilt der Client dem Server zunächst mit, welche Cipher Suites er unterstützt. Diese sind normalerweise in der Reihenfolge ihrer Sicherheit angeordnet. Die sicherste Methode ist natürlich die erste Wahl.
Der Server vergleicht dann diese Cipher Suites mit den Cipher Suites, die auf seiner Seite aktiviert sind. Sobald es eine Übereinstimmung findet, informiert es den Client und die Algorithmen der gewählten Cipher Suite werden ins Spiel gebracht.

Schwächen

In der Vergangenheit sind mehrere Sicherheitslücken auf Netzwerkebene im Zusammenhang mit Cipher Suites aufgetreten. Darunter befanden sich SSL/TLS-basierte Sicherheitslücken wie Heartbleed und POODLE. Um diese Sicherheitsanfälligkeiten zu verringern, sollten Unternehmen verschiedene Versionen verfügbarer Suites verwenden oder die Akzeptanz anfälliger Suites deaktivieren. Um sich beispielsweise gegen POODLE zu verteidigen, muss SSLv3 deaktiviert werden.

Das Deaktivieren von Cipher Suites kann jedoch manchmal zu Kompatibilitätsproblemen führen. Aber es kann davon ausgegangen werden, dass die allermeisten namenhaften Webbrowser ihre Cipher Suites ohnehin nach Bekanntwerden einer SSL/TLS-basierten Sicherheitsanfälligkeit aktualisieren. Unternehmen sollten Webbenutzern deswegen dazu raten, immer die aktuellsten Software-Patches auf ihren Geräten zu installieren, damit Kompatibilitätsprobleme vermieden werden können.
Der Administrator einer Website kann die Verwendung der bestmöglichen Cipher Suites erzwingen, indem er die Software regelmäßig aktualisiert und die richtige Konfiguration verwendet. Auf diese Weise können Sie die Wahrscheinlichkeit verringern, dass die Besucher Ihrer Webseite mit Kompatibilitätsproblemen konfrontiert werden.

Daniel Faust

Redakteur bei Biteno GmbH
Daniel Faust ist Redakteur im Content-Team der Biteno und betreut den Blog der Biteno GmbH.

Letzte Artikel von Daniel Faust (Alle anzeigen)