Online Certificate Status Protocol (OCSP) und Certificate Revocation Lists (CRLs) sind zwei Methoden zur Aufrechterhaltung Zertifikatslebenszyklusverwaltung (CLM) für Ihr Unternehmen. Doch bevor wir uns mit der besten Methode befassen, wollen wir zunächst besprechen, warum Sie CLM überhaupt verwenden sollten.
Wie Sie vielleicht wissen, wenn Sie HTTP/S auf den von Organisationen verwalteten Websites, SSL-Zertifikate eingesetzt werden, welche Organisationen profitieren von einer Zertifizierungsstelle (CA) Dadurch wird überprüft, ob das Zertifikat legitim ist oder nicht. Diese Zertifikate haben jedoch eine Gültigkeitsdauer, während der sie aktiv bleiben und die gesamte Kommunikation zum und vom Server verschlüsseln. So werden die Online-Aktivitäten der Benutzer vor böswilligen Akteuren und Man-in-the-Middle-Angriffen (MitM) geschützt.
Nach Ablauf des Zertifikats muss ein neues Zertifikat ausgestellt und das bisherige Zertifikat auf die schwarze Liste gesetzt werden, damit es nicht für zukünftige Kommunikationen verwendet werden kann. Um Aufzeichnungen über solche Aktivitäten zu führen, müssen Organisationen CLM verwenden.
OCSP
Das Online Certificate Status Protocol (OCSP) ist ein Internetprotokoll, das es Anwendungen ermöglicht, den Sperrstatus identifizierter Zertifikate ohne die Verwendung von Zertifikatsperrlisten (Certificate Revocation Lists, CRLs) zu ermitteln. Mit OCSP lassen sich aktuellere Informationen zum Sperrstatus gewinnen als mit CRLs.
So funktioniert’s
Ein OCSP-Client sendet eine Statusanfrage an einen OCSP-Responder und wartet mit der Annahme der Zertifikate, bis der Responder eine Antwort bereitstellt.
OCSP-Anfrage
Eine OCSP-Anfrage enthält die folgenden Informationen:
- Protokollversion
- Service-Anfrage
- Zielzertifikatkennung
- Weitere optionale Erweiterungen.
Nach Erhalt der Anfrage prüft der OCSP-Responder, ob die vordefinierten Bedingungen erfüllt sind. Diese Bedingungen sind:
- Die Nachricht sollte gut formuliert sein.
- Der Responder sollte so konfiguriert sein, dass er den angeforderten Dienst bereitstellt.
- Die Anfrage sollte die vom Antwortenden benötigten Informationen enthalten.
Es gibt eine endgültige Antwort zurück, wenn alle oben genannten Bedingungen erfüllt sind, und erzeugt andernfalls eine Fehlermeldung.
OCSP-Antwort
OCSP-Antworten können verschiedene Typen haben, es gibt jedoch nur eine Art von OCSP-Antwort, die von allen OCSP-Servern und -Clients unterstützt wird. Eine einfache OCSP-Antwort enthält die folgenden Informationen:
- Version der Antwortsyntax
- Kennung des Antwortenden
- Zeitpunkt der Antwortgenerierung
- Antworten für jedes der Zertifikate in einer Anfrage
- Optionale Erweiterungen
- Signaturalgorithmus OID
- Signatur berechnet über eine Hash- der Antwort
Es können drei Zertifikatsstatuswerte zurückgegeben werden:
-
Gut
Der Zertifikatsstatus „Gut“ zeigt an, dass das Zertifikat gültig ist. Dies bedeutet zumindest, dass ein Zertifikat mit der entsprechenden Seriennummer und Gültigkeitsdauer nicht widerrufen wurde.
-
Widerrufen
Der Status „widerrufen“ zeigt an, dass das Zertifikat vorübergehend oder dauerhaft widerrufen wurde. Wenn die Zertifizierungsstelle keine Aufzeichnungen darüber hat, dass sie jemals ein Zertifikat mit der in der Anforderung angegebenen Zertifikatsseriennummer ausgestellt hat, kann dieser Status ebenfalls zurückgegeben werden.
-
Unbekannt
Der Status „unbekannt“ zeigt an, dass der Antwortende nichts von dem angeforderten Zertifikat weiß, normalerweise weil die Anforderung auf einen unbekannten Aussteller hinweist, der von diesem Antwortenden nicht bedient wird.
Die OCSP-Antwort wird immer von der Zertifizierungsstelle signiert, um sicherzustellen, dass während der Übertragung der Anfrage keine Änderungen auftreten.
OCSP-Heften
OCSP-Stapling verbessert die Leistung durch die Einrichtung einer digital signierten und mit einem Zeitstempel versehenen OCSP-Antwort auf dem Webserver. Diese OCSP-Antwort wird dann in von der Zertifizierungsstelle festgelegten Intervallen aktualisiert. Die gestapelte OCSP-Antwort ermöglicht es dem Webserver, die OCSP-Antwort in den initialen SSL-Handshake einzubinden, ohne dass der Benutzer eine separate Verbindung zur Zertifizierungsstelle herstellen muss.
Vorteile
- Im Vergleich zur CRL enthält eine OCSP-Antwort erheblich weniger Daten, da ein Client mithilfe von OCSP den Status eines einzelnen Zertifikats abfragen kann, anstatt eine ganze Liste herunterladen und analysieren zu müssen.
- Da nur wenige Daten angefordert werden, ist die Belastung des Clients und des Netzwerks wesentlich geringer als bei CRLs.
Nachteile
- Da die Anforderung für jedes Zertifikat jedes Mal einzeln gesendet wird, kann dies den OCSP-Responder bei Websites mit hohem Datenverkehr überlasten.
- Obwohl das oben genannte Problem durch die Verwendung von OCSP-Stapling gelöst werden kann, wird es noch nicht von allen Browsern unterstützt.
- Wenn der private Schlüssel des Servers kompromittiert wurde, kann sich ein Angreifer mithilfe eines Man-in-the-Middle-Angriffs als der Server ausgeben.
CRL
Eine Zertifikatsperrliste (Certificate Revocation List, CRL) ist eine Liste digitaler Zertifikate, die von der ausstellenden Zertifizierungsstelle (CA) vor ihrem Ablaufdatum gesperrt wurden und daher nicht mehr als vertrauenswürdig gelten. Es gibt zwei verschiedene Sperrzustände:
Widerrufen
In diesem Zustand wird ein Zertifikat unwiderruflich widerrufen und kann nicht wiederhergestellt werden. Der Widerruf kann folgende Gründe haben:
- Nicht spezifiziert
- Schlüsselkompromiss
- CA-Kompromiss
- Zugehörigkeit geändert
- Abgelöst
- Einstellung des Betriebs
- Zertifikatssperre
- Aus CRL entfernt
- Privileg entzogen
- CA-Kompromiss
Der häufigste Grund für den Widerruf ist, dass der private Schlüssel des Benutzers kompromittiert wurde.
Hold
Ein Zertifikat, das in den Haltestatus versetzt wird, ist vorübergehend ausgesetzt und kann bei Bedarf wiederhergestellt werden. Das Aussetzen eines Zertifikats kann verschiedene Gründe haben. Beispielsweise kann der Status wiederhergestellt werden, wenn ein verloren geglaubter privater Schlüssel gefunden wird und das Zertifikat wieder gültig ist.
So funktioniert’s
Eine CRL fungiert im Wesentlichen als schwarze Liste für Zertifikate. Ein Browser sendet eine GET-Anfrage an eine HTTPS-fähige Seite, die CA empfängt die Anfrage und gibt anschließend eine Liste aller widerrufenen Zertifikate zurück. Der Browser analysiert anschließend die CRL, um sicherzustellen, dass das Zertifikat der angeforderten Seite nicht darin enthalten ist.
Wenn ein Browser eine CRL für ein Zertifikat abrufen möchte, ruft er diese von einem angegebenen CRL-Verteilungspunkt ab (ein CRL-Verteilungspunkt (CDP) ist eine Zertifikatserweiterung für X.509 v3). Vereinfacht ausgedrückt ist ein CRL-Verteilungspunkt ein gemeinsam genutzter Speicherort im Netzwerk, an dem die CRL und Zertifikate gespeichert werden. Es sind auch zwei Verteilungspunkte möglich, von denen einer auf den HTTP-CRL-Speicherort und der andere auf den LDAP-CRL-Speicherort verweist. Beide Verteilungspunkte, HTTP und LDAP, können auf dieselbe CRL verweisen.
Vorteile
Die Verwendung einer CRL ist die nächstbeste Möglichkeit, den Lebenszyklus eines Zertifikats aufrechtzuerhalten, wenn OCSP aus irgendeinem Grund nicht verfügbar ist.
Nachteile
- Im Allgemeinen enthält die zurückgegebene CRL Tausende von Zeilen, was erhebliche Auswirkungen auf die Netzwerk- und Clientleistung haben kann.
- Normalerweise ist die Veröffentlichung einer neuen CRL sehr langsam, wodurch der Client anfällig für Angriffe sein kann.
- Wenn ein Client die CRL aus irgendeinem Grund nicht herunterladen kann, wird dem Zertifikat standardmäßig vertraut.
| OCSP | CRL |
|---|---|
| OCSP kann verwendet werden, um den Status eines einzelnen Zertifikats abzurufen. | Eine CRL ist eine Liste mit mehreren Zeilen, die vom Browser heruntergeladen werden muss. |
| Der Status eines Zertifikats wird durch eine Anfrage an einen OCSP-Responder abgerufen. | Eine CRL wird über einen CDP-Punkt verteilt, bei dem es sich um einen HTTP-Link oder einen LDAP-Server handeln kann. |
| Hat weniger Auswirkungen auf die Client- und Netzwerkressourcen. | Hat große Auswirkungen auf die Clientressourcen. |
| Ist derzeit der Industriestandard für das Zertifikatslebenszyklusmanagement. | War früher die einzige Lösung für Zertifikatslebenszyklusmanagement. |
