Der Fehler ist als Heartbleed bekannt .
Bin ich verletzlich?
Im Allgemeinen sind Sie betroffen, wenn Sie einen Server ausführen, für den Sie irgendwann einen SSL-Schlüssel generiert haben. Die meisten Endbenutzer sind nicht (direkt) betroffen. Zumindest Firefox und Chrome verwenden kein OpenSSL. SSH ist nicht betroffen. Die Verteilung von Ubuntu-Paketen ist nicht betroffen (sie basiert auf GPG-Signaturen).
Sie sind anfällig, wenn Sie einen Server mit den OpenSSL-Versionen 1.0–1.0.1f ausführen (außer natürlich Versionen, die seit dem Erkennen des Fehlers gepatcht wurden). Die betroffenen Ubuntu-Versionen sind vertrauenswürdige Vorabversionen von 11.10 Oneiric bis 14.04. Es ist ein Implementierungsfehler, kein Fehler im Protokoll, daher sind nur Programme betroffen, die die OpenSSL-Bibliothek verwenden. Wenn Sie ein Programm haben, das mit der alten Version 0.9.x von OpenSSL verknüpft ist, ist dies nicht betroffen. Es sind nur Programme betroffen, die die OpenSSL-Bibliothek zum Implementieren des SSL-Protokolls verwenden. Programme, die OpenSSL für andere Zwecke verwenden, sind nicht betroffen.
Wenn Sie einen anfälligen Server ausgeführt haben, der dem Internet ausgesetzt ist, sollten Sie ihn als gefährdet betrachten, es sei denn, in Ihren Protokollen wird seit der Ankündigung am 07.04.2014 keine Verbindung angezeigt. (Dies setzt voraus, dass die Sicherheitsanfälligkeit vor ihrer Bekanntgabe nicht ausgenutzt wurde.) Wenn Ihr Server nur intern verfügbar gemacht wurde, hängt es von den anderen Sicherheitsmaßnahmen ab, ob Sie die Schlüssel ändern müssen.
Was ist die Auswirkung?
Der Fehler ermöglicht es jedem Client, der eine Verbindung zu Ihrem SSL-Server herstellen kann, ungefähr 64 KB Speicher vom Server abzurufen. Der Client muss in keiner Weise authentifiziert werden. Durch Wiederholen des Angriffs kann der Client in aufeinanderfolgenden Versuchen verschiedene Teile des Speichers sichern.
Einer der kritischen Datenbestandteile, die der Angreifer möglicherweise abrufen kann, ist der private SSL-Schlüssel des Servers. Mit diesen Daten kann sich der Angreifer als Ihr Server ausgeben.
Wie kann ich auf einem Server wiederherstellen?
Schalten Sie alle betroffenen Server offline. Solange sie ausgeführt werden, können wichtige Daten verloren gehen.
Aktualisieren Sie das libssl1.0.0
Paket , und stellen Sie sicher, dass alle betroffenen Server neu gestartet werden.
Sie können mit grep libssl überprüfen, ob die betroffenen Prozesse noch ausgeführt werden. (gestrichen) "/ proc / / maps"
Generieren Sie neue Schlüssel . Dies ist erforderlich, da der Fehler möglicherweise einem Angreifer ermöglicht hat, den alten privaten Schlüssel abzurufen. Gehen Sie genauso vor, wie Sie es ursprünglich getan haben.
- Wenn Sie von einer Zertifizierungsstelle signierte Zertifikate verwenden, senden Sie Ihre neuen öffentlichen Schlüssel an Ihre Zertifizierungsstelle. Wenn Sie das neue Zertifikat erhalten, installieren Sie es auf Ihrem Server.
- Wenn Sie selbstsignierte Zertifikate verwenden, installieren Sie diese auf Ihrem Server.
- Bewegen Sie in jedem Fall die alten Schlüssel und Zertifikate aus dem Weg (aber löschen Sie sie nicht, stellen Sie nur sicher, dass sie nicht mehr verwendet werden).
Jetzt, da Sie neue, kompromisslose Schlüssel haben, können Sie Ihren Server wieder online schalten .
Sperren Sie die alten Zertifikate.
Schadensbewertung : Alle Daten, die sich im Speicher eines Prozesses befanden, der SSL-Verbindungen bedient, sind möglicherweise durchgesickert. Dies kann Benutzerkennwörter und andere vertrauliche Daten umfassen. Sie müssen auswerten, wie diese Daten gewesen sein könnten.
- Wenn Sie einen Dienst ausführen, der die Kennwortauthentifizierung ermöglicht, sollten die Kennwörter von Benutzern, die sich kurz vor Bekanntgabe der Sicherheitsanfälligkeit angemeldet haben, als gefährdet eingestuft werden. (Kurz zuvor, da das Kennwort möglicherweise eine Weile nicht verwendet wurde.) Überprüfen Sie Ihre Protokolle und ändern Sie die Kennwörter aller betroffenen Benutzer.
- Deaktivieren Sie auch alle Sitzungscookies, da diese möglicherweise kompromittiert wurden.
- Client-Zertifikate werden nicht gefährdet.
- Alle Daten, die kurz vor der Sicherheitsanfälligkeit ausgetauscht wurden, befinden sich möglicherweise noch im Speicher des Servers und wurden möglicherweise an einen Angreifer weitergegeben.
- Wenn jemand eine alte SSL-Verbindung aufgezeichnet und die Schlüssel Ihres Servers abgerufen hat, kann er jetzt sein Transkript entschlüsseln. (Es sei denn, PFS wurde sichergestellt - wenn Sie nicht wissen, war es nicht.)
Wie kann ich auf einem Client wiederherstellen?
Es gibt nur wenige Situationen, in denen Clientanwendungen betroffen sind. Das Problem auf der Serverseite ist, dass jeder eine Verbindung zu einem Server herstellen und den Fehler ausnutzen kann. Um einen Client auszunutzen, müssen drei Bedingungen erfüllt sein:
- Das Client-Programm verwendete eine fehlerhafte Version der OpenSSL-Bibliothek, um das SSL-Protokoll zu implementieren.
- Der Client ist mit einem böswilligen Server verbunden. (Wenn Sie beispielsweise eine Verbindung zu einem E-Mail-Anbieter hergestellt haben, ist dies kein Problem.) Dies musste geschehen, nachdem der Serverbesitzer von der Sicherheitsanfälligkeit Kenntnis erlangt hatte, also vermutlich nach dem 07.04.2014.
- Der Client-Prozess hatte vertrauliche Daten im Speicher, die nicht mit dem Server geteilt wurden. (Wenn Sie gerade
wget
eine Datei heruntergeladen haben, gab es keine Daten zu verlieren.)
Wenn Sie dies zwischen dem 07.04.2014 (UTC) und dem Upgrade Ihrer OpenSSL-Bibliothek getan haben, sollten Sie alle Daten, die sich im Speicher des Client-Prozesses befanden, als gefährdet betrachten.
Verweise