WLAN-Tracking mit dem Raspberry Pi

ELektronik-KOmpendium.de
Online

Preis auf Anfrage

Wichtige informationen

  • Kurs
  • Online
Beschreibung

WLAN-Tracking mit dem Raspberry Pi WLAN-Access-Points verschicken in regelmäßigen Abständen sogenannten Beacon-Pakete. Damit werden die WLAN-Clients, die sich in der Nähe befinden, über das WLAN informiert. Wie oft er das tut, hängt von seiner Konfiguration ab. Der WLAN-Client, ein Smartphone, Notebook oder Tablet, informiert seinen Nutzer per aufpoppendes Info-Fenster über dieses WLAN. WLAN-Clients müssen aber nicht auf die Beacons warten, sondern können von sich aus einen "Probe Request" senden, womit sie per Broadcast Informationen von allen in Reichweite befindlichen Access Points in Erfahrung bringen können. Als Antwort bekommt der WLAN-Client einen "Probe Response" mit dem Netzwerknamen (SSID) und Informationen zur Verschlüsselung. Alle Probe Requests sind mit der Hardware-Adresse des Clients versehen damit der Access-Point den Response zurückschicken kann. Da jeder WLAN-Client eine eigene einzigartige Hardware-Adresse hat, mit der er sich zu erkennen gibt, lässt sich feststellen wann und wie oft ein WLAN-Client an einem bestimmten Ort war. Würde man die Probe Requests an mehreren Orten aufzeichnen und die Daten zur Analyse zusammenführen, könnte man sogar Bewegungsprofile erstellen können. Da WLAN-Clients, wie Smartphones, Tablets und Notebooks, in der Regel nur von einer Person genutzt werden, bezieht sich das Bewegungsprofil auf die Person.
Mit WLAN-Tracking ist es also möglich, Bewegungsprofile von Personen zu erstellen, ähnlich, wie es im Internet auch geschieht. Auf diese Weise kann man Besucherströme analysieren. Wann Sie kommen, wohin sie gehen und wann sie wieder gehen. Manche WLAN-Clients richten ihre Probe Requests gezielt nach ihnen bekannten SSIDs. Das bedeutet, diese WLAN-Clients verraten, wo sie schon mal in einem WLAN eingebucht waren.
Manche WLAN-Clients verschicken Probe Request auch dann, wenn sie nicht benutzt werden. Zum Beispiel im Standby-Modus. So ein Gerät sendet quasi ständig ein Ortungssignal.
Bei manchen WLAN-Clients ist ein Tracking nur begrenzt möglich, weil es im gesperrten Zustand entweder gar keine oder nur sehr selten Probe Requests verschickt. Allerdings suchen fast alle Clients nach WLANs, wenn man sie aus dem Standby weckt.
In neueren Betriebssystem-Versionen ist davon auszugehen, dass WLAN-Tracking erschwert wird. Beispielsweise durch zufällig generierte MAC-Adressen und Vermeidung von Probe Requests. Der Nutzer eines WLAN-Clients hat nur die eine Chance das Tracking zu unterbinden, in dem er WLAN wenn er unterwegs ist abschaltet. Aber selbst dass hilft manchmal nicht. Unter Android muss man in den WLAN-Einstellungen die Option "Erkennungsfunktion immer verfügbar" abschaltet, damit Android auch bei abgeschaltetem WLAN nicht nach WLANs sucht. Hinweis: Die Hardware-Adresse wird als personenbezogen angesehen und fällt deshalb unter den Datenschutz. Die Aufzeichnung des WLAN-Datenverkehrs ist datenschutzrechtlich problematisch, wenn es im Verborgenen geschieht und die betroffenen Personen nicht informiert werden. Eine rechtskonforme Verarbeitung der aufgezeichneten Daten ist ohne Zustimmung der betroffenen Personen nicht möglich. Allerdings ist die Wahrscheinlichkeit, dass das WLAN-Tracking herauskommt gering, weil das Tracking passiv erfolgt, ohne dass ein Signal vom Aufzeichnungsgerät ausgeht.

Wichtige informationen

Themenkreis

Aufgabe
  1. Feststellen, ob der WLAN-USB-Stick für den Monitor-Modus geeignet ist.
  2. Software für Tracking installieren.
  3. WLAN-Tracking einrichten.
Lösung: WLAN-Tracking einrichten

Diese Lösung setzt voraus, dass man Kali Linux einsetzt und mit dem Benutzer "root" arbeitet. Die einzige Hardware-Anforderung ist ein WLAN-USB-Stick, der den Monitor-Modus beherrscht. Ob der WLAN-Adapter den Monitor-Modus beherrscht, findet man folgendermaßen heraus:

iw list | grep monitor

Wenn dieser Befehl eine Zeile mit "monitor" auswirft, dann ist alles im grünen Bereich und der WLAN-Adapter beherrscht den Monitor-Modus. Wenn nicht, dann sollte man sich einen anderen WLAN-Adapter besorgen.
Hinweis: Gegebenenfalls muss "iw" nachinstalliert werden:

apt-get install iw

Der Raspberry Pi sollte für diese Lösung nicht mit einem WLAN verbunden sein. Das WLAN-Tracking soll nur passiv erfolgen.

Für das Tracking bringt Kali Linux fast alles mit. Damit wir das Tracking auf der Kommandozeile starten können benötigen wir "tshark", das nachträglich zu installieren ist:

apt-get install tshark

Anschließend aktualisieren wir noch die IEEE-OUI-Datei. Diese Datei ermöglicht es, dass aus einem Teil der Hardware-Adresse der Hersteller des WLAN-Clients ermittelt wird.

airodump-ng-oui-update

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

ifconfig wlan1 down iwconfig wlan1 mode monitor iwconfig wlan1

Prüfen Sie, welche Interface-Bezeichnung das Monitor-Interface hat ("Mode:monitor").

Fürs WLAN-Tracking verwenden wir "tshark". Das zeigt uns auf der Kommandozeile die "Probe Requests" der WLAN-Clients an:

tshark -i wlan1 subtype probereq

Wenn man das Tracking in eine Datei zum späteren Auswerten schreiben möchte, kann man das mit folgendem Befehl tun:

tshark -i wlan1 subtype probereq -w /tmp/rpi-cap.pcap

Mit "Strg+C" kann man das Tracking abbrechen.

Lösung: WLAN-Tracking mit Wireshark

Alternativ lässt sich das WLAN-Tracking auch auf der grafischen Oberfläche mit Wireshark erledigen. Das Laden der Benutzeroberfläche von Kali Linux dauert auf dem Raspberry Pi etwas länger, als man es normalerweise gewohnt ist. Also Geduld beim Ausführen des folgenden Befehls:

startx

Ist die grafische Benutzeroberfläche gestartet, startet man über "Application Menu/Kali Linux/Sniffing/Spoofing/Network Sniffers" Wireshark. Dort wählt man "wlan1" als Interface aus und startet das Tracking mit der grünen Haiflosse.

Mit folgender Filterregel kann man den getrackten Datenverkehr auf die "Probe Requests" begrenzen.

wlan.fc.type_subtype eq 4

Wenn man einen bestimmten Client filtern möchte erweitert man den Filter um die Hardware-Adresse des jeweiligen Clients.

and wlan.sa == xx:xx:xx:xx:xx:xx

Wenn man den WLAN-Stick auf einen festen Kanal einstellen will (z. B. Kanal 6), dann muss man auf der Kommandozeile noch folgendes eingeben:

iwconfig wlan1 channel 6 Weitere verwandte Themen:
  • Kali Linux für den Raspberry Pi installieren
  • WLAN-Hacking mit dem Raspberry Pi
  • Port-Scan auf einen Host durchführen
  • Netzwerk-Monitoring bzw. Man-in-the-Middle auf dem Raspberry Pi einrichten
  • Netzwerk-Verkehr mit dem Raspberry Pi aufzeichnen (tcpdump)

Hinweis: Dieses Tutorial ist Teil einer Aufgaben und Übungen mit dem Raspberry Pi-Reihe, die für Lern- und Ausbildungszwecke erstellt wurde. Die dargestellte Lösung ist Teil einer konkreten Aufgabenstellung, die Schüler, Auszubildende und Studenten, lösen sollen. Deshalb muss der hier aufgezeigte Weg nicht der Optimalfall sein.