Auch Clients sind von Heartbleed betroffen!

Bei den Diskussionen über Heartbleed fällt häufig die Tatsache unter dem Tisch, das nicht nur Server betroffen sind, sondern auch bei Clients das Exploit verwendet werden kann, um Remote 64 KiB aus dem Speicher zu lesen. Hinzu kommt die Erkenntnis, das hierfür nicht mal ein Zertifikat bei der Gegenstelle vorhanden sein muss, da Heartbeats in betroffenen OpenSSL Versionen bereits vor dem Austausch von Zertifikaten oder Schlüsseln akzeptiert werden.

Die Vorgehensweise ist recht simpel:

  1. Auf das ClientHello mit der TLS Version und der Cipher Suite warten
  2. Senden des ServerHello mit der gleichen TLS Version und Cipher Suite (um Handshake Fehler zu vermeiden)
  3. Ab diesem Zeitpunkt können vom vermeintlichen Server beliebig viele Heartbeats gesendet werden

Für gewöhnliche Web-Anwendungen ist dieses Proof of Concept uninteressant, dennoch bietet es bei clientseitigen Zertifikaten ein Angriffsszenario an – beispielsweise bei OpenVPN Clients ist hiermit eine Man in the Middle Attacke denkbar, um den privaten Schlüssel eines Clients zu erbeuten.

Zur Demonstration hat Peter Wu hierzu das Proof of Concept pacemaker veröffentlicht und stelle die Ergebnisse gerne vor.

„Auch Clients sind von Heartbleed betroffen!“ weiterlesen

Bin ich gegenüber den Heartbleed-Bug verwundbar?

Zur Zeit wird viel über den Heartbleed-Bug (CVE-2014-0160) in OpenSSL diskutiert. Betroffen sind die Versionen 1.0.1 bis 1.0.1f.  Scheinbar ist dieser Bug einer der gravierendsten seit langem. Ein Angreifer kann über das Internet 64KB des Arbeitsspeichers eines entfernten Systems auslesen, dessen Verbindung mit der betroffenen OpenSSL Version abgesichert ist.

So kann zunächst der private Key des Systems ausgelesen werden, womit es möglich wird, jeglichen Datenverkehr zu entschlüsseln. So können laufende Verbindungen ausgelesen werden, aber auch Datenverkehr, der in der Vergangenheit abgefangen wurde. Passwörter oder weitere sensible Daten können so ohne Probleme erspäht werden.

Ich habe hier eine kurze Anleitung zusammengeschrieben, mit dessen Hilfe ein Server auf diese Verwundbarkeit überprüft werden kann. Basis ist hierbei das Script von Filippo Valsorda.

„Bin ich gegenüber den Heartbleed-Bug verwundbar?“ weiterlesen