Abo
  • IT-Karriere:

OpenSSL-Lücke: Die Sache mit den sicheren Primzahlen

OpenSSL hat mit einem Sicherheitsupdate eine Sicherheitslücke im Diffie-Hellman-Schlüsselaustausch behoben, deren Risiko als "hoch" eingestuft wird. Allerdings dürfte kaum jemand von der Lücke praktisch betroffen sein.

Artikel veröffentlicht am , Hanno Böck
Beim Schlüsselaustausch mit dem Diffie-Hellman-Verfahren wurde ein Problem in OpenSSL entdeckt.
Beim Schlüsselaustausch mit dem Diffie-Hellman-Verfahren wurde ein Problem in OpenSSL entdeckt. (Bild: PMRMaeyaert/Wikimedia Commons/CC-BY-SA 3.0)

Auch wenn die Auswirkungen begrenzt sein dürften: Eine neu entdeckte Sicherheitslücke in OpenSSL zeigt erneut, welche Fallstricke es bei der Implementierung des Diffie-Hellman-Schlüsselaustauschverfahrens gibt. Eine Rolle spielen dabei sogenannte "sichere" Primzahlen und die Wiederverwendung von Ephemeral-Diffie-Hellman-Keys über mehrere Verbindungen. Eine weitere Sicherheitslücke erlaubt unter bestimmten Umständen die Nutzung von Uralt-Ciphern aus dem SSL-Protokoll Version 2.

Stellenmarkt
  1. Enerthing GmbH, Leverkusen
  2. MVV Umwelt Asset GmbH, Mannheim

OpenSSL hat die Versionen 1.0.1r und 1.0.2f veröffentlicht. Die älteren Versionszweige 0.9.8 und 1.0.0 werden seit kurzem nicht mehr unterstützt.

Safe Primes und Sophie-Germain-Primzahlen

Der Diffie-Hellman-Schlüsselaustausch benötigt als Parameter für Verbindungen eine Primzahl. Für diese Primzahl wird üblicherweise eine sogenannte "safe Prime" ("sichere Primzahl") eingesetzt. Doch der Name ist missverständlich, denn es gibt auch andere Primzahlen, die in sicherer Art und Weise verwendet werden können. Dabei muss man allerdings einiges beachten.

Diese "safe Primes" zeichnen sich dadurch aus, dass es zu einer Primzahl p eine weitere Primzahl gibt, die man durch die Formel (p-1)/2 berechnen kann. Diese weitere Primzahl nennt sich Sophie-Germain-Primzahl. Ob eine Primzahl eine "safe Prime" ist, lässt sich so relativ einfach testen.

OpenSSL 1.0.2 nutzte standardmäßig jedoch keine Primzahlen dieser Form, es verwendete Primzahlen aus dem RFC 5114, die andere Eigenschaften haben. Diese Primzahlen können eine höhere Performance bieten, allerdings muss man dabei eine Sache beachten: Mit demselben Schlüssel darf jeweils nur ein Schlüsselaustausch durchgeführt werden, andernfalls ist ein Angriff möglich. Auch ältere Versionen von OpenSSL unterstützen bereits die Erzeugung von anfälligen Diffie-Hellman-Primzahlen mit dem Parameter -dsaparam.

Mehrfach verwendete Ephemeral-Keys

Hier wird nun eine andere Eigenschaft von OpenSSL zum Verhängnis: Die Ephemeral-Keys beim Diffie-Hellman-Schlüsselaustausch werden - zumindest standardmäßig - mehrfach verwendet. Doch man kann dieses Wiederverwenden von Ephemeral-Keys abschalten, dafür hat OpenSSL die Option SSL_OP_SINGLE_DH_USE. Diese Option ist auch der Grund, weshalb die Auswirkungen der Lücke begrenzt sein dürften: Alle wichtigen Serveranwendungen, darunter etwa Apache und Nginx, haben diese Option bereits gesetzt.

Entdeckt wurde die Lücke von Antonio Sanso, einem Sicherheitsforscher von Adobe. In seinem Blog hat Sansodie Details und auch den möglichen Angriff erläutert. Die Lücke hat die Id CVE-2015-1788 erhalten.

Neben den wiederverwendeten Ephemeral-Keys gibt es eine weitere Situation, in der die Lücke problematisch sein kann: beim statischen Diffie-Hellman-Verfahren. Das verwendet allerdings sowieso fast niemand und es ist auch eher nicht empfehlenswert, auf dieses ungewöhnliche Verfahren zu setzen. Im vergangenen Jahr sorgte bereits der sogenannte KCI-Angriff für Zweifel an diesen Ciphern.

Das problematische Wiederverwenden von Ephemeral-Keys hat OpenSSL nun deaktiviert. Die Option SSL_OP_SINGLE_DH_USE ist standardmäßig gesetzt und lässt sich auch nicht mehr ausschalten. Das sorgt für geringe Performanceeinbußen, vermeidet jedoch einige Risiken. Beim Diffie-Hellman-Verfahren mit elliptischen Kurven wird der Ephemeral-Key jedoch weiterhin wiederverwendet. Allerdings gilt auch hier: Fast alle wichtigen Serveranwendungen deaktivieren diese Funktion.

Da sich der Einsatz der sogenannten "safe Primes" leicht testen lässt, hat der Autor dieses Textes bereits vor einiger Zeit ein Skript erstellt, mit dem sich Server testen lassen. Dazu sei allerdings nochmal betont: Wenn ein Server keine "safe Prime" einsetzt, heißt das noch nicht, dass eine Sicherheitslücke besteht. Nur die Kombination aus einer anderen Primzahl und dem Cachen von Ephemeral-Keys ist ein Risiko.

SSLv2-Cipher können trotz Abschaltung aktiv bleiben

Die zweite Lücke, die mit diesem Update behoben wird, betrifft das uralte SSL Version 2. Schaltet ein Server alle Cipher-Suites für dieses alte Verfahren aus, vergisst jedoch, auch das zugehörige Protokoll auszuschalten, sind weiterhin Verbindungen mit diesen Cipher-Suites möglich. Diese Lücke hat die Id CVE-2015-3197 erhalten und wurde von Nimrod Aviram und Sebastian Schinzel entdeckt. In fast allen modernen Anwendungen ist SSL Version 2 sowieso ausgeschaltet. Selbst wenn ein Server von dieser Lücke betroffen ist, dürften die Auswirkungen begrenzt sein: Kaum eine Software kann sich damit noch verbinden.



Anzeige
Spiele-Angebote
  1. 4,31€
  2. 4,99€
  3. 149,99€ (Release noch nicht bekannt)
  4. 3,99€

bstea 29. Jan 2016

Falls die Frage aufkommen sollte, ja Libressl ist auch betroffen. 2.2.6 wird mit dem...

Nibbels 29. Jan 2016

Also... ich persönlich bin froh, dass die Bugs, welche man in den letzten Jahren gefunden...

mnementh 29. Jan 2016

(59-1)/2=29 Der Artikel sagte ziemlich klar, dass p eine safe prime ist, wenn man durch...


Folgen Sie uns
       


Google Game Builder ausprobiert

Mit dem Game Builder von Google können Anwender kleine, aber durchaus komplexe Spiele entwickeln. Der Editor richtet sich an neugierige Einsteiger, aber auch an professionelle Entwickler etwa für das Prototyping.

Google Game Builder ausprobiert Video aufrufen
Harmony OS: Die große Luftnummer von Huawei
Harmony OS
Die große Luftnummer von Huawei

Mit viel Medienaufmerksamkeit und großen Versprechungen hat Huawei sein eigenes Betriebssystem Harmony OS vorgestellt. Bei einer näheren Betrachtung bleibt von dem großen Wurf allerdings kaum etwas übrig.
Ein IMHO von Sebastian Grüner


    Smarte Wecker im Test: Unter den Blinden ist der Einäugige König
    Smarte Wecker im Test
    Unter den Blinden ist der Einäugige König

    Einen guten smarten Wecker zu bauen, ist offenbar gar nicht so einfach. Bei Amazons Echo Show 5 und Lenovos Smart Clock fehlen uns viele Basisfunktionen. Dafür ist einer der beiden ein besonders preisgünstiges und leistungsfähiges smartes Display.
    Ein Test von Ingo Pakalski

    1. Nest Hub im Test Google vermasselt es 1A

    Zephyrus G GA502 im Test: Das Gaming-Notebook, das auch zum Arbeiten taugt
    Zephyrus G GA502 im Test
    Das Gaming-Notebook, das auch zum Arbeiten taugt

    Mit AMDs Ryzen 7 und Nvidia-GPU ist das Zephyrus G GA502 ein klares Gaming-Gerät. Überraschenderweise eignet es sich aber auch als mobiles Office-Notebook. Das liegt an der beeindruckenden Akkulaufzeit.
    Ein Test von Oliver Nickel

    1. Vivobook (X403) Asus packt 72-Wh-Akku in günstigen 14-Zöller
    2. ROG Swift PG35VQ Asus' 35-Zoll-Display nutzt 200 Hz, HDR und G-Sync
    3. ROG Gaming Phone II Asus plant neue Version seines Gaming-Smartphones

      •  /