Aircrack-Tutorial/WEP mit Client
Aus Wardriving-Forum.de Enzyklopädie
Trotz ständiger Qualitätssicherung ist ein Schaden an deiner Hard- und Software nicht ausgeschlossen, wir übernehmen hierfür keine Haftung.
Dieses Tutorial soll dir einen Überblick über die wichtigsten Funktionen von Aircrack-ng verschaffen und als Leitfaden zu seiner Nutzung dienen. Es gibt beim Entschlüsseln von Wireless-LAN Netzen mehrere effektive Wege das Ziel zu erreichen, jeder von ihnen ist mit unterschiedlichen Methoden und Programmen durchführbar. Je nach Distributionen, Chip und Treibern können eure Ein- und Ausgaben von den in diesem Tutorial abweichen, es wird aber jeder Befehl mit seinen Parametern im Anschluss an seine Verwendung aufgeschlüsselt.
Weitere Tutorials sind auf der englischsprachigen Aircrack-ng-Homepage zu finden.
Inhaltsverzeichnis |
[Bearbeiten] Voraussetzungen
Dieser Leitfaden ist, so gut er auch aufgebaut und aufgeschlüsselt ist, nicht für Anfänger geeignet. Man sollte sich zunächst mit den folgenden Themen vertraut machen:
- Die wichtigsten Linux-Befehle als PDF
- Linksammlung und Erklärung zu verschiedenen GNU/Linux Distributionen findet ihr hier
- Diese Anleitung richtet sich speziell an Linux Ubuntu Benutzer. Sollte man eine andere Linux Distribution benutzen so sollte man bedenken alle hier gezeigten befehle die mit ´sudo´ anfangen als root auszuführen sind und das ´sudo´ wegzulassen.
[Bearbeiten] Installation
Die meisten Linux Distributionen haben Aircrack-ng schon in ihren Paketquellen integriert, oftmals sind diese Versionen jedoch nicht mehr aktuell. Daher hier kurz eine Anleitung zur Installation der SVN-Version. SVN, auch bekannt als Subversion, ist ein Versionsverwaltungstool für Entwickler. In ihm befindet sich immer die aktuellste Entwicklerversion, meist wenige Stunden oder Tage alt. In seltenen Fällen kann es also sein, dass eine über Subversion geholte Version nicht funktionsfähig ist.
Folgende Pakete müssen Vorinstalliert sein: sudo apt-get install build-essential sudo apt-get install libssl-dev >= 3.3.17 sudo apt-get install libsqlite3-dev >= 3.3.17
Um die SVN-Version herunter laden zu können, benötigen wir zunächst das Programm Subversion selbst. Unter Debian-basierten Distributionen (wie z.B. Ubuntu) geht die Installation folgendermaßen von statten:$ sudo make install
Prima. Jetzt kann es losgehen!
[Bearbeiten] Initialisierungsvektoren sammeln
Ein Accesspoint sendet mit jedem Paket einen Initialisierungsvektor aus, diese stellen den Schwachpunkt der WEP-Verschlüsselung dar. Denn sobald man genügen IVs gesammelt hat, ist es möglich, den WEP-Schlüssel zu errechnen. Dieses Beispiel zeigt, wie man die Initialisierungsvektoren mitschneidet:
Als erstes müssen wir unser 'Ziel' finden. Dafür gibt es das Programm airodump-ng, was im Monitor Mode alle Netze auflistet die es finden kann. Es ist wichtig, dass Deine Karte den Monitor Mode unterstützt, da ansonsten keine Pakete aufgefangen werden können. Zuerst muss die Karte in den Monitor Mode geschaltet werden, das funktioniert nach Chip und Treiber verschieden:
Dazu müsst Ihr diesen Befehl eingeben:
Bei den Meisten Karten wird ein mon0 Interface erstellt. Dieses Interface müsst ihr nun für alle weiteren befehle benutzen.
Hat man einen Adapter, der auf dem Atheros-Chipsatz beruht und die Madwifi Trieber benutzt, stellt wifi0 Euren WLAN-Adapter da. Dazu muss man den folgenden Befehl ausführen.
$ sudo airmon-ng start wifi0
Mit „iwconfig“ kann man überprüfen, welcher Modus gerade aktiv ist. Wenn das nun geschafft ist, können wir airodump-ng starten
Die Ausgabe von airodump-ng sollte folgendermaßen aussehen:
BSSID PWR RXQ Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID
00:0F:B5:3F:4B:2A 42 100 5240 307 3 9 54 WEP WEP wardriving-forum.de
BSSID STATION PWR Lost Packets Probes
00:14:6C:7E:40:80 00:0F:B5:88:AC:82 42 0 183782Die erste Zeile der Ausgabe gibt Informationen über den Kanal (CH <1-14>), die vergangene Zeit, sowie die aktuelle Zeit. Im folgenden werden schließlich die gefundenen W-LAN Netze aufgelistet, die Spalte #Data steht für die aufgefangenen Pakete, die in gleicher Anzahl die IVs enthalten. Die Tabelle lässt sich wie folgt aufschlüsseln:
- BSSID = MAC-Adresse des Access-Point
- PWR = Signalstärke
- RXQ = RXQ ist einer von airodump berechneter Wert, das Maximum liegt bei 100
- Beacons = Daran kann man erkennen ob der Empfang gut oder schlecht ist. Wenn die Zahlen langsam und stockend laufen ist das Signal zu schwach.
- #Data = Anzahl der aufgefangenen Pakete (und somit auch IV)
- #/s = Paketanzahl in der Sekunde
- CH = Kanal des WLAN-Netzes
- MB = Geschwindigkeit des WLAN-Netzes (in MBit)
- ENC = Verschlüsselung
- Cipher =
- Auth =
- ESSID = Name des Access-Point, z.B. wardriving-forum.de
Als Tipp ist zu erwähnen, das man Airodump auch mit einem Filter starten kann:
Nun werden nur AP's angezeigt die die WEP-Verschlüsseldung verwenden. Dies kann aber für jede Verschlüsselung angepasst werden.
Um nun die besagten IVs zur Weiterverabeitung mitzuschneiden, führt airodump mit den folgenden Parametern aus
Wenn man dann sein Ziel ausgewählt hat, kann man speziell auf dessen Pakete horchen.
Funktionen:
- -w = Pakete in einer Datei speichern
- -c = Nur auf speziellem Kanal lauschen
- --bssid = Nur Pakete von einer spezifischen MAC-Adresse auffangen
Der Befehl airodump-ng --help verrät noch weitere Möglichkeiten.
Jetzt versuchen wir die Daten von unserem gefunden AccessPoint zu sammeln. Wir haben zuvor folgendes herausgefunden:
- Kanal = 9
- BSSID = 00:0F:B5:3F:4B:2A
Diese Parameter fügen wir unserer airodump-ng Befehlszeile hinzu
Das -w deine_datei ist ziemlich wichtig, denn damit werden alle aufgesammelten Daten in eine Datei gespeichert, die wir später brauchen. Zeitgleich können wir jetzt schon anfangen, mit den gesammelten Daten den Schlüssel zurückzuberechnen.
[Bearbeiten] Cracken
Ab ca. 15.000 Pakete kann man anfangen mit dem Eigentlichen cracken. Meist werden zwischen 15.000 und 100.000 Pakete benötigt.
Dazu öffnet man die mit airodump-ng gespeicherten Pakete mit aircrack-ng
Wobei deine_datei.cap die mit airodump-ng erstellte Datei ist. Wenn man sich nicht sicher ist wie die .cap Datei heißt, hilft ein einfaches "ls" in der Konsole. Wenn man mehrere AccessPoints gesnifft hat, kommt man zu einen Auswahlmenü.
Opening deine_datei.cap
Read 150811 packets.
- BSSID ESSID Encryption
1 00:0F:B5:3F:4B:2A wardriving-forum.de WEP (49470 IVs)
2 00:15:E9:18:E1:06 default WEP (34 IVs)
Index number of target network ?
Jetzt muss nartürlich die 1 gedrückt werden, gefolgt von einen Enter. Aircrack-ng fängt jetzt an den Schlüssel zurück zu rechnen.
Je nachdem wie viele IVs man hat und wie lang der Schlüssel ist, dauert es entsprechend. Bei einen Schlüssel von 5 Buchstaben und 20.000 IVs dauert es nur wenige Sekunden um den Schlüssel zurück zu berechnen. Wenn alles geklappt hat meldet Aircrack-ng KEY FOUND!
Decrypted correctly: 100%
Aircrack-ng gibt einmal den key in HEX Zeichen aus, und wenn es möglich ist auch in ASCII.
[Bearbeiten] Verbinden
Jetzt kann man die Wlan Karte wieder in Managed Mode bringen,
$ sudo iwconfig wlan0 mode managed
und sich mit dem Wlan verbinden, entweder mit einen beliebigen Network Manager oder über die konsole
Wenn auf dem Router ein DHCP-server vorhanden ist (Also man eine automatische IP bekommt) muss die noch angefragt werden
[Bearbeiten] Aktive Attacken
[Bearbeiten] Injection
Manchmal kann es ziemlich lange dauern die nötigen Anzahl Pakete zu sammeln, das ist vor allem so wenn der Client nicht aktiv ist. Um dieses Problem zu umgehen machen wir uns die Technik der Packet Injection zu eigen. Damit wird es möglich sein in kurzer Zeit genügend IVs zu generieren um den Netzwerkschlüssel zurück zu berechnen.
[Bearbeiten] Inkompatible Treiber
Es existieren Treiber für W-LAN Devices unter Linux, die nicht jede Attacke ausführen können. Nennenswert ist hier beispielsweise Intels Centrino-Chipsatz 2200BG, der nur die Attacken -2, -3, -4 und -6 nutzen kann.
[Bearbeiten] Registrieren
Damit der AccessPoint die Pakete akzeptiert, die wir ihm senden, muss zuerst unsere MAC Adresse auf dem AccessPoint registriert werden. Wenn wir das nicht machen, ignoriert der AccessPoint unsere Pakete und wir werden keine weiteren Ivs bekommen. Alternativ kann man auch eine MAC von einem bereits vorhandenen Klienten benutzen, da die schon auf dem AccessPoint registriert ist.
Um sich beim AccesPoint zu registrieren, benutzen wir aireplay-ng mit fake authentication
- -1 bedeutet, dass wir fake authentication machen wollen
- 0 reassociation timing in seconds
- -e wardriving-forum.de ist der Netzwerk Name
- -a 00:0F:B5:3F:4B:2A ist die MAC vom AccesPoint
- -h 00:0F:B5:88:AC:82 ist die MAC von unserer wlan Karte
- mon0 ist der Name von unserem Interface
18:18:20 Authentication successful
18:18:20 Sending Association Request
[Bearbeiten] ARP replay
Wenn wir erfolgreich beim AccesPoint registriert sind können wir aireplay-ng in ein Modus versetzten der das WLAN nach ARP-request abhört und sie wieder ins Netz einspeist. ARP-request Pakete werden oft vom AccesPoint wieder zurück gesendet so daß neue IVs erstellt werden. Das ermöglicht uns in kurzer Zeit viele IVs zu sammeln und das Netzwerk so schnell zu knacken. Wir öffnen eine neue Konsole und schreiben folgendes
- -3 ist die Option für ARP replay
- -b die MAC vom AccesPoint
- -h unsere MAC
- mon0 unser Interface
You should also start airodump-ng to capture replies.
Jetzt sollte die „#/s“ Zahl in airodump-ng stark nach oben gehen und wir in wenigen Minuten genug IVs haben um das Netz zu knacken.
[Bearbeiten] Kein ARP-request?
Wenn ein Klient vorhanden ist, aber man kein ARP-request bekommt, kann man versuchen den Klient vom Router abzumelden. Das machen wir mit der --deauth Attacke von aireplay-ng. Wir haben also noch unser airodump-ng offen was fleißig alle Pakete und dazu noch wie oben beschrieben aireplay-ng -3 -b 00:0F:B5:3F:4B:2A -h 00:0F:B5:88:AC:82 wlan0
Das aireplay-ng Fenster sollte so aussehen:You should also start airodump-ng to capture replies.
Jetzt müssen wir dafür sorgen das sich der Klient vom Router trennt und wieder neu anmeldet damit wir einen ARP-request auffangen können.
- -0 5 ist die Option für deauth und das es 5 mal gesendet werden soll
- -a ist die MAC vom AccesPoint
- -c ist die MAC vom Klienten
- mon0 ist das Interface
Wenn alles geklappt hat wird sich der Klient mit dem AccesPoint neu verbinden und wir bekommen ein ARP-request.
[Bearbeiten] Video
Wer dieses Tutorial noch nicht ganz verstanden hat kann sich dieses Video herunterladen und angucken. Da werden die Attacken, die in diesen Tutorial beschrieben werden, praktisch angewandt.
[Bearbeiten] Noch Fragen
Wie oben schon erwähnt kann man mehr Tutorials auf der englischsprachigen Aircrack-ng-Homepage finden. Oder im #aircrack-ng irc channel auf irc.freenode.org
[Bearbeiten] Die Autoren
Idee und geschrieben von Breil und Lord-carlos für das wardriving-forum. Dieses Tutorial darf gerne verlinkt werden, jedoch nicht ohne Nachfrage kopiert werden.
Wir bedanken uns bei HeXagon für den Gobby server, das Wiki und vieles mehr. Und bei Hirte für die technischen Details.