HTTPS-Zertifikate sind eine der tragenden Säulen der Internetsicherheit – aber auch sie haben, wie so oft, ihre Schattenseiten. Wir haben bereits darüber berichtet, das HTTPS keine absolute Garantie für die Sicherheit der Nutzer ist. In diesem Beitrag möchten wir uns deshalb darauf konzentrieren, was für die Websitebetreiber schief gehen kann.
Zwei gültige Zertifikate für eine Domain
Domain-Registrierung und HTTPS-Zertifizierung werden oft von verschiedenen Organisationen kontrolliert; deshalb kann es passieren, dass der Gültigkeitszeitraum für Domains und Zertifikate nicht immer übereinstimmt. Dies führt zu Situationen, in denen sowohl der ehemalige als auch der aktuelle Websitebetreiber zur gleichen Zeit gültige Zertifikate für dieselbe Domain besitzen.
Was kann in einer solchen Situation schiefgehen und wie weit verbreitet ist das Problem tatsächlich? Auf der DEF CON 26 präsentierten die Forscher Ian Foster und Dylan Ayrey ihre Studie zu diesem Problem. Ihrer Meinung nach gibt es deutlich mehr Komplikationen als man auf den ersten Blick vermuten mag – und es ist ein überraschend weit verbreitetes Problem.
Das offensichtlichste Problem, wenn jemand im Besitz eines gültigen Zertifikats Ihrer Domain ist, ist ein „Man-in-the-Middle„-Angriff auf die Benutzer Ihrer Website.
Foster und Ayrey nutzten die Zertifikatsdatenbank des Certificate-Transparency-Projekts, um 1,5 Millionen Cross-Ownership-Probleme bei Zertifikaten zu identifizieren – das entspricht fast 0,5% aller Webseiten. In einem Viertel dieser Fälle ist das ältere Zertifikat noch immer gültig; mit anderen Worten: 375.000 Domains sind anfällig für einen Man-in-the-Middle-Angriff.
Aber das ist noch lange nicht alles. Es kommt relativ häufig vor, dass ein und dasselbe Zertifikat für mehrere Domains erstellt wird – manchmal auch für Dutzende oder sogar Hunderte von ihnen. So sind Foster und Ayrey beispielsweise auf ein Zertifikat gestoßen, das 700 Domains gleichzeitig abdeckt; den Forschern zufolge lassen sich auf dieser Liste auch zahlreiche sehr bekannte Domains finden.
Daher überrascht es nicht, dass einige dieser 700 Domains derzeit noch immer frei zur Verfügung stehen; theoretisch könnte also jeder diese Domain registieren lassen und ein HTTPS-Zertifikat dafür anfordern. In diesem Fall stellt sich allerdings die Frage, ob der neue Domaininhaber das Recht hat, das vorherige Zertifikat zu widerrufen, um seine Website vor einem Man-in-the-Middle-Angriff zu schützen.
Kann das Zertifikat widerrufen werden?
Zertifikate können tatsächlich widerrufen werden. Der Betriebsablauf der Zertifizierungsstellen sieht einen solchen Widerruf vor, wenn „die im Zertifikat enthaltenen Informationen ungenau oder irreführend sind“. Der Widerruf muss innerhalb von 24 Stunden nach Erhalt der Benachrichtigung erfolgen.
Foster und Ayrey haben genauer untersucht, wie das Ganze im wirklichen Leben funktioniert, und herausgefunden, dass das Verfahren für verschiedene Zertifizierungsstellen sehr unterschiedlich abläuft. So verwendet Let’s Encrypt automatisierte Tools, mit denen ein Zertifikat sehr schnell – fast in Echtzeit – widerrufen werden kann. Bei anderen Zertifizierungsstellen müssen Sie hingegen erst mit den zuständigen Mitarbeitern Kontakt aufnehmen. In einigen Fällen verlangt der Widerruf eines Zertifikats viel Ausdauer und deutlich mehr Wartezeit als die angegebenen 24 Stunden. Im schlimmsten Fall kann es sogar passieren, dass ein Zertifikat gar nicht widerrufen wird.
Es ist sehr wahrscheinlich, dass ein altes, noch gültiges Zertifikat widerrufen werden kann. Hierbei gibt es allerdings gute und schlechte Nachrichten: Auf der einen Seite wird der neue Domain-Inhaber in den meisten Fällen in der Lage sein, sich vor einem Man-in-the-Middle-Angriff zu schützen. Auf der anderen Seite bedeutet es aber auch, dass jemand anderes eine kostenlose Domain, die mit einem „geteilten“ Zertifikat abgedeckt ist, erwerben und widerrufen kann, wodurch die Nutzung der zugehörigen Websites stark beeinträchtigt wird.
Wie weit verbreitet ist dieses Problem? Rund 7 Millionen Domains – mehr als 2% aller Webseiten! – teilen ihre Zertifikate mit Domains, deren Registrierungen bereits abgelaufen sind. 41% der vorherigen Zertifikate sind dabei immer noch gültig. Daher sind derzeit mehrere Millionen Domains möglichen DoS-Angriffen ausgesetzt.
Kommen wir auf das oben genannten „700-Domains“-Zertifikat zurück: Um zu demonstrieren, wie unmittelbar das Problem ist, haben die Forscher eine der freien Domains, die durch dieses Zertifikat abgedeckt ist, erworben und haben aktuell theoretisch die Möglichkeit, eine DoS-Attacke auf Hunderte von aktiven Websites zu starten.
So können Sie sich schützen
Insgesamt 375.000 Domains sind anfällig für MitM-Angriffe und mehrere Millionen für DoS-Angriffe durch den Gebrauch verbleibender Zertifikate. Auch Ihre Domains könnten auf der Liste stehen. Aber wie können sich Websitebetreiber schützen? Foster und Ayrey schlagen Folgendes vor:
- Verwenden Sie einen Expect-CT HTTP-Header, um zu überprüfen, ob ein Zertifikat für diese Website in den öffentlichen Certificate Transparency Logs enthalten ist.
- Verwenden Sie die Certificate-Transparency-Datenbank, um zu überprüfen, ob für Ihre Domains gültige Zertifikate vorhanden sind, die an vorherige Betreiber ausgestellt wurden. Das kann beispielsweise mit dem Certificate-Transparency-Monitoring-Tool von Facebook getan werden. Um die Aufgabe einfacher zu gestalten, haben die Forscher ein eigenes Tool zur Verfügung gestellt, mit dem jeder nach Domains suchen kann, die den beschriebenen Schwachstellen ausgesetzt sind.
Wir können ebenfalls ein paar Tipps hinzufügen:
- Nehmen Sie eine vollständige Überprüfung Ihrer Unternehmenswebsite vor, um festzustellen, ob noch weitere Zertifikate für Ihre Domains vorhanden sind. Sollte dies der Fall sein, wenden Sie sich direkt an die Zertifizierungsstelle und fordern Sie diese auf, die Zertifikate zu widerrufen.
- Erwerben Sie kein Zertifikat für mehrere Domains, insbesondere, wenn es in Ihrem Unternehmen üblich ist, viele Websites und die dazugehörigen Domains ohne strikte Kontrolle der Funktionsfähigkeit zu erstellen. Wenn die Registrierung für eine „verlassene“ Domain abläuft und jemand anderes sie übernimmt, muss der neue Betreiber lediglich das Zertifikat widerrufen, um Ihre Unternehmenswebsite aus dem Verkehr zu ziehen.
- Berücksichtigen Sie die Situation kompromittierter Zertifikate im Voraus. Im Ernstfall könnte der dringende Widerruf eines Zertifikats zu viel Zeit in Anspruch nehmen.