Verschlüsseln ist ganz groß in Mode, aber um größtmögliche Abhörsicherheit und bestmöglichen Schlüsselaustausch zu garantieren reicht es oft nicht aus das Häkchen bei jetzt verschlüsseln zu setzen. Nicht zuletzt beim SecureSocketLayer.

Das SSL/TLS massive Schwachstellen besitzt und die existierende PKI-Infrastruktur mit ihren unzähligen CAs schon ein Geburtsfehler war ist hinlänglich bekannt. Aber man kann den Schaden eingrenzen, zum Beispiel bieten Verfahren wie Perfect Forward Secrecy (FS) Schutz gegen nachträgliches Entschlüsseln, allerdings ist es noch lange nicht Standard.

Die seit längerem bekannten Angriffe auf SSL/TLS BEAST und CRIME haben dazu geführt, dass sich die zuständigen Standardgremien um eine Fortentwicklung von TLS bemüht haben, so existiert mittlerweile TLS in Version 1.2. Auf diese Version können die genannten Angriffe nicht mehr angewandt werden, aber auch hier sieht die Unterstützung noch mangelhaft aus, insbesondere auf Client-Seite.

Was kann man tun?

Als Diensteanbieter sollte man unbedingt seine Infrastruktur dahingehend optimieren, dass zumindest alle oben genannten Verfahren angeboten werden und extrem defekte Verfahren deaktiviert werden (z.B. SSLv[2,3], RC4). Das kann zur Folge haben, dass Nutzer älterer Systeme nun keinen Zugriff mehr auf jene Dienste haben, aber viele lernen eben nur durch Schmerz (vgl.: Anteil von WinXP).

Auf nachtsieb.de erlaube ich nun nur noch Kryptoverfahren welche Forward Secrecy einsetzen und SSLv3, sowie Algorithmen wie RC4 und MD5 sind ausdrücklich deaktiviert (vgl.: Qualys SSL-Server-Test). Damit diese Verfahren auch immer Anwendung finden ist die Verwendung von TLS Pflicht.

Unterstützung für die Konfiguration verschiedenster sicherheitsrelevanter Software habe ich in applied-crypto-hardening von bettercrypto.org gefunden.

und die Clients?

Die meisten Browser unterstützen FS-fähige Verfahren, aber um die Verwendung von TLSv1.2 sicherzustellen müssen die derzeit aktuellsten Versionen verwendet werden (z.B. Safari7, IE11, Firefox27 (BETA)). Die Ausnahme bildet hier Firefox, der in der aktuellen stabilen Version 26 (stand Januar 2014) nur TLSv1.0 unterstützt. Dabei sind die TLS-Versionen 1.1 und 1.2 schon längst implementiert, in den Standardeinstellungen jedoch deaktiviert. Um diese zu nutzen (seit Firefox 24 möglich) müssen folgende Werte in about:config angepasst werden:

security.tls.version.max 1 3 security.tls.version.min 0 1 Legende: 0: SSLv3 1: TLSv1.0 2: TLSv1.1 3: TLSv1.2

Probe über Qualys SSL Browser-Test


Next post: PGP key transition

Previous post: SRTM-Höhendaten mit Openstreetmap