HTTPS: Private Schlüssel auf dem Webserver

Zu einem Zertifikat für verschlüsselte HTTPS-Verbindungen gehört ein privater Schlüssel. Doch was, wenn der Schlüssel auf dem Webserver landet - und dann nicht mehr privat ist? Wir fanden zahlreiche Webseiten, die ihren privaten Schlüssel zum Herunterladen anbieten.

Artikel von veröffentlicht am
Private Schlüssel auf dem Webserver liegen lassen - das ist keine gute Idee.
Private Schlüssel auf dem Webserver liegen lassen - das ist keine gute Idee. (Bild: Hanno Böck)

This text is also available in English.

Kunden des Webmail-Anbieters Firemail wurden vor einigen Tagen mit einer Fehlermeldung überrascht: Das Zertifikat für die Webseite firemail.de war ungültig. Comodo hatte es zurückgezogen, nachdem wir bei unseren Recherchen darauf gestoßen sind, dass der zugehörige private Schlüssel einfach von der Seite heruntergeladen werden konnte.

Firemail war mit diesem Problem nicht alleine. Wir fanden eine ganze Reihe von Seiten, bei denen die privaten Schlüssel nicht mehr privat waren und versehentlich über den Webserver veröffentlicht wurden. Insgesamt gelangten wir in den Besitz von privaten Schlüsseln für 90 gültige Webseitenzertifikate. Dafür haben wir lediglich versucht, den privaten Schlüssel mit gängigen Dateinamen herunterzuladen. Im Fall von Firemail lautete der Dateiname "server.key".

Dateinamen aus beliebten Web-Anleitungen

Auch privatekey.key, myserver.key und key.pem waren Dateinamen, mit denen private Schlüssel auf Webseiten abgelegt waren. Am erfolgreichsten verlief die Suche aber nach Dateinamen mit dem Schema [domainname].key. Alle diese Dateinamen werden in Anleitungen zur Zertifikatserstellung verwendet, die man über eine einfache Google-Suche finden kann.

Zu jedem Webseitenzertifikat gehört ein privater Schlüssel. Aber wie der Name schon sagt - dieser Schlüssel muss natürlich privat bleiben und darf auf keinen Fall Unbefugten in die Hände fallen. Andernfalls ist die Sicherheit, die HTTPS-geschützte Verbindungen bieten, dahin. Ein Angreifer kann mithilfe des privaten Schlüssels einen Man-in-the-Middle-Angriff durchführen und dabei Daten mitlesen und manipulieren.

Wenn eine Zertifizierungsstelle von einem kompromittierten Zertifikat erfährt, dann sollte sie dieses zurückziehen. Ob ein Zertifikat zurückgezogen ("revoked") wurde, kann man mittels des OCSP-Protokolls prüfen.

Der Nutzen des OCSP-Protokolls ist umstritten. Browser hatten OCSP in der Vergangenheit in einem sogenannten Soft-Fail-Modus implementiert. Falls der OCSP-Server nicht erreichbar war, wurde das Zertifikat trotzdem als gültig anerkannt. Da dies kaum Sicherheit bietet, hat sich Chrome entschlossen, die OCSP-Checks ganz abzuschalten. Abhilfe schaffen könnte eine Kombination aus OCSP Stapling und der Must-Staple-Erweiterung in Zertifikaten, allerdings ist die Unterstützung von OCSP Stapling in gängigen Webservern bisher nur rudimentär vorhanden.

Doch obwohl OCSP bislang nur eingeschränkt funktioniert, ist es bislang der gängige Mechanismus, mit dem eine Zertifizierungsstelle ein Zertifikat als ungültig markieren kann.

24 Stunden Frist für kompromittierte Zertifikate

Laut den Baseline Requirements - einem Regelwerk, auf das sich Zertifizierungsstellen und Browserhersteller geeinigt haben - sollten Zertifizierungsstellen im Falle kompromittierter Schlüssel ein Zertifikat innerhalb von 24 Stunden zurückziehen.

Wir haben alle Zertifikate, zu denen wir private Schlüssel gefunden haben, an die entsprechenden Zertifizierungsstellen gemeldet. In den meisten Fällen geht dies schlicht per E-Mail. Lediglich Symantec und dessen Tochterfirmen sowie Gandi haben ein Webformular für die Meldungen. Bei Symantec musste man auch ein Captcha vor dem Absenden des Formulars ausfüllen.

Eine Besonderheit gibt es bei Let's Encrypt: Die kostenlose Zertifizierungsstelle setzt bekanntlich besonders stark auf Automatisierung und nutzt das ACME-Protokoll. Auch das Zurückziehen von Zertifikaten ist automatisiert: Wer im Besitz eines privaten Schlüssels zu einem Zertifikat ist kann dieses selbst zurückziehen, beispielsweise mit dem Tool Certbot.

Mozilla hat sich kürzlich ebenfalls mit der Frage befasst, wen man im Fall kompromittierter Zertifikate kontaktiert. Im Rahmen der regelmäßig an Zertifizierungsstellen verschickten CA Communications fragte Mozilla diese, wie man solche Probleme am besten meldet. Eine Liste der Antworten ist online verfügbar.

Die 24-Stunden-Frist scheinen viele Zertifizierungsstellen bislang nicht sehr ernst zu nehmen. Bei fast allen betroffenen Zertifizierungsstellen - Comodo, DigiCert, Gandi, Globalsign, Go Daddy und Symantec - dauerten die Reaktionen manchmal länger als 24 Stunden. Fairerweise sei dazu gesagt: In einem Fall meldeten wir die kompromittierten Zertifikate an einem Samstag. Allerdings sehen die Baseline Requirements keine Wochenendausnahme vor. Neben Let's Encrypt hat lediglich StartCom immer innerhalb der 24-Stunden-Frist reagiert. Allerdings wird StartCom zur Zeit sowieso von gängigen Browsern nicht akzeptiert.

Besonders viel Zeit ließen sich Gandi und Globalsign. Globalsign brauchte vier Tage, um ein gemeldetes Zertifikat zurückzuziehen. Gandi betreibt seine Zertifizierungsstelle nicht selbst, es handelt sich um eine von Comodo betriebene Zertifizierungsstelle. Als Comodo von dem Vorfall erfuhr, wurden die Zertifikate umgehend zurückgezogen.

Neues Zertifikat mit altem Schlüssel

Einen besonders kuriosen Fall gab es bei einem Comodo-Zertifikat: Zwar zog Comodo das Zertifikat nach kurzer Zeit zurück, allerdings wurde kurz darauf ein neues Zertifikat mit demselben privaten Schlüssel erstellt. Als wir dies an Comodo gemeldet haben, teilte man uns mit, dass dasselbe bei einem weiteren Zertifikat passiert war. In beiden Fällen hat Comodo das erneut ausgestellte Zertifikat ebenfalls zurückgezogen.

Dieser Vorfall zeigt einmal mehr, dass Daten auf Webservern ein bislang unterschätztes Sicherheitsrisiko darstellen. Vor Kurzem hatten wir berichtet, dass die Deutsche Post und zahlreiche andere Firmen private Kundendaten in Form von SQL-Dumps auf ihren Webservern verfügbar machten. Auch Git-Repositories in Webverzeichnissen führen immer wieder dazu, dass geheime Daten wie Passwörter öffentlich abrufbar sind.

Auch an anderen Stellen wurden zuletzt private Schlüssel zu gültigen Zertifikaten gefunden. Der Softwareentwickler Koen Rouwhorst fand kürzlich einen privaten Schlüssel, der in einer Applikation von Cisco integriert war. Auch in einer Spotify-Software tauchte ein solcher Schlüssel auf. Weiterhin fand Rouwhorst zahlreiche private Schlüssel in Github-Repositories.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


rondam 03. Aug 2017

Sorry, aber wer keys (und dann wohl auch die certs) im docroot seines webservers ablegt...

Anonymer Nutzer 13. Jul 2017

Ich gehe mal von aus du meinst die Situation bei Webhostern? Da habe ich schon lange...

Anonymer Nutzer 13. Jul 2017

es ist aber billiger. und das reicht schon, damit es so gemacht wird. außerdem verhindert...

Truster 13. Jul 2017

ich meine /etc/ssl/... bei den meißten Linux Distris.



Aktuell auf der Startseite von Golem.de
Quellcode auf Github
MS-DOS 4.00 ist jetzt Open Source

Nachdem der ehemalige CTO eine alte MS-DOS-Floppy entdeckt hat, veröffentlicht Microsoft ein Stück Betriebssystem-Geschichte.

Quellcode auf Github: MS-DOS 4.00 ist jetzt Open Source
Artikel
  1. Startrampe Set: Lego bietet Milchstraße und Nasa-Rakete Artemis als Bausatz
    Startrampe Set
    Lego bietet Milchstraße und Nasa-Rakete Artemis als Bausatz

    Lego hat zwei neue Sets vorgestellt, die für Weltraumenthusiasten gedacht sind: das Nasa-Artemis-Startrampen-Set und das Milchstraßen-Galaxie-Set.

  2. Tarifrunde: Montag erneut Streiktag bei der Deutschen Telekom
    Tarifrunde
    Montag erneut Streiktag bei der Deutschen Telekom

    Beim letzten Warnstreik bei der Telekom waren 12.500 Beschäftigte beteiligt. Diesmal wird breiter mobilisiert. Die Telekom versucht Schadensbegrenzung.

  3. Auszieh-Apps: Apple entfernt KI-Nudify-Apps aus dem App Store
    Auszieh-Apps
    Apple entfernt KI-Nudify-Apps aus dem App Store

    Apps, die Personen per KI ungefragt digital ausziehen, sind beliebt. Nun entfernt Apple einige dieser Anwendungen aus dem App Store - aber erst nach Hinweisen von Journalisten.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Asus OLED-Monitor zum Tiefstpreis • Gigabyte GeForce RTX 4070 Ti im Sale • MediaMarkt: Asus Gaming-Laptop 999€ statt 1.599€ • Gamesplanet Spring Sale [Werbung]
    •  /