Eines der von der Certificate Authority (CA) Sectigo ausgestellten Stammzertifikate läuft am 30. Mai 2020 aus. LEMARIT erklärt, was dieser Vorgang für Zertifikatsinhaber bedeutet.

Sectigo (ehemals Comodo) betreibt derzeit drei auf RSA basierende Stammzertifikate:

Zertifikat Algorithmus Läuft ab
AddTrust External CA Root
https://crt.sh/?id=1
sha1WithRSAEncryption 30. Mai 2020
USERTrust RSA Certification Authority
https://crt.sh/?id=1199354
sha384WithRSAEncryption Januar 2038
COMODO RSA Certification Authority
https://crt.sh/?id=1720081
sha384WithRSAEncryption Januar 2038

Alle drei Stammzertifikate sind seit vielen Jahren verbreitet und werden von 99,99% der Systeme und von 100% der aktuellen Browser unterstützt.

Das mit SHA-1 signierte „AddTrust External CA Root“ Zertifikat läuft am 30. Mai dieses Jahres aus. Die Nachfolger dieses Stammzertifikats werden als COMODO RSA Certification Authority und USERTrust RSA Certification Authority bezeichnet und laufen 2038 ab. In der Vergangenheit konnte eine geringe Anzahl von Plattformen die neueren SHA-2 Root Zertifikate aus verschiedenen Gründen noch nicht verwenden, daher war dieses Zertifikat aus Gründen der Kompatibilität noch immer im Umlauf.


„Cross Signing“ für unterbrechungsfreien Wechsel

Um einen unterbrechungsfreien Wechsel hin zu den neueren Root Zertifikaten zu ermöglichen, wurde sich der Technik des sog. „Cross Signing“ bedient. Mit Einführung der neuen Root Zertifikate „USERTrust RSA Certification Authority“ und „COMODO RSA Certification Authority“ wurden zwei zusätzliche Zwischenzertifikate mit dem selben Namen erzeugt, die mit dem alten „AddTrust“ Root Zertifikat signiert wurden. Diese beiden „Cross Certificates“ sehen so aus:

Zertifikat Algorithmus Läuft ab
USERTrust RSA Certification Authority
https://crt.sh/?id=4860286
sha384WithRSAEncryption Mai 2020
COMODO RSA Certification Authority
https://crt.sh/?id=1044348
sha384WithRSAEncryption Mai 2020

Diese beiden Zertifikate dienen in älteren Systemen als sog. Zwischenzertifikate und ermöglichen so den Einsatz von neu ausgestellten Zertifikaten auf Systemen bei denen noch das alte SHA-1 Root Zertifikat „AddTrust“ eingesetzt werden musste. Dies ist deswegen möglich, weil die beiden neuen Root Zertifikate und die Cross Signing Zertifikate den selben Namen tragen. Die Zertifikatsketten werden dabei ausschließlich durch den Namen eines Zertifikates, dem sog. „Common Name“ zusammengesetzt.


Ist mein Zertifikat noch gültig?

Inzwischen muss und kann davon ausgegangen werden, dass alle aktuellen Systeme und Clients mit den moderneren SHA-2 Root Zertifikaten umgehen können. Das alte SHA-1 Root Zertifikat „AddTrust“ sollte in keinem produktiven System mehr zum Einsatz kommen müssen.

Als Administrator vor unerwünschten Ausfällen ab dem 30. Mai schützen

Bei Systemen, die die beiden neueren Root Zertifikate kennen, also im TrustStore des Systems enthalten sind, sind keine Probleme zu erwarten. Da diese beiden Root Zertifikate schon viele Jahre im Umlauf sind, sollten diese Systeme demnach nicht betroffen sein. Ein Problem tritt lediglich dann auf, wenn diesen Systemen seit sehr langer Zeit keine Updates zur Verfügung gestellt wurden. Dabei hilft ein Blick in den genannten TrustStore des Systems.

Überprüfen Sie Ihre Server

Prüfen Sie, ob die angegebenen Stammzertifikate auf Ihren Servern vorhanden sind:

USERTrust RSA Certification Authority
https://crt.sh/?id=1199354

COMODO RSA Certification Authority
https://crt.sh/?id=1720081

Nutzen Sie bei extern erreichbaren Webseiten beispielsweise den SSL Server Test von Qualys.

Vergessen Sie nicht, dass nicht nur Webserver mit Zertifikaten betrieben werden. Auch andere Serverdienste wie z. B. E-Mail oder VOIP-Server sollten auf das Vorhandensein der aktuellen Stammzertifikate überprüft werden.

Moderne und gewartete Systeme stehen demnach nicht vor Problemen. Auch wenn viele Systeme noch alle drei Root Zertifikate im TrustStore haben, sind Administratoren nicht zum Handeln gezwungen. SSL Clients, wie z. B. Browser, sind in der Lage unterschiedliche Pfade bei der Validierung ganz automatisch zu verwenden.

Beispielhafte Darstellung eines Zertfikats unter https://login.lemarit.com

Ein durchgeführter SSL Server Test von Qualys offenbart zwei gültige Pfade bei der Validierung der Zertifikatskette, Path #1 und Path #2. Path #1 wird dabei aus einem Zertifikat weniger zusammengesetzt, was ihn zum bevorzugten Pfad macht.

Screenshot der Ergebnisse des SSL Server Test

Zu Beginn des Path #2 erscheint das alte „AddTrust“ Root Zertifikat [4]. Dieses kommt in diesem Fall aus dem TrustStore des Servers. Es folgt das erste Zwischenzertifikat, bei dem es sich um das bereits beschriebene „Cross Signing“ Zertifikat handelt. Es trägt den selben Namen wie das Root Zertifikat aus Path #1: „COMODO RSA Certification Authority“.

In Path #1 wird dieses Zertifikat zum Root Zertifikat. Obwohl es sich um ein vollkommen anderes Zertifikat handelt, ist es dennoch durch die Verwendung des selben Namens mit dem darauf folgenden Zwischenzertifikat an Position [2] in beiden Pfaden gültig. Hier bildet der Client seine Vertrauenskette (Chain of Trust) ausschließlich über den Common Name, und nicht etwa über den Fingerprint oder andere Merkmale der Zertifikate.

Position [1] und [2] setzen sich in beiden Pfaden aus dem Zwischenzertifikat „COMODO RSA Extended Validation Secure Server CA“ und dem Serverzertifikat „login.lemarit.com“ zusammen. Ein aktuell ausgestelltes Zertifikat ist demnach auch mit den zwei unterschiedlichen Root Zertifikaten gültig. Dadurch bleibt ein Serverzertifikat von der Änderung des Pfades auch nach dem 30. Mai weiterhin gültig.

Nach Ablauf des Root Zertifikats „AddTrust“ ist Path #2 nicht mehr gültig. Dieser wird als un-trusted eingestuft und bei der Validierung nicht mehr berücksichtigt.


Stammzertifikate und die Vertrauenskette

Stammzertifikate sind selbstsignierte Zertifikate einer oberen Zertifizierungsstelle (z. B. Sectigo ehemals Comodo), die die Gültigkeit aller untergeordneten Zertifikate validieren. Jedes SSL Zertifikat ist unter einem Stammzertifikat ausgestellt. Stammzertifikate werden vertrauenswürdig, wenn diese im TrustStore eines SSL Clients, wie z. B. Browser, eingetragen sind.

Zwischen einem Stammzertifikat und einem ausgestellten SSL Zertifikat sind ein oder mehrere sog. Zwischenzertifikate geschaltet. Das SSL Zertifikat wird von einem Zwischenzertifikat signiert und das Zwischenzertifikat wiederum von dem Stammzertifikat einer Zertifizierungsstelle. Auf diese Weise ist eine Kette von Zertifikaten erhältlich, deren Namen überprüft werden, um die Gültigkeit des Zertifikats zu überprüfen. Diese Kette wird auch als Vertrauenskette bezeichnet, welche den Pfad ausgehend vom SSL Zertifikat zum vertrauenswürdigen Stammzertifikat aufbaut.