Fortschritte bei SSL

Drei primär browserbasierte Weiterentwicklung in Bezug auf SSL, die aus meiner Sicht mehr zum Einsatz kommen sollten: SNI, HSTS und DNSSEC-basierte Validierung von SSL-Zertifikaten.

SNI

Server Name Indication (vgl. RFC 3546, Kapitel 3.1) ermöglicht das Bereitstellen von SSL-gesicherten Webseiten über HTTPS unter einer IP-Adresse. Ohne SNI benötigt man für jede SSL-gesicherte Webseite eine eigene IP-Adresse. Das ist aktuell mit IPv4 bei vielen Anbietern nicht möglich oder mit zusätzlichen Kosten verbunden. IPv6 wird dieses Problem lösen, das kann aber noch ein wenig dauern.

SNI wird von vielen Browsern unterstützt, aber noch nicht von allen. Nutzer des Internet Explorers unter Windows XP sowie beispielsweise auch Nutzer von Android-basierten Geräten, die nicht bereits Version 4 installiert haben, bekommen weiterhin eher abschreckende Zertifikatswarnungen. Dieses Problem wird sich erfahrungsgemäß innerhalb der kommenden Jahre lösen, schöner wäre es aber, wenn Hersteller grundsätzlich hachhaltig arbeiten würden und auch bei älteren Plattformen noch Aktualisierungen einpflegen würden.

HSTS

HTTP Strict Transport Security (vgl. RFC 6797) ermöglicht es, für Domänen die Nutzung von HTTPS zu erzwingen und gleichzeitig die zu akzeptierenden Zertifikate festzulegen.

Dies kann zum einen auf Browser-Seite konfiguriert werden. Benutzt man Google Chrome, so kann man diesen Mechanismus über die Eingabe von "chrome://net-internals/#hsts" manuell konfigurieren.

Zum anderen kann dies die Betreiberin einer Webseite einfach durch zusätzliche Header aktivieren, z.B. "Strict-Transport-Security: max-age=16070400; includeSubDomains"

Firefox, Chrome und Opera unterstützten HSTS schon seit mehreren Jahren, für den "typischen Endanwender" ist diese Funktion jedoch immer noch zu schwierig zu konfigurieren. Der Internet-Explorer unterstützt dies leider noch nicht. Wünschenswert wäre eine einfach Einbindung in die "Smartbar" der Browser. Ein einfacher Rechts-Klick auf "Feste SSL-Sicherheit aktivieren" und sprechende Warnmeldungen, wenn sich das SSL-Zertifikat ändert, wären ein Schritt in die richtige Richtung. Momentan bieten Plugins wie HTTPS-Everywhere oder NoScript ähnliche Funktionen.

DNSSEC-basierte Validierung von SSL-Zertifikaten

Noch nicht standardisiert und auch bisher nur als Prototyp umgesetzt ist die Validierung von SSL-Zertifikaten auf Basis von DNSSEC (vgl. Blog-Beitrag von Jan-Piet Mens).

Momentan verlässt man sich auf "vertrauenswürdige Stammzertifizierungsstellen", die auf mehr oder minder nachvollziehbare Art ihre eigene Vertrauenswürdigkeit nachweisen und dies dann auch für die Betreiber von Webseiten anbieten, die SSL-Zertifikate verwenden wollen. Aktuell zeigen alle Browser eine Warnmeldung an, wenn die Betreiberin einer Webseite ein Zertifikat einsetzt, welches nicht von einer "vertrauenswürdigen Stammzertifizierungstelle" bestätigt wurde. Eine detaillierte Auseinandersetzung mit den Vorteilen und Nachteilen dieses "Vertrauens"-Modells würde diesen Blog-Beitrag sprengen, deswegen nur soviel: Das muss auch anders gehen. Ich hatte hierzu auch was für die bpb geschrieben.

Ein Weg wäre die Nutzung von DNSSEC. Die Betreiber von Webseiten könnten im DNS die Prüfsummen Ihrer Zertifikate veröffentlichen. Browser prüfen dann beim Aufbau einer HTTPS-Verbindung, ob die Prüfsumme des aktuellen Zertifikats mit der im DNS veröffentlichten Prüfsumme übereinstimmt. Wenn dies der Fall ist, sind auch "selbst-signierte" Zertifikate vertrauenswürdig.

Aktuell ist dies in den Browsern noch nicht umgesetzt. Es gibt aber schon einzelne Plugins, die dies ermöglichen würden. Dies wäre meiner Meinung nach ein guter Weg, um die Nutzung von SSL weiter voranzutreiben. Ob dies mit den Geschäftsinteressen der Betreiber von "vertrauenswürdigen" Zertifizierungsstellen vereinbar ist, ist fraglich, aber letztendlich auch: egal.

Trackbacks

Keine Trackbacks

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Noch keine Kommentare

Kommentar schreiben

Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten Sie, dass Ihr Browser Cookies unterstützen muss, um dieses Verfahren anzuwenden.
CAPTCHA

Was ist drei plus vier? (Bitte einfach die Zahl sieben eintragen :-)