Aktivieren des NexMon-Monitor-Modus & Paket-Injektion auf Android (Broadcom-Chips)

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks

Übersicht

Die meisten modernen Android-Handys verfügen über einen Broadcom/Cypress-Wi-Fi-Chipsatz, der ohne 802.11-Monitor-Modus oder Frame-Injektionsfähigkeiten ausgeliefert wird. Das Open-Source-NexMon-Framework patcht die proprietäre Firmware, um diese Funktionen hinzuzufügen, und stellt sie über eine Shared Library (libnexmon.so) und einen CLI-Helfer (nexutil) zur Verfügung. Durch das Vorladen dieser Bibliothek in den Standard-Wi-Fi-Treiber kann ein gerootetes Gerät rohen 802.11-Verkehr erfassen und beliebige Frames injizieren – was die Notwendigkeit eines externen USB-Adapters beseitigt.

Diese Seite dokumentiert einen schnellen Workflow, der ein vollständig gepatchtes Samsung Galaxy S10 (BCM4375B1) als Beispiel verwendet, mit:

  • NexMon Magisk-Modul, das die gepatchte Firmware + libnexmon.so enthält
  • Hijacker Android-Anwendung zur Automatisierung des Umschaltens des Monitor-Modus
  • Optional Kali NetHunter Chroot, um klassische drahtlose Tools (aircrack-ng, wifite, mdk4 …) direkt gegen die interne Schnittstelle auszuführen

Die gleiche Technik gilt für jedes Handy, das einen öffentlich verfügbaren NexMon-Patch hat (Pixel 1, Nexus 6P, Galaxy S7/S8 usw.).


Voraussetzungen

  • Android-Handy mit einem unterstützten Broadcom/Cypress-Chipsatz (z. B. BCM4358/59/43596/4375B1)
  • Root mit Magisk ≥ 24
  • BusyBox (die meisten ROMs/NetHunter enthalten es bereits)
  • NexMon Magisk ZIP oder selbstkompilierten Patch, der bereitstellt:
  • /system/lib*/libnexmon.so
  • /system/xbin/nexutil
  • Hijacker ≥ 1.7 (arm/arm64) – https://github.com/chrisk44/Hijacker
  • (Optional) Kali NetHunter oder ein beliebiges Linux-Chroot, in dem Sie drahtlose Tools ausführen möchten

Flashen des NexMon-Patches (Magisk)

  1. Laden Sie die ZIP für Ihr genaues Gerät/Firmware herunter (Beispiel: nexmon-s10.zip).
  2. Öffnen Sie Magisk -> Module -> Aus Speicher installieren -> wählen Sie die ZIP aus und starten Sie neu. Das Modul kopiert libnexmon.so in /data/adb/modules/<module>/lib*/ und stellt sicher, dass die SELinux-Labels korrekt sind.
  3. Überprüfen Sie die Installation:
bash
ls -lZ $(find / -name libnexmon.so 2>/dev/null)
sha1sum $(which nexutil)

Konfigurieren von Hijacker

Hijacker kann den Monitor-Modus automatisch umschalten, bevor airodump, wifite usw. ausgeführt werden. Fügen Sie in Einstellungen -> Erweitert die folgenden Einträge hinzu (bearbeiten Sie den Bibliothekspfad, wenn Ihr Modul abweicht):

Prefix:
LD_PRELOAD=/data/user/0/com.hijacker/files/lib/libnexmon.so

Enable monitor mode:
svc wifi disable; ifconfig wlan0 up; nexutil -s0x613 -i -v2

Disable monitor mode:
nexutil -m0; svc wifi enable

Aktivieren Sie „Monitor-Modus beim Start von airodump starten“, damit jeder Hijacker-Scan im nativen Monitor-Modus erfolgt (wlan0 anstelle von wlan0mon).

Wenn Hijacker beim Start Fehler anzeigt, erstellen Sie das erforderliche Verzeichnis im gemeinsamen Speicher und öffnen Sie die App erneut:

bash
mkdir -p /storage/emulated/0/Hijacker

Was bedeuten diese nexutil-Flags?

  • -s0x613 Schreibe Firmware-Variable 0x613 (FCAP_FRAME_INJECTION) → 1 (Aktivieren des TX von beliebigen Frames).
  • -i Setze das Interface in den Monitor-Modus (Radiotap-Header wird hinzugefügt).
  • -v2 Setze die Ausführlichkeitsebene; 2 druckt Bestätigung und Firmware-Version.
  • -m0 Stelle den Managed-Modus wieder her (wird im disable-Befehl verwendet).

Nach dem Ausführen von Enable monitor mode solltest du das Interface im Monitor-Zustand sehen und in der Lage sein, rohe Frames mit:

bash
airodump-ng --band abg wlan0

Manuelle Einzeile (ohne Hijacker)

bash
# Enable monitor + injection
svc wifi disable && ifconfig wlan0 up && nexutil -s0x613 -i -v2

# Disable and return to normal Wi-Fi
nexutil -m0 && svc wifi enable

Wenn Sie nur passives Sniffing benötigen, lassen Sie das -s0x613 Flag weg.


Verwendung von libnexmon in Kali NetHunter / chroot

Standardbenutzerwerkzeuge in Kali kennen NexMon nicht, aber Sie können sie zwingen, es über LD_PRELOAD zu verwenden:

  1. Kopieren Sie das vorgebaute Shared Object in das chroot:
bash
cp /sdcard/Download/kalilibnexmon.so <chroot>/lib/
  1. Aktivieren Sie den Monitor-Modus vom Android-Host (Befehl oben oder über Hijacker).
  2. Starten Sie ein beliebiges drahtloses Tool in Kali mit dem Preload:
bash
sudo su
export LD_PRELOAD=/lib/kalilibnexmon.so
wifite -i wlan0        # oder aircrack-ng, mdk4 …
  1. Deaktivieren Sie den Monitor-Modus wie gewohnt auf Android, wenn Sie fertig sind.

Da die Firmware bereits die Radiotap-Injektion verarbeitet, verhalten sich Benutzerwerkzeuge genau wie bei einem externen Atheros-Adapter.


Typische Angriffe möglich

Sobald Monitor + TX aktiv ist, können Sie:

  • WPA(2/3-SAE) Handshakes oder PMKID mit wifite, hcxdumptool, airodump-ng erfassen.
  • Deauthentifizierungs-/Dissoziationsrahmen injizieren, um Clients zum Wiederverbinden zu zwingen.
  • Beliebige Management-/Datenrahmen mit mdk4, aireplay-ng, Scapy usw. erstellen.
  • Rogue APs erstellen oder KARMA/MANA-Angriffe direkt vom Telefon ausführen.

Die Leistung auf dem Galaxy S10 ist vergleichbar mit externen USB NICs (~20 dBm TX, 2-3 M pps RX).


Fehlersuche

  • Device or resource busy – stellen Sie sicher, dass der Android-WLAN-Dienst deaktiviert ist (svc wifi disable), bevor Sie den Monitor-Modus aktivieren.
  • nexutil: ioctl(PRIV_MAGIC) failed – die Bibliothek ist nicht vorab geladen; überprüfen Sie den LD_PRELOAD-Pfad.
  • Rahmeninjektion funktioniert, aber keine Pakete erfasst – einige ROMs blockieren Kanäle hart; versuchen Sie nexutil -c <channel> oder iwconfig wlan0 channel <n>.
  • SELinux blockiert die Bibliothek – setzen Sie das Gerät auf Permissive oder beheben Sie den Modulkontext: chcon u:object_r:system_lib_file:s0 libnexmon.so.

Referenzen

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks