Frage Wie überprüfe ich, ob meine SSL-Zertifikate widerrufen wurden?


Die kürzliche Entdeckung der Heartbleed-Schwachstelle hat die Zertifizierungsstellen dazu veranlasst, Zertifikate erneut auszustellen.

Ich habe zwei Zertifikate, die generiert wurden, bevor die Heartbleed-Schwachstelle entdeckt wurde. Nachdem der SSL-Aussteller mir gesagt hat, dass ich das Zertifikat neu generieren soll, habe ich beide meine Server / Domains mit den neuen Zertifikaten aktualisiert.

Wenn mein Verständnis stimmt, dann sollten die alten Zertifikate von der CA widerrufen worden sein und es in die CRL (Certificate Revocation List) oder die OCSP-Datenbank (Online Certificate Status Protocol) geschafft haben, ansonsten ist es technisch möglich, man in the middle attack "indem man die Zertifikate aus Informationen rekonstruiert, die aus kompromittierten Zertifikaten stammen.

Gibt es eine Möglichkeit zu überprüfen, ob meine alten Zertifikate es in CRL und OCSP geschafft haben. Wenn nicht, gibt es eine Möglichkeit, sie einzubeziehen?

UPDATE: Die Situation ist, dass ich bereits meine Zertifikate ersetzt habe, alles, was ich habe, ist die .crt-Dateien der alten Zertifikate, so dass die Verwendung der URL zum Überprüfen nicht wirklich möglich ist.


21
2018-04-22 09:14


Ursprung


Sie können überprüfen, mit certutil ich glaube. Lesen Sie Hier - MichelZ
Ich benutze Ubuntu als meinen Desktop und Centos auf meinem Server - sridhar pandurangiah
Dann ermutige ich Sie, Ihre Frage als solche zu markieren - MichelZ
Ich empfehle ein Lesen von diese für * nix - MichelZ
@MichelZ - Ich habe die Frage mit Ubuntu getaggt - sridhar pandurangiah


Antworten:


Holen Sie sich die OCSP-URL von Ihrem Zertifikat:

$ openssl x509 -noout -ocsp_uri -in /etc/letsencrypt/archive/31337.it/cert1.pem
http://ocsp.int-x1.letsencrypt.org/
$

Senden Sie eine Anfrage an den Ocsp-Server, um zu überprüfen, ob das Zertifikat widerrufen wurde oder nicht:

$ openssl ocsp -issuer /etc/letsencrypt/archive/31337.it/chain4.pem -cert /etc/letsencrypt/archive/31337.it/cert4.pem -text -url http://ocsp.int-x1.letsencrypt.org/ -header "HOST" "ocsp.int-x1.letsencrypt.org"
...
        This Update: Oct 29 10:00:00 2015 GMT
        Next Update: Nov  5 10:00:00 2015 GMT
$

Das ist ein gutes Zertifikat.

Dies ist ein widerrufenes Zertifikat:

$  openssl ocsp -issuer /etc/letsencrypt/archive/31337.it/chain3.pem -cert /etc/letsencrypt/archive/31337.it/cert3.pem -text -url http://ocsp.int-x1.letsencrypt.org/ -header "HOST" "ocsp.int-x1.letsencrypt.org"
...
        This Update: Oct 29 12:00:00 2015 GMT
        Next Update: Nov  5 12:00:00 2015 GMT
        Revocation Time: Oct 29 12:33:57 2015 GMT
$

9
2017-10-29 13:46



Dies funktionierte für mich (danke), aber ich dachte, ich würde auch erwähnen, dass zusätzlich die Widerrufsfrist, meine Out einen Revozierungsgrund auch angezeigt, was hilfreich war, als wir den Emittenten kontaktiert, um herauszufinden, was zum Teufel mit war das Zertifikat - sdek


Sie können Certutil unter Windows verwenden:

Wenn Sie ein Zertifikat haben und dessen Gültigkeit überprüfen möchten, führen Sie den folgenden Befehl aus:

certutil -f –urlfetch -verify [FilenameOfCertificate]

Zum Beispiel, verwenden

certutil -f –urlfetch -verify mycertificatefile.cer

Quelle / Weitere Informationen: TechNet

Überprüfen Sie außerdem mit Ihrer Zertifizierungsstelle. Nur weil Sie das Zertifikat erneut eingeben / ein neues bekommen, heißt das nicht, dass es automatisch widerrufen wird!


9
2018-04-22 09:29



Installieren certutil Auf dem Ubuntu-Server verwenden Sie den Befehl sudo apt-get install libnss3-tools. Dies ist nicht offensichtlich, da die Suche nach dem apt-get-Cache keine Ergebnisse für die Zeichenfolge liefert certutil . Ich weiß, dass der Server des OP CentOS ist, aber es ist möglich, dass andere Ubuntu Server-Administratoren diese Frage ebenfalls hilfreich finden. - dotancohen
Meine Antwort war rein Windows basierend. Ich kenne keine * nix Implementierung davon. Sehen Hier für eine mögliche * nix Lösung - MichelZ
@dotancohen Während dieses Programm auch aufgerufen wird certutilEs ist nicht das gleiche Programm wie certutil.exe unter Windows und wird nicht auf die gleiche Weise verwendet. - Dan Getz


Sie können dies verwenden SSLLabs-Dienst SSL-Zertifikate zu testen, aber Sie benötigen sie für den Zugriff aus dem Internet. Darüber hinaus können Sie weitere Informationen erhalten, da dieser Dienst eine Überprüfung bietet.


1
2018-04-23 14:53



Dies erfordert, dass der Server mit dem alten Zertifikat ausgeführt wird. Aber nachdem ich meine Zertifikate neu erstellt habe, habe ich nur die .crt-Datei des alten Zertifikats. - sridhar pandurangiah


Wenn Sie die Zertifikate über die Zertifizierungsstelle, die sie generiert hat, widerrufen haben, hätten sie es in OCSP und CRLs geschafft.

Wenn Sie sicherstellen möchten, dass dies der Fall ist, extrahieren Sie bitte die OCSP-URL aus dem Zertifikat und erstellen Sie dann eine OCSP-Anfrage an diese URL einschließlich der Seriennummer des Zertifikats, das CA-Aussteller-Zertifikat und rufen Sie die OCSP-Antwort und dann könnte Analysiere es, um zu überprüfen und zu bestätigen, dass es tatsächlich widerrufen wurde.

Mehr Details auf dieser nützlichen Seite: http://backreference.org/2010/05/09/ocsp-verification-with-openssl/

Hinweis: Dies erfordert die Verwendung der OpenSSL-Bibliothek.

Edit1: Ich sehe, dass Sie nach dieser Antwort Informationen zu OCSP und CRL explizit hinzugefügt haben.


1
2018-06-08 04:50