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 Hanno Böck 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.

Stellenmarkt
  1. Discover Trainee (m/w/d) eCommerce
    Vodafone GmbH, Düsseldorf
  2. Graduate Research Assistant (m/f/d) in the Research Group CAROLL
    Universität Passau, Passau
Detailsuche

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.

Golem Akademie
  1. Linux-Systeme absichern und härten
    8.-10. November 2021, online
  2. Penetration Testing Fundamentals
    23.-24. September 2021, online
  3. Microsoft 365 Security Workshop
    27.-29. Oktober 2021, Online
Weitere IT-Trainings

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.

Truster 13. Jul 2017

In solchen Fällen _kann_ SELinux helfen. Meie OpenVPN Zertifikate samt schlüssel müssen...



Aktuell auf der Startseite von Golem.de
Bundestagswahl
Bitte nicht in Jamaika landen!

Ampel oder Jamaika: Grüne und FDP müssen sich nach der Bundestagswahl für eine der beiden Koalitionsoptionen entscheiden. Das sollte ihnen leichtfallen.
Ein IMHO von Friedhelm Greis

Bundestagswahl: Bitte nicht in Jamaika landen!
Artikel
  1. Chrome: Google soll Probleme mit Inkognito-Modus ignoriert haben
    Chrome
    Google soll Probleme mit Inkognito-Modus ignoriert haben

    Google verfolgt Chrome-Nutzer angeblich auch im Inkognito-Modus. Gerichtsdokumente zeigen, dass Google die Probleme offenbar bewusst waren.

  2. Bluetooth-Lautsprecher LSPX-S3 im Test: Sonys Glaskolben-Lampe rockt
    Bluetooth-Lautsprecher LSPX-S3 im Test
    Sonys Glaskolben-Lampe rockt

    Sonys neuer Bluetooth-Lautsprecher unterstützt Musik mit stimmungsvoller Beleuchtung - ein ungewöhnliches Gerät mit nur wenigen Schwächen.
    Ein Test von Ingo Pakalski

  3. Aufbauspiel: Anno 1800 macht die Fußgängerzonen schön
    Aufbauspiel
    Anno 1800 macht die Fußgängerzonen schön

    Kanalsysteme und Seen: Eine kommende Erweiterung für Anno 1800 hübscht die Städte auf. Spielerische Auswirkungen hat der Kaufinhalt nicht.

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 • 7 Tage Samsung-Angebote bei Amazon (u. a. SSDs, Monitore, TVs) • Samsung G5 32" Curved WQHD 144Hz 265€ • Räumungsverkauf bei MediaMarkt • Nur noch heute: Black Week bei NBB • Acer Nitro 23,8" FHD 165Hz 184,90€ • Alternate (u. a. Cooler Master Gaming-Headset 59,90€) [Werbung]
    •  /