Die kostenfreie Zertifizierungsstelle (Certification Authority, CA) Let’s Encrypt hat angekündigt, als erste CA in großem Stil Domains aus mehreren Blickwinkeln zu validieren. Was das konkret bedeuten soll, kann man in einem aktuellen Blogpost der Organisation nachlesen.
Aktuell kommt demnach noch eine einfache Domain-Validierung bei der Vergabe eines Sicherheits-Zertifikats zum Einsatz. Hier soll kurz erklärt werden, wie das funktioniert.
Der aktuelle Ablauf bei Vergabe eines Zertifikats
Aktuell läuft die Vergabe eines Zertifikats wie folgt ab:
Ein Nutzer beantragt bei der CA Let’s Encrypt automatisiert ein Zertifikat für seine eigene Domain und muss dafür im Rahmen einer sogenannten Challenge beweisen, dass er auch wirklich den Zugriff auf diese Domain besitzt.
Das Ganze umfasst mehrere Schritte. In einem dieser Schritte prüft Let’s Encrypt über eine bestimmte Route, nämlich den Validierungspfad, und anhand der gestellten Aufgabe (der Challenge), ob der Antragsteller tatsächlich im Besitz der Domain ist (Challenge Validation).
Verbesserte Validierung gegen gefälschte Pfade
Hier gibt es aber ein inzwischen bekanntes Problem: Die Uni Princeton hat gezeigt, dass man über das BGP (Border Gateway Protocol) der Validierungspfad so manipulieren kann, dass ein potentieller Angreifer die Challenge der Validierungsserver erfüllen kann, ohne dass ihm die Domain gehören muss.
Das sei zwar recht umständlich und deshalb bisher nur ein seltenes Angriffsszenario, aber das könnte sich ändern, denn BGP sei an sich ein unsicheres Protokoll. Es gibt zwar schon Versuche, das zu ändern, aber der Umbauprozess dürfte sich noch eine Weile hinziehen. Bis dahin hilft die Multiperspektiv-Validierung, solche Angriffe deutlich zu erschweren.
Die Mehrfach- oder Multiperspektiv-Validierung
Bei der Mehrfach-Validierung oder auch Multiperspektiv-Validierung prüfen zusätzlich drei unabhängige Cloud-Server, ob der Antragsteller die Challenge erfüllt hat. Sie übernehmen also nur den Schritt der eigentlichen Challenge Validation. Die restlichen Schritte werden weiterhin von dem Let’s-Encrypt-Server durchgeführt.
Zur Zeit verwendet das Projekt zusätzliche Server in verschiedenen Regionen, allerdings bei nur einem einzigen Cloud Provider. Allerdings will das Projekt sein Modell in Zukunft auf weitere Cloud Provider ausdehnen.
In dem System müsste ein Angreifer also mehrere Validierungspfade gleichzeitig fälschen, um die Challenge bestehen zu können. Entstanden ist die Multiperspectiv-Validation in Zusammenarbeit mit den Princeton-Forschern, die das Problem auch entdeckt hatten.