WPS-WLAN-Hacking: Pixie-Dust-Angriff auf die WPS-Pin (mit pixiewps)

Die Pixie-Dust-Attacke wird auf das WPS-Pin-Verfahren angewendet und basiert darauf, dass der betreffende WLAN-Router für WPS schlechte Zufallszahlen nutzt. Der Pixie-Dust-Angriff funktioniert allerdings nur bei Access Points mit Ralink-, Broadcom- oder Realtek-Chipsatz. Und auch nur dann, wenn die Implementierung fehlerhaft ist. Man muss davon ausgehen, dass die Hersteller mit der Zeit ihre Implementierungen aktualisieren, weshalb dieser Angriff mit der Zeit immer seltener funktionieren wird.
Alternativ bleibt noch der reguläre WPS-WLAN-Hack per Brute-Force-Attacke auf die WPS-Pin.

Rechtlicher Hinweis zum WLAN-Hacking und WLAN-Pentesting

Um nicht in Konflikt mit dem Hacker-Paragrafen zu kommen, testen Sie die folgenden Schritte ausschließlich an ihrem eigenen WLAN, um dessen Sicherheitsstatus zu überprüfen.

Aufgabe

  1. Identifizieren Sie ein geeignetes WLAN mit der Pixie-Dust-Lücke.
  2. Initiieren Sie den Pixie-Dust-Angriff.

Ablauf des Pixie-Dust-Angriffs

  1. Reaver und Pixiewps installieren
  2. Monitor Mode einschalten
  3. WPS-WLAN mit Pixie-Dust-Lücke identifizieren (Information Gathering)
  4. Pixie-Dust-Angriff starten

1. Schritt: Reaver und Pixiewps installieren

Falls noch nicht installiert, sollte man zuerst Reaver und Pixiewps installieren. Es handelt sich um ein Tool, mit dem man WLANs mit WPS aufspüren und hacken kann.

apt-get update
apt-get install reaver
apt-get install pixiewps

2. Schritt: Monitor Mode einschalten

Die folgenden Schritte setzen voraus, dass der verwendete WLAN-Adapter den Monitor Mode beherrscht. Beachten Sie, dass das WLAN-Interface (z. B. "wlan1") in Ihrem System eine andere Bezeichnung haben kann.

ifconfig wlan1 down
iwconfig wlan1 mode monitor
ifconfig wlan1 up
iwconfig

Prüfen Sie, ob in der Zeile mit der Interface-Bezeichnung "Mode:monitor" steht.

3. Schritt: WPS-WLAN mit Pixie-Dust-Lücke identifizieren (Information Gathering)

Dann lassen wir uns alle WLANs in der Umgebung anzeigen. Zusätzlich mit der Angabe zu WPS-Unterstützung (--wps) und dem Geräte-Hersteller (--manufacturer).

airodump-ng wlan1 --wps --manufacturer

Wenn man das Kommando ein paar Minuten laufen lässt, werden die Angaben zu WPS detaillierter. Wenn sich die Angaben in der Tabelle aktualisieren, aber keine weiteren WLANs dazukommen, kann man das Programm mit Strg + C beenden.

In einem zweiten Terminal-Fenster/Reiter geben wir folgendes Kommando ein:

wash -i wlan1 -C

Hier prüfen wir noch mal auf die Unterstützung von WPS. Das Kommando "wash" zeigt nur die WLANs an, bei denen WPS aktiv ist. Was wir vor allem brauchen ist die MAC-Adresse (BSSID) und die Kanal-Nummer (CH) des WLANs, auf das wir den Pixie-Dust-Angriff ausführen wollen.

Hinweis: Es stellt sich natürlich die Frage, warum wir "airodump-ng" brauchen, wenn "wash" alles notwendige anzeigt. Dazu muss man wissen, dass die WLAN-Router einiger Hersteller eher für den Pixie-Dust-Angriff anfälliger sind, als die Geräte anderer Hersteller. Welche das sind, muss man vorher recherchieren. Oder einfach im nächsten Schritt ausprobieren.

4. Schritt: Pixie-Dust-Angriff ausführen

Für das folgende Kommando benötigen Sie die MAC-Adresse des Routers (BSSID) und den Kanal des WLANs (CHANNEL). Beides erfahren Sie mit dem wash-Kommando. Sie können auf die Angabe des Kanals verzichten. Nur kann es dann sein, dass "reaver" das WLAN dann nicht findet.

reaver -i wlan1 -b {BSSID} -c {CHANNEL} -K 1 -w -vv

Was passiert hier? "reaver" initiiert einen WPS-Austausch und sammelt dabei ein paar Daten ein. Die werden automatisch an das Tool "pixiewps" übergeben, dass den WPS-Pin offline zu knacken versucht. War "pixiewps" erfolgreich, dann versucht sich "reaver" beim WLAN anzumelden.
Ein erfolgreicher Pixie-Dust-Angriff ist in der Regel innerhalb einer Minute beendet. Das Ergebnis wird die WPS-Pin und das WLAN-Passwort sein.

Hinweis: Sollte das WLAN-Passwort tatsächlich anzeigt werden, dann ist das betreffende WLAN hochgradig gefährdet. WPS ist zu deaktivieren und das WLAN-Passwort zu ändern.

Wie funktioniert der Pixie-Dust-Angriff auf die WPS-Pin?

Pixie-Dust ist eine Angriffsmethode, die sich unzureichende WPS-Implementierungen in WLAN-Routern zunutze macht. Dabei steht und fällt die Sicherheit von WPS mit der Qualität der eingesetzten Zufallszahlen und der WPS-Pin-Generierung.

WPS sieht vor, dass die WPS-Pin, bestehend aus zwei Pin-Hälften, jeweils mit einer 128 Bit langen Zufallszahl zusammen gehasht werden. Der Hash-Wert alleine bringt dem Angreifer nichts, weil ihm Pin und Zufallszahl fehlen. Da berechtigte Clients und WLAN-Router über die Pin verfügen, benötigen sie nur noch die Zufallszahl, um ihr Gegenüber authentifizieren zu können. Erst wenn man die Zufallszahl kennt, kann man mit der bekannten Pin den selben Hash-Wert generieren.

Im Rahmen von WPS händigt der Router die Zufallszahl nur dann dem Client aus, wenn der sich mit den ersten vier Stellen der achtstelligen Pin authentifiziert hat. Das kann ein Angreifer, der die Pin nicht weiß, nicht tun. Er müsste alle 2 hoch 128 Zufallszahlen durchprobieren. Das wäre viel zu zeitaufwendig. Und damit wäre das WPS-Pin-Verfahren im Prinzip auch mit einer statischen Pin ausreichend sicher. Die Sicherheit des WPS-Pin-Verfahrens hängt jedoch davon ab, wie die Pin zustande kam und wie zufällig die Zufallszahl ist.

Dazu muss man wissen, dass es in einem Computer sehr schwierig ist Zufall zu erzeugen. Denn in einem Computer darf nichts dem Zufall überlassen sein. Deshalb arbeitet man mit Pseudozufallsgeneratoren, die ihren Eingangswert aus verschiedenen Quellen der Hardware beziehen. In einem normalen PC gibt es davon sehr viele. In einem handelsüblichen WLAN-Router, der nichts anderes als ein Mini-Computer ist, eher nicht. Hier lässt sich die Anzahl der Zufallszahlen eventuell eingrenzen. Dann liegt der Zufall nicht mehr bei 2 hoch 128 Möglichkeiten, sondern vielleicht nur bei 2 hoch 10.
Und auch das wäre noch nicht so schlimm, wenn nicht einige der vielen Implementierungen von Zufallszahlengeneratoren Mängel aufweisen würden. Es gibt Implementierungen, bei denen der Bereich, in dem sich die Zufallszahlen bewegen und sogar die Zufallszahlen selber schon bekannt sind.
Ein Beispiel ist die Unix-Zeit, die die verstrichenen Sekunden seit dem 01.01.1970 angibt. Ein Angreifer mit einer Uhr kann den Zufallswert sehr genau vorhersagen. Im schlimmsten Fall ist die Zufallszahl einfach "0".

Der Pixie-Dust-Angriff basiert nun darauf, dass man unter Umständen aus den zwei Hash-Werten auf die Pin schließen kann, wenn sich die Zufallszahlen eingrenzen lassen. In dem Fall kann man die Pin einfach ausrechnen.

Weitere verwandte Themen:

Teilen:

Netzwerktechnik-Fibel

Netzwerktechnik-Fibel

Das will ich haben!