Alert!

Achtung: Let's Encrypt macht Mittwochnacht 3 Millionen Zertifikate ungültig

Webadmins aufgepasst: Wer jetzt seine Let's-Encrypt-Zertifikate nicht erneuert, könnte Donnerstag früh verunsicherte Nutzer auf der Matte stehen haben.

Lesezeit: 3 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen 229 Beiträge

(Bild: Eviart/Shutterstock.com)

Update
Von

Die gemeinnützige Zertifizierungsstelle Let's Encrypt macht in der Nacht auf Donnerstag knapp 3 Millionen TLS-Zertifikate aufgrund eines Sicherheitsproblems in seiner Software ungültig. Webseiten-Admins müssen sich bis 3 Uhr Nachts mitteleuropäischer Zeit darum kümmern, die entsprechenden Zertifikate auszutauschen. Wer das nicht tut, läuft Gefahr, dass Besucher seiner Website ab morgen früh TLS-Fehler angezeigt bekommen. Let's Encrypt hatte betroffene Administratoren per E-Mail informiert, diesen allerdings nur 24 Stunden Zeit gegeben, sich um die Erneuerung zu kümmern – dafür hagelt es bereits reichlich Kritik. Viele Webadmins fühlen sich durch die knappe Deadline der Zertifizierungsstelle (CA) überrumpelt.

Laut den Verantwortlichen bei Let's Encrypt handelt es sich bei dem Sicherheitsproblem um einen Software-Fehler im CAA-Code (Certification Authority Authorization) der Zertifizierungsstelle, der in einer Open-Source-Software namens Boulder verbaut ist. Durch den Fehler lassen sich unter bestimmten Umständen Zertifikate für Domains ausstellen, deren DNS-Eintrag dies eigentlich verhindern sollte. Das ermöglicht es theoretisch, sich Let's-Encrypt-Zertifikate für fremde Domains ausstellen zu lassen. Mit einem solchen Zertifikat bewaffnet, könnte ein Angreifer den Web-Traffic von und zu dieser Domain abfangen und belauschen – also genau das tun, was TLS-Zertifikate eigentlich verhindern sollen.

Laut Let's Encrypt wurde der Bug in Boulder am vergangenen Sonntag gefunden und noch am selben Tag gepatcht. Er war durch eine Änderung an der Software im Juli 2019 entstanden. Deswegen muss die CA nun alle Zertifikate, die mit der fehlerhaften Software erstellt worden waren, für ungültig erklären. Insgesamt sind das 3.048.289 Zertifikate, also knapp 2,6 Prozent der insgesamt aktuell 116 Millionen aktiven durch Let's Encrypt ausgestellten TLS-Zertifikate. Gegenüber der von AV-Hersteller Kaspersky betriebenen IT-Security-Nachrichtenseite Threatpost sagte ein Let's-Encrypt-Sprecher, die knappe Deadline zur Erneuerung der Zertifikate sei der CA durch die Anforderungen des CA/Browser Forums aufgezwungen. Man habe keine andere Wahl, als sich daran zu halten. Das CA/Browser Forum ist der Zusammenschluss aus Zertifizierungsstellen und den Browser-Herstellern, das Richtlinien für den Umgang mit X.509-Zertifikaten (wie sie unter anderem bei TLS zur Anwendung kommen) vorgibt. Alle allgemeinhin als vertrauenswürdig angesehenen Zertifizierungsstellen halten sich an diese Vorgaben.

Normalerweise erhält ein Webserver, der mehrere über HTTPS ansprechbare Domains verwaltet, von Let's Encrypt ein einziges Zertifikat, das alle diese Domains abdeckt, damit nicht unnötig Zertifikate für alle einzelnen Domains ausgestellt werden müssen. Durch den Software-Fehler überprüfte Boulder allerdings nicht alle dieser Domains einzeln auf DNS-Einträge, die ein Ausstellen von Zertifikaten durch Let's Encrypt erlauben, sondern prüfte nur eine der Domains mehrmals. Also hätte man sich eventuell gültige Zertifikate für Domains ausstellen lassen können, die das gar nicht erlauben.

Let's Encrypt überprüft beim Ausstellen eines Zertifikates, ob der Empfänger des Zertifikates die Kontrolle über die Domain hat, für die er ein Zertifikat anfragt. Das kann unter anderem mit einem sogenannten CAA Record über einen DNS-Eintrag für die Domain erfolgen. Durch die Regeln des CA/Browser Forums sind CAs verpflichtet, diese Einträge innerhalb von acht Stunden vor Ausstellen eines Zertifikates zu überprüfen. Da diese Einträge allerdings 30 Tage lang als gültig angesehen werden und von Let's Encrypt, wegen des Software-Fehlers in Boulder, nicht korrekt geprüft wurden, gab es für Angreifer ein 30-Tage-Fenster, in dem sich diese Zertifikate für Domains hätten ausstellen können, deren CAA-Einträge das eigentlich verbieten.

Admins, deren Webseiten von einem Hosting-Anbieter betrieben werden, müssen sich höchstwahrscheinlich um gar nichts kümmern. Deren Mitarbeiter sollten eigentlich die Erneuerung der Let's-Encrypt-Zertifikate veranlassen. Wer allerdings eigene Server verwaltet, muss selbst aktiv werden. Was genau zu tun ist, hängt von der Software ab, die auf dem Server zum Einsatz kommt, um die Zertifikate zu verwalten. Die meisten Admins werden wohl die quelloffene Certbot-Software der Electronic Frontier Foundation (EFF) verwenden, denn diese wird von Let's Encrypt allgemeinhin empfohlen. Certbot-Nutzer sollten mit dem Befehl certbot renew --force-renewal alle Zertifikate auf dem entsprechenden Server erneuern.

Die Zertifikate für einzelne Domains lassen sich mittels einer Webseite auf das Problem hin überprüfen.

(Bild: Fabian A. Scherschel )

Admins können die Zertifikate ihrer Domains mit einem speziell dafür eingerichteten Tool überprüfen. Let's Encrypt erklärt das entsprechende Vorgehen auf seiner Webseite und hat dort zusätzlich ein Skript bereitgestellt, mit dem eine große Anzahl an Domains auf einmal geprüft werden kann.

Viele Admins sind durch die 24-Stunden-Deadline, die ihnen von Let's Encrypt gesetzt wurde, verärgert. Heise online erreichten in den letzten Stunden eine ganze Reihe an verärgerten Zuschriften von Administratoren, die sich überrumpelt sehen und deren heutiger Tag nun daraus besteht, TLS-Zertifikate zu prüfen und ihren Vorgesetzten zu erklären, warum auf einmal Notfall-Wartung an den Webservern nötig ist. Auf der anderen Seite der Diskussion, die gerade in einschlägigen Foren und auf den sozialen Netzen tobt, steht eine ganze Reihe von Sicherheitsforschern, welche die CA für ihr schnelles und transparent kommuniziertes Vorgehen lobt.

Wer ab morgen im Web unterwegs ist und von seinem Browser beim Besuch einer ihm bekannten Webseite einen Zertifikatsfehler angezeigt bekommt, sollte im Hinterkopf behalten, dass hier eventuell ein Admin es verschlafen hat, sein Let's-Encrypt-Zertifikat zu erneuern. Vor allem bei privaten Blogs könnte das ob der arg knappen Deadline durchaus vorkommen. Natürlich muss die Verbindung zu dieser Webseite dann trotzdem als unsicher angesehen werden. Darüber sollten unter keinen Umständen vertrauliche Informationen oder Login-Daten versendet werden.

Wer sein Let's-Encrypt-Zertifikat bis drei Uhr in der kommenden Nacht nicht erneuert, dem könnte es im schlimmsten Fall blühen, dass seine Besucher bis zu zwei Monate lang TLS-Fehler angezeigt bekommen. Da Let's-Encrypt-Zertifikate in der Regel 90 Tage gültig sind und automatisch erst 30 Tage vor Ablauf des Zertifikats erneuert werden, steht diese automatische Erneuerung bei ganz frischen Zertifikaten der gemeinnützigen CA erst in knapp 60 Tagen an.

Update 05.03.20, 16:00: Let's Encrypt hat in der Nacht zum Donnerstag letztlich nur gut die Hälfte der angekündigten 3 Millionen Zertifikate zurückgezogen. Weitere Details haben wir in einer neuen Meldung zusammengefasst:

(fab)