ITS Tagebuch – W2T1 – WLAN HotSpot Attacke

AWUS036NH

Alfa Card AWUS036NH mit RT3070, 2W Sendeleistung, IEEE 802.11 b/g/n Quelle: Amazon.de

Hallo und willkommen zurück zum ITS Tagebuch – Woche 2 Tag 1.
Wer mir auf Twitter folgt, wird sicher schon gelesen haben, dass ich ein neues „Spielzeug“ habe:
Die Alfa AWUS036NH WLAN Karte (siehe Bild)
Vorab: Ich kann die Karte nach einigen Tests sehr empfehlen. Wer sich mit IEEE 802.11 Sicherheit auseinandersetzen will, und noch keinen geeigneten WLAN Adapter hat, kann diese Karte schon ab 20eur bei Amazon kaufen.
Das Modell beherrscht 802.11 b/g/n, hat maximal 2000mW Sendeleistung (in Deutschland sind maximal 100mW erlaubt!) und der RT3070 Chipsatz ist gut in BackTrack nutzbar.

Ich werde in der ITS Tagebuch Fortsetzung einige interessante Techniken rund um WLAN Sicherheit erklären, dabei dienen mir die Videos von Vivek Ramachandran auf SecurityTube.net als Grundlage. Ich kann nur empfehlen, den sehr ausführlichen WLAN Security MegaPrimer anzuschauen. Ich will nicht einfach alles kopieren, ich werde nur die wichtigsten Aspekte aufgreifen und erklären.

HotSpot Attacke

Die HotSpot Attacke heißt so, da das Szenario sehr häufig bei offenen HotSpots gefunden werden kann. Mithilfe dieser Technik kann ein Client, welcher mit einem WLAN-Netz (etwa einem HotSpot) verbunden ist, dazu gebracht werden, mit einem fremden WLAN Netz zu verbinden. Das fremde Netz stellt dabei natürlich der Angreifer bereit, wodurch man mehrere Vorteile hat:
Im gegensatz zum Sniffing im Promiscous Mode („Monitor Mode“), ist sichergestellt, dass alle Datenpakte des Opfers mitgelesen werden können
Eine Verbindung auf IP-Level ist möglich
Einfache Kombination mit Man In The Middle (MITM) Attacken 

Funktionsweise

Abbildung 1

Abbildung 1 – HotSpot und Client sind Verbunden

Das Prinzip ist relativ einfach, der Aufbau des Netzwerkes ist in Abbildung 1 visualisiert.
Gegeben ist ein offenes WLAN Netzwerk, über welches das Internet erreicht werden kann.
Ein Client ist mit dem Netz verbunden.

Der Angreifer stellt nun einen zweiten AccessPoint bereit, welcher die gleiche SSID besitzt, wie der ursprüngliche AP.
Das Opfer verbindet sich entweder aufgrund besseren Empfangs mit dem Angreifer-AP, oder der Angreifer sendet DeAuthentication Pakete, um das Opfer vom ursprünglichen AP zu trennen.

Da beide APs die gleiche SSID bekanntgeben, geht das Opfer davon aus, das Angreifer-Netzwerk gehört zum ursprünglichen Netz, also verbindet er sich mit diesem.

Abbildung 2

Abbildung 2: Der Client wurde durch einen DeAuth getrennt und stellt eine Verbindung zum Angreifer her

Die ESSID muss nicht einmalig sein, es wäre z.B. denkbar, dass eine Universität oder Firma auf dem gesamten Gelände WLAN bereitstellen will, aufgrund eingeschränkter Reichweite werden hier mehrere APs mit gleicher ESSID verwendet.

Ist das Opfer mit dem Angreifernetzwerk verbunden, kann eine IP vergeben werden, der Traffic des Opfers kann komplett aufgezeichnet werden durch MITM Proxies o.ä.
Wir werden das Opfer „zwingen“, sich mit uns zu verbinden und seinen Traffic über ein Bridge-Interface weiterleiten. Dabei könnten wir die Daten über eine zweite WLAN Karte an den HotSpot schicken, wir werden – um es einfach zu halten –  alles an ein LAN mit Internetverbindung senden. (Abbildung 2)

Durchführung

Ich verwende wie immer die Linux Distribution BackTrack (mittlerweile BackTrack 5 R3), dort sind alle nötigen Tools schon vorhanden.
Wer noch keine Erfahrung mit WLAN-Sniffing, DeAuth, usw. hat, sollte sich entweder die bisherigen ITS Tagebuch Einträge durchlesen, andernfalls empfehle ich den Wireless LAN Security Megaprimer auf SecurityTube.net
Die Serie beinhaltet 52 Videos, in denen Vivek Ramachandran sehr ausführlich alle Details rund um WiFi Security erklärt.

Als erstes wird BackTrack gebootet. Die WLAN Karte sollte eingerichtet werden, im Fall der AWUS036NH muss man die Karte nur anschließen – alle Treiber sind bereits installiert.

Vorbereitung – Monitor Mode, Bridge, Soft-AP und Sniffer

Bevor wir die eigentliche Attacke ausführen, wird der MonitorMode für das WLAN Interface aktiviert:

airmon-ng start wlan0

Danach wird nach verwundbaren Netzwerken gesucht, in diesem Fall offene Netzwerke mit verbundenen Clients:

airodump-ng mon0
BSSID                PWR        Beacons    #Data,    #/s    CH    MB    ENC        CIPHER    AUTH    ESSID
00:15:0C:5A:09:D9     -59        8        4        0    9    54    OPN                        TacticalCode

BSSID                    STATION                PWR        Rate    Lost    Frames    Probe
00:15:0C:5A:09:D9         04:46:65:21:24:F3    -30        0 - 1e    3        6        TacticalCode

Das Netzwerk mit der SSID TacticalCode ist nicht geschützt, ein Client ist mit ihm verbunden. Wir notieren die BSSID (00:15:0C:5A:09:D9), ESSID (TacticalCode) und den Kanal (9).
airodump-ng kann jetzt beendet werden, dann legen wir den channel fest, auf dem die Karte bleiben soll:

iwconfig wlan0 channel 9
iwconfig mon0 channel 9

Danach wird ein WLAN Netz mit der SSID TacticalCode bereitgestellt. Dazu nutzen wir airbase-ng:

airbase-ng --essid TacticalCode mon0
19:34:33  Created tap interface at0
19:34:33  Trying to set MTU on at0 to 1500
19:34:33  Trying to set MTU on mon0 to 1800
19:34:33  Access Point with BSSID 00:C0:CA:58:43:50 started.

Airbase-ng erstellt nun einen AccessPoint mit der SSID TacticalCode. Mit dem Parameter -a könnte man dem AP auch eine andere BSSID vergeben, als die MAC der WLAN Karte.
Außerdem wird ein neues Interface angelegt, at0. Über dieses Interface wird der gesamte Wifi-Traffic gesandt, es ist quasi die LAN-Karte eines Routers.
Wir müssen den Traffic also von at0 an unser anderes Interface senden, damit dieser nicht ins Leere läuft. Ich verwende die Ethernet Karte meines PCs, eth0.
Das ganze wird mit einer Bridge realisiert, welche es erlaubt, dass at0 auf das Netzwerk von eth0 zugreifen kann. Mehr Details gibt es wie immer bei Google.
eth0 und at0 müssen aktiviert werden, eth0 und at0 werden durch die Netzwerkbrücke verbunden, eine IP wird zugewiesen, damit über das Bridge-Interface eine Verbindung zum Internet bestehen kann:

#at0 und eth0 aktivieren
ifconfig at0 0.0.0.0 up
ifconfig eth0 0.0.0.0 up
#Bridge zwischen at0 und eth0 erstellen
brctl addbr br0
brctl addif br0 eth0 at0
#Bridge Interface aktivieren und IP zuweisen
ifconfig br0 up
dhclient3 br0

Als Test, ob alles funktioniert, kann man einen Ping zu google.com o.ä. ausführen.
Unsere Netzwerkinfrastruktur ist nun bereit:
AccessPoint TacticalCode
Bridge (br0), welche den Traffic vom AP (at0) zum Internet (eth0) weiterleitet
Um die Pakete nun zu sniffen, kann Wireshark gestartet und auf at0 gelauscht werden.

Der Angriff – Client DeAuthentication, WLAN Spoofing

Nun kommt der wichtigste Schritt: Das Opfer muss sich vom HotSpot trennen, und mit uns verbinden.
Eine Garantie, dass dies klappt, gibt es nicht. Aufgrund unterschiedlicher Betriebssysteme oder Treiber ist das Verhalten nicht deterministisch, im ungünstigsten Fall verbindet sich das Opfer nicht automatisch mit dem von uns bereitgestellten AP, und der Nutzer muss dies manuell ausführen. Um das Opfer dazu zu bringen, sich mit dem Angreifernetzwerk zu verbinden, kann entweder eine höhere Signalstärke bereitgestellt werden, oder das Opfer wird vom HotSpot getrennt.
Da man nicht sicher sagen kann, wie jedes einzelne Gerät auf Netzwerke mit besserem Empfang reagiert, werden wir DeAuthentication Pakete senden, damit das Opfer seine Verbindung mit dem HotSpot trennt, und hoffentlich (/wahrscheinlich) unserem AP beitritt:

aireplay-ng --deauth 0 -a 00:15:0C:5A:09:D9 mon0
19:38:29  Waiting for beacon frame (BSSID: 00:15:0C:5A:09:D9) on channel 9
NB: this attack is more effective when targeting
a connected wireless client (-c <client's mac>).
19:38:29  Sending DeAuth to broadcast -- BSSID: [00:15:0C:5A:09:D9]
19:38:29  Sending DeAuth to broadcast -- BSSID: [00:15:0C:5A:09:D9]

Das Opfer wird nun vom HotSpot getrennt, und verbindet sich im Idealfall mit unserem AP:

19:38:34  Client 04:46:65:21:24:F3 associated (unencrypted) to ESSID: "TacticalCode"

Hier wird ihm nun eine IP Adresse zugeteilt, üblicherweise über einen DHCP Server (z.B. dem, der im HotSpot Netzwerk läuft)
Die vom und zum Opfer gesendeten Daten können nun einfach mit Wireshark mitgelesen werden.

Gegenmaßnahmen

Falls es jemand vergessen hat: Ich schreibe diese Artikel, um zu zeigen, wie einfach es ein Hacker hat. Sie dienen nur zu Schulungszwecken, und ich möchte meine Leser natürlich informieren, wie man sich vor so einer Attacke schützen kann:
Zunächst ist es empfehlenswert, auf seinem Gerät automatische Verbindungen möglichst abzustellen. Dadurch wird es auch schwieriger, eine „Isolated Client Attacke“ durchzuführen.
Desweiteren sollte man offene Netze möglichst immer meiden. Klar, bei Mc Donald’s gibt es kostenlos Internet, aber dadurch gefährdet man nur seine eigene Sicherheit.
Man sollte auch seinen Verstand einsetzen, wenn die Empfangsqualität plötzlich von sehr schlecht auf überragend gut springt, ist meistens etwas faul. Auch wenn Netze doppelt angezeigt werden, oder Netze verfügbar sind, welche nicht verfügbar sein sollten, kann dies ein Zeichen für WLAN Spoofing sein.
Am Effektivsten (nicht gegen die HotSpot Attacke selbst, sondern gegen Sniffing) ist ein VPN. Hierbei werden alle Daten direkt ab Gerät verschlüsselt gesendet, so kann zumindest kein Traffic einfach im Plaintext mitgelesen werden.

MfG
Damon Dransfeld

Dieser Eintrag wurde veröffentlicht in ITS Tagebuch, Security
Bookmarken: Permanent-Link Schreibe einen Kommentar oder hinterlasse einen Trackback: Trackback-URL.
Achtung: Wordpress interpretiert bestimmte Zeichenfolgen als Markup und verändert diese. Nutzt für Programmcode lieber Gist oder PasteBin-Services und verlinkt die Code-Schnipsel.

Post a Comment

Sie müssen angemeldet sein, um kommentieren zu können.