Schwachstellen in der WPA3-Sicherheits technologie und in EAP-pwd

Mathy Vanhoef, der Autor des KRACK-Angriffs auf drahtlose Netzwerke mit WPA2, und Eyal Ronen, Mitautor einiger Angriffe auf TLS, haben Informationen über sechs Schwachstellen (CVE-2019-9494 bis CVE-2019-9499) in der Schutztechnologie WPA3 für drahtlose Netzwerke offenbart, die es ermöglichen, das Anschlusskennwort zu rekonstruieren und ohne Kenntnis des Passworts auf das drahtlose Netzwerk zuzugreifen. Die Schwachstellen sind unter dem Code-Namen Dragonblood zusammengefasst und ermöglichen es, das Dragonfly-Verfahren zur Verbindungshandshakes, das Schutz vor Offline-Passwortangriffen bietet, zu kompromittieren. Neben WPA3 wird das Dragonfly-Verfahren auch zur Abwehr von Wörterbuchangriffen im EAP-pwd-Protokoll verwendet, das in Android, RADIUS-Servern und in hostapd/wpa_supplicant zum Einsatz kommt.

Im Rahmen der Untersuchung wurden zwei Haupttypen von architektonischen Problemen in WPA3 identifiziert. Beide Problemtypen können letztendlich zur Rekonstruktion des Zugangspassworts verwendet werden. Der erste Typ ermöglicht einen Rückschritt auf unsichere kryptografische Verfahren (Downgrade-Angriff): Die Kompatibilitätsmaßnahmen für WPA2 (Transitmodus, der die Verwendung von WPA2 und WPA3 zulässt) ermöglichen es einem Angreifer, den Client dazu zu bringen, den WPA2-Vier-Schritte-Verbindungsprozess durchzuführen, was anschließend traditionelle Passwortangriffe, die auf WPA2 anwendbar sind, ermöglicht. Darüber hinaus wurde auch die Möglichkeit eines Downgrade-Angriffs direkt auf das Dragonfly-Verfahren festgestellt, das es erlaubt, auf weniger geschützte Typen elliptischer Kurven zurückzugreifen.

Der zweite Typ von Problemen führt zu einer Leckage von Informationen über die Merkmale des Passworts über Seiteneffekte und basiert auf den Mängeln des Passwortkodierungsverfahrens in Dragonfly, die es erlauben, durch indirekte Indikatoren wie Verzögerungsänderungen bei der Durchführung von Operationen das ursprüngliche Passwort zu rekonstruieren. Der in Dragonfly verwendete Hash-zu-Kurve-Algorithmus ist anfällig für Angriffe durch Überwachung von Informationen im Prozessor-Cache (Cache-Angriff), während der Hash-zu-Gruppe-Algorithmus anfällig für Angriffe durch Zeitmessungen der Operationen (Timing-Angriff) ist.

Für die Durchführung von Angriffen durch Cache-Analyse muss der Angreifer in der Lage sein, nicht privilegierten Code auf dem System eines Benutzers auszuführen, der sich mit einem drahtlosen Netzwerk verbindet. Beide Methoden ermöglichen es, Informationen zu erhalten, die notwendig sind, um die Genauigkeit der Auswahl von Passworthäuten während des Brute-Force-Vorgangs zu überprüfen. Die Effektivität des Angriffs ist ausreichend hoch und ermöglicht das Knacken eines 8-stelligen Passworts, das Kleinbuchstaben enthält, nachdem lediglich 40 Verbindungs-Aushandlungssitzungen (Handshake) abgefangen wurden, und dabei Ressourcen verwendet wurden, die den Kosten für die Miete von Amazon EC2-Leistungen in Höhe von 125 Dollar entsprechen.

Auf Grundlage der identifizierten Schwachstellen wurden mehrere Angriffszenarien vorgeschlagen:

  • Rollback-Angriff auf WPA2 mit der Möglichkeit des Wörterbuchangriffs. In einer Situation, in der sowohl der Client als auch der Access Point sowohl WPA3 als auch WPA2 unterstützen, kann der Angreifer einen eigenen gefälschten Access Point mit demselben Netzwerknamen einrichten, der nur WPA2 unterstützt. In diesem Fall wird der Client die für WPA2 typische Verbindungsmethode verwenden, während der Aushandlungsprozess läuft, in dessen Verlauf die Unzulässigkeit eines solchen Rollbacks festgestellt wird, jedoch geschieht dies auf einer Stufe, an der die Nachrichten zum Aushandeln des Kanals bereits gesendet wurden und alle für den Wörterbuchangriff erforderlichen Informationen bereits geleakt sind. Eine ähnliche Methode ist auch für Rollbacks auf problematische Versionen elliptischer Kurven im SAE anwendbar.

    Darüber hinaus wurde festgestellt, dass der von Intel entwickelte iwd-Dienst als Alternative zu wpa_supplicant und der Wireless-Stack des Samsung Galaxy S10 anfällig für Downgrade-Angriffe sind, selbst in Netzwerken, die nur WPA3 verwenden – wenn diese Geräte zuvor mit einem WPA3-Netzwerk verbunden waren, versuchen sie, sich mit einem gefälschten WPA2-Netzwerk mit demselben Namen zu verbinden.

  • Angriff über Seitenausgänge zur Gewinnung von Informationen aus dem Prozessor-Cache. Der Passwortcodierungsalgorithmus in Dragonfly enthält bedingte Verzweigungen, und ein Angreifer, der die Möglichkeit hat, Code im System des Benutzers des drahtlosen Netzwerks auszuführen, kann durch die Analyse des Cache-Verhaltens feststellen, welcher Zweig der if-then-else-Expression gewählt wurde. Die gewonnenen Informationen können verwendet werden, um eine schrittweise Brute-Force-Attacke auf das Passwort durchzuführen, unter Verwendung von Methoden, die den Offline-Wörterbuchangriffen auf WPA2-Passwörter ähnlich sind. Zum Schutz wird empfohlen, auf Operationen mit konstanter Ausführungszeit umzusteigen, die nicht vom Charakter der verarbeiteten Daten abhängen;
  • Angriff über Seitenausgänge mit Zeitbewertung der Ausführungsoperationen. Im Dragonfly-Code werden beim Codieren von Passwörtern mehrere multiplikative Gruppen (MODP) und eine variable Anzahl von Iterationen verwendet, deren Anzahl von dem verwendeten Passwort und der MAC-Adresse des Zugangspunkts oder Clients abhängt. Ein entfernter Angreifer kann feststellen, wie viele Iterationen während der Passwortcodierung durchgeführt wurden, und diese als Hinweis bei der schrittweisen Passwortentschlüsselung verwenden.
  • Denial-of-Service-Angriff. Ein Angreifer kann bestimmte Funktionen eines Zugangspunkts aufgrund von Ressourcenerschöpfung durch das Senden einer großen Anzahl von Verbindungsanfragen blockieren. Um den im WPA3 vorgesehenen Schutz vor Flooding zu umgehen, genügt es, Anfragen von gefälschten, nicht wiederholenden MAC-Adressen zu senden.
  • Roll-back auf weniger geschützte kryptografische Gruppen, die im Verbindungsaufbauprozess in WPA3 verwendet werden. Beispielsweise, wenn ein Client die elliptischen Kurven P-521 und P-256 unterstützt und P-521 als bevorzugte Option verwendet, kann der Angreifer, unabhängig von der Unterstützung
    von P-521 auf der Zugangspunktseite, den Client zwingen, P-256 zu verwenden. Der Angriff erfolgt durch das Filtern bestimmter Nachrichten während des Verbindungsaufbaus und das Senden gefälschter Nachrichten mit Informationen über die fehlende Unterstützung bestimmter Typen elliptischer Kurven.

Zur Überprüfung von Geräten auf Schwachstellen wurden mehrere Skripte mit Beispielen für Angriffe vorbereitet:

  • Dragonslayer – Implementierung von Angriffen auf EAP-pwd;
  • Dragondrain — ein Tool zur Überprüfung der Anfälligkeit von Access Points in der Implementierung des Verbindungsaufbauverfahrens SAE (Simultaneous Authentication of Equals), das zur Einleitung eines Denial-of-Service-Angriffs verwendet werden kann;
  • Dragontime — ein Skript zur Durchführung von Angriffe über Seitenkanäle gegen SAE, das die Unterschiede in der Verarbeitungsgeschwindigkeit bei der Verwendung von MODP-Gruppen 22, 23 und 24 berücksichtigt;
  • Dragonforce — ein Tool zur Wiederherstellung von Informationen (Passwortknacken) auf Basis von Daten über unterschiedliche Bearbeitungszeiten von Operationen oder zur Bestimmung der Ablage von Daten im Cache.

Die Wi-Fi Alliance, die Standards für drahtlose Netzwerke entwickelt, hat erklärt, dass das Problem eine begrenzte Anzahl früher Implementierungen von WPA3-Personal betrifft und durch Firmware- und Software-Updates behoben werden kann. Es wurden bisher keine Fälle gemeldet, in denen die Schwachstellen für böswillige Aktionen ausgenutzt wurden. Um die Sicherheit zu erhöhen, hat die Wi-Fi Alliance zusätzliche Tests zur Überprüfung der Richtigkeit von Implementierungen in ihr Zertifizierungsprogramm aufgenommen und sich mit Herstellern in Verbindung gesetzt, um die Identifizierung und Behebung der Probleme zu koordinieren. Patches zur Behebung der Probleme wurden bereits für hostap/wpa_supplicant veröffentlicht. Updates sind für Ubuntu verfügbar. In Debian, RHEL, SUSE/openSUSE, Arch, Fedora und FreeBSD bleiben die Probleme bislang unbehoben.

Quelle: opennet.ru

60GB SSD 8Gb DDR4