Probleme mit TLS-Verbindungen bei StartSSL-Zertifikaten
Tagged as DE · net · tls · ocsp
Written on
Ich greife mit zwei E-Mail-Programmen auf meinen Mailaccount zu. Das eine ist mutt, das andere ist Thunderbird. Während ich mit mutt keine Probleme habe, kann ich seit zwei Tagen mit Thunderbird nicht mehr auf mein E-Mail-Konto zugreifen.
Wenn ich es probiere, dann sehe ich Thunderbird für etwa 20 Sekunden versuchen eine Verbindung mit dem Mailserver aufzubauen. Nach diesen 20 Sekunden stellt sich Thunderbird wieder so als hätte es nicht versucht E-Mails abzufragen. Es kommt also auch keine Fehlermeldung oder dergleichen.
Da ich meinen Mailserver selbst betreibe, habe ich auch die Gelegenheit in dessen Logfile zu schreiben. Besonders aussagekräftig ist der Eintrag dort allerdings auch nicht:
Jul 11 22:30:24 eder imapd: couriertls: read: error:14094412:SSL routines:SSL3_READ_BYTES:sslv3 alert bad certificate
Das heißt so viel wie „der Client hat uns gesagt, dass er unser Zertifikat nicht akzeptiert, mehr weiß ich auch nicht“.
Ich habe eine ganze Zeit gesucht an was es liegen könnte, dass mein Thunderbird das Zertifikat des Mailservers nicht mehr akzeptiert. Des Rätsels Lösung ist, dass ich Thunderbird so eingestellt habe, dass er jedes Zertifikat bei der jeweiligen Zertifizierungsstelle (in meinem Fall StartSSL) überprüft, ob es inzwischen zurückgezogen wurde. Hierzu gibt es das Protokoll OCSP (Online Certificate Status Protocol).
OCSP-Einstellungen von Thunderbird. Zu erreichen über Einstellungen > Erweitert > Zertifikate > Validierung
Hier liegt auch das aktuelle Problem: StartSSL scheint aktuell nicht in der Lage zu sein OCSP-Anfragen zu beantworten. Und eine weitere Einstellung in meinem Thunderbird sagt diesem: „Wenn eine OCSP-Server-Verbindung fehlschlägt, das Zertifikat als ungültig betrachten“. Soweit ich weiß, ist diese Einstellung per Default in den Mozilla-Produkten ausgeschaltet. Ich halte dies jedoch für keine gute Idee, da auf diesem Weg von einem Angreifer sehr einfach eine Überprüfung eines ggf. gestohlenen Zertifikates über OCSP verhindert werden kann. Er müsste nur dafür sorgen, dass kein Connect zum Zertifikatsherausgeber mehr gelingt. Diese Einstellung abzusichern ist bei der Konfiguration von Thunderbird also immer eines der ersten Dinge die ich mache.
Auch jetzt habe ich mich dazu entschlossen, dass ich diese Einstellung in meinem Mailprogramm nicht lockere sondern stattdessen besser vorübergehend auf den Einsatz von Thunderbird verzichte und all meine E-Mails mit mutt lese. Man könnte zwar nun sagen, dass dieser aktuell ja auch nur funktioniert, da er keiene OCSP-Überprüfung durchführt. Allerdings läuft mein mutt auf dem gleichen Server wie auch mein Mailserver. Da aller Traffic nur über das loopback-Device läuft habe ich hier geringere Sorgen auf diesem Weg angegriffen zu werden. Wenn jemand in der Lage ist diese IP-Pakete zu modifizieren, dann hat er solchen Zugriff auf den Server, dass er sich diese Mühen nicht mehr machen muss. Er verfügt dann ohnehin über mehr Möglichkeiten.
Was man an der ganzen Erfahrung eigentlich am Meisten enttäuscht ist, dass mir Thunderbird keine Fehlermeldung ausgibt. Ein Hinweis, dass die OCSP-Abfrage beim Herausgeber des Zertifikates nicht möglich war und er das Zertifikat des Servers deswegen ablehnt, hätte mir viel Problemsuche erspart. Oder zumindest nur eine Ausgabe, dass das Zertifikat ungültig sei, hätte mir zumindest die Suche nach dem Grund dafür erleichtert. Ich habe einen Bug hierzu bei Thunderbird aufgemacht. Vielleicht baut ja jemand eine entsprechende Fehlermeldung in zukünftige Versionen ein.
Mein Dank geht übrigens an Milan Berger, er hat mich mit seinem Blogpost OCSP, StartSSL und Performanceeinbußen auf den richtigen Weg gebracht die Ursache zu finden.
Nachtrag 12. Juli 2012, 10:00
Aktuell scheint der OCSP-Responder von StartSSL wieder zu funktionieren. Thunderbird akzeptiert das Zertifikat meines Mailservers wieder.