Omogućite NexMon režim monitora i injekciju paketa na Androidu (Broadcom čipovi)

tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks

Pregled

Većina modernih Android telefona ima Broadcom/Cypress Wi-Fi čipset koji dolazi bez 802.11 režima monitora ili mogućnosti injekcije okvira. Open-source NexMon okvir patch-uje vlasnički firmware kako bi dodao te funkcije i izlaže ih kroz zajedničku biblioteku (libnexmon.so) i CLI pomoćnika (nexutil). Pre-load-ovanjem te biblioteke u stock Wi-Fi drajver, uređaj sa root-om može da hvata sirovi 802.11 saobraćaj i injektuje proizvoljne okvire – eliminišući potrebu za spoljnim USB adapterom.

Ova stranica dokumentuje brz radni tok koji uzima potpuno patch-ovan Samsung Galaxy S10 (BCM4375B1) kao primer, koristeći:

  • NexMon Magisk modul koji sadrži patch-ovani firmware + libnexmon.so
  • Hijacker Android aplikaciju za automatizaciju prebacivanja režima monitora
  • Opcioni Kali NetHunter chroot za pokretanje klasičnih bežičnih alata (aircrack-ng, wifite, mdk4 …) direktno protiv unutrašnjeg interfejsa

Ista tehnika se primenjuje na bilo koji uređaj koji ima javno dostupni NexMon patch (Pixel 1, Nexus 6P, Galaxy S7/S8, itd.).


Preduslovi

  • Android uređaj sa podržanim Broadcom/Cypress čipsetom (npr. BCM4358/59/43596/4375B1)
  • Root sa Magisk ≥ 24
  • BusyBox (većina ROM-ova/NetHunter-a ga već uključuje)
  • NexMon Magisk ZIP ili samostalno kompajliran patch koji obezbeđuje:
  • /system/lib*/libnexmon.so
  • /system/xbin/nexutil
  • Hijacker ≥ 1.7 (arm/arm64) – https://github.com/chrisk44/Hijacker
  • (Opcionalno) Kali NetHunter ili bilo koji Linux chroot gde planirate da pokrenete bežične alate

Flešovanje NexMon patch-a (Magisk)

  1. Preuzmite ZIP za vaš tačan uređaj/firmware (primer: nexmon-s10.zip).
  2. Otvorite Magisk -> Moduli -> Instaliraj iz skladišta -> izaberite ZIP i restartujte. Modul kopira libnexmon.so u /data/adb/modules/<module>/lib*/ i osigurava da su SELinux oznake ispravne.
  3. Proverite instalaciju:
bash
ls -lZ $(find / -name libnexmon.so 2>/dev/null)
sha1sum $(which nexutil)

Konfigurisanje Hijacker-a

Hijacker može automatski prebaciti režim monitora pre pokretanja airodump, wifite, itd. U Podešavanja -> Napredno dodajte sledeće unose (izmenite putanju biblioteke ako se vaš modul razlikuje):

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

Omogućite “Start monitor mode on airodump start” tako da svaki Hijacker sken bude u nativnom režimu monitora (wlan0 umesto wlan0mon).

Ako Hijacker prikazuje greške prilikom pokretanja, kreirajte potrebnu direktoriju na deljenom skladištu i ponovo otvorite aplikaciju:

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

Šta znače ti nexutil flagovi?

  • -s0x613 Upisuje firmware varijablu 0x613 (FCAP_FRAME_INJECTION) → 1 (omogućava TX proizvoljnih okvira).
  • -i Postavlja interfejs u režim nadzora (radiotap zaglavlje će biti dodato).
  • -v2 Postavlja nivo detaljnosti; 2 ispisuje potvrdu i verziju firmware-a.
  • -m0 Vraća upravljani režim (koristi se u disable komandi).

Nakon pokretanja Enable monitor mode trebali biste videti interfejs u režimu nadzora i moći da uhvatite sirove okvire sa:

bash
airodump-ng --band abg wlan0

Ručni jedan-liner (bez Hijacker-a)

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

Ako vam je potrebna samo pasivna sniffing, izostavite -s0x613 flag.


Korišćenje libnexmon unutar Kali NetHunter / chroot

Stock alati u korisničkom prostoru u Kali ne znaju za NexMon, ali ih možete naterati da ga koriste putem LD_PRELOAD:

  1. Kopirajte unapred izgrađeni zajednički objekat u chroot:
bash
cp /sdcard/Download/kalilibnexmon.so <chroot>/lib/
  1. Omogućite monitor mod sa Android hosta (gore navedena komanda ili putem Hijacker-a).
  2. Pokrenite bilo koji bežični alat unutar Kali sa preload-om:
bash
sudo su
export LD_PRELOAD=/lib/kalilibnexmon.so
wifite -i wlan0        # ili aircrack-ng, mdk4 …
  1. Kada završite, onemogućite monitor mod kao obično na Androidu.

Pošto firmware već obrađuje radiotap injekciju, alati u korisničkom prostoru se ponašaju kao na spoljašnjem Atheros adapteru.


Tipični mogući napadi

Kada je monitor + TX aktivan, možete:

  • Zabeležiti WPA(2/3-SAE) handshakes ili PMKID sa wifite, hcxdumptool, airodump-ng.
  • Injektovati deautentifikacione / disasocijacione okvire da naterate klijente da se ponovo povežu.
  • Kreirati proizvoljne upravljačke/podatkovne okvire sa mdk4, aireplay-ng, Scapy, itd.
  • Izgraditi rogue AP-ove ili izvesti KARMA/MANA napade direktno sa telefona.

Performanse na Galaxy S10 su uporedive sa spoljnim USB NIC-ovima (~20 dBm TX, 2-3 M pps RX).


Rešavanje problema

  • Device or resource busy – uverite se da je Android Wi-Fi servis onemogućen (svc wifi disable) pre nego što omogućite monitor mod.
  • nexutil: ioctl(PRIV_MAGIC) failed – biblioteka nije unapred učitana; proverite LD_PRELOAD putanju.
  • Injekcija okvira radi, ali nema uhvaćenih paketa – neki ROM-ovi tvrdo blokiraju kanale; pokušajte nexutil -c <channel> ili iwconfig wlan0 channel <n>.
  • SELinux blokira biblioteku – postavite uređaj na Permissive ili popravite kontekst modula: chcon u:object_r:system_lib_file:s0 libnexmon.so.

Reference

tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks