Activer le mode moniteur NexMon et l'injection de paquets sur Android (puces Broadcom)
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Apprenez et pratiquez le hacking Azure :
HackTricks Training Azure Red Team Expert (AzRTE)
Soutenir HackTricks
- Vérifiez les plans d'abonnement !
- Rejoignez le đŹ groupe Discord ou le groupe telegram ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PR au HackTricks et HackTricks Cloud dépÎts github.
Aperçu
La plupart des téléphones Android modernes intÚgrent une puce Wi-Fi Broadcom/Cypress qui est livrée sans mode moniteur 802.11 ni capacités d'injection de trames. Le framework open-source NexMon patch le firmware propriétaire pour ajouter ces fonctionnalités et les expose via une bibliothÚque partagée (libnexmon.so
) et un helper CLI (nexutil
). En prĂ©chargeant cette bibliothĂšque dans le pilote Wi-Fi d'origine, un appareil rootĂ© peut capturer le trafic 802.11 brut et injecter des trames arbitraires â Ă©liminant ainsi le besoin d'un adaptateur USB externe.
Cette page documente un flux de travail rapide qui prend un Samsung Galaxy S10 entiÚrement patché (BCM4375B1) comme exemple, en utilisant :
- Module Magisk NexMon contenant le firmware patché +
libnexmon.so
- Application Android Hijacker pour automatiser le basculement du mode moniteur
- Chroot Kali NetHunter optionnel pour exĂ©cuter des outils sans fil classiques (aircrack-ng, wifite, mdk4 âŠ) directement contre l'interface interne
La mĂȘme technique s'applique Ă tout appareil disposant d'un patch NexMon disponible publiquement (Pixel 1, Nexus 6P, Galaxy S7/S8, etc.).
Prérequis
- Appareil Android avec une puce Broadcom/Cypress prise en charge (par exemple, BCM4358/59/43596/4375B1)
- Root avec Magisk â„ 24
- BusyBox (la plupart des ROMs/NetHunter l'incluent déjà )
- ZIP Magisk NexMon ou patch auto-compilé fournissant :
/system/lib*/libnexmon.so
/system/xbin/nexutil
- Hijacker â„ 1.7 (arm/arm64) â https://github.com/chrisk44/Hijacker
- (Optionnel) Kali NetHunter ou tout chroot Linux oĂč vous comptez exĂ©cuter des outils sans fil
Flasher le patch NexMon (Magisk)
- Téléchargez le ZIP pour votre appareil/firmware exact (exemple :
nexmon-s10.zip
). - Ouvrez Magisk -> Modules -> Installer depuis le stockage -> sélectionnez le ZIP et redémarrez.
Le module copie
libnexmon.so
dans/data/adb/modules/<module>/lib*/
et s'assure que les étiquettes SELinux sont correctes. - Vérifiez l'installation :
ls -lZ $(find / -name libnexmon.so 2>/dev/null)
sha1sum $(which nexutil)
Configurer Hijacker
Hijacker peut basculer le mode moniteur automatiquement avant d'exécuter airodump
, wifite
, etc. Dans ParamÚtres -> Avancé, ajoutez les entrées suivantes (modifiez le chemin de la bibliothÚque si votre module diffÚre) :
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
Activez "Démarrer le mode moniteur au démarrage d'airodump" afin que chaque scan de Hijacker se fasse en mode moniteur natif (wlan0
au lieu de wlan0mon
).
Si Hijacker affiche des erreurs au lancement, créez le répertoire requis sur le stockage partagé et rouvrez l'application :
mkdir -p /storage/emulated/0/Hijacker
Que signifient ces drapeaux nexutil
?
-s0x613
Ăcrire la variable de firmware 0x613 (FCAP_FRAME_INJECTION) â1
(activer l'envoi de trames arbitraires).-i
Mettre l'interface en mode moniteur (l'en-tĂȘte radiotap sera ajoutĂ©).-v2
Définir le niveau de verbosité ;2
imprime la confirmation et la version du firmware.-m0
Restaurer le mode géré (utilisé dans la commande disable).
AprĂšs avoir exĂ©cutĂ© Enable monitor mode, vous devriez voir l'interface en Ă©tat de moniteur et ĂȘtre capable de capturer des trames brutes avec :
airodump-ng --band abg wlan0
Ligne de commande manuelle (sans Hijacker)
# 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
Si vous n'avez besoin que de l'écoute passive, omettez le drapeau -s0x613
.
Utilisation de libnexmon
dans Kali NetHunter / chroot
Les outils d'espace utilisateur de base dans Kali ne connaissent pas NexMon, mais vous pouvez les forcer Ă l'utiliser via LD_PRELOAD
:
- Copiez l'objet partagé pré-construit dans le chroot :
cp /sdcard/Download/kalilibnexmon.so <chroot>/lib/
- Activez le mode moniteur depuis l'hĂŽte Android (commande ci-dessus ou via Hijacker).
- Lancez n'importe quel outil sans fil dans Kali avec le préchargement :
sudo su
export LD_PRELOAD=/lib/kalilibnexmon.so
wifite -i wlan0 # ou aircrack-ng, mdk4 âŠ
- Lorsque vous avez terminé, désactivez le mode moniteur comme d'habitude sur Android.
Parce que le firmware gÚre déjà l'injection radiotap, les outils d'espace utilisateur se comportent comme sur un adaptateur Atheros externe.
Attaques typiques possibles
Une fois le mode moniteur + TX actif, vous pouvez :
- Capturer des handshakes WPA(2/3-SAE) ou PMKID avec
wifite
,hcxdumptool
,airodump-ng
. - Injecter des trames de désauthentification / de désassociation pour forcer les clients à se reconnecter.
- Créer des trames de gestion/données arbitraires avec
mdk4
,aireplay-ng
, Scapy, etc. - Construire des APs malveillants ou effectuer des attaques KARMA/MANA directement depuis le téléphone.
Les performances sur le Galaxy S10 sont comparables Ă celles des NIC USB externes (~20 dBm TX, 2-3 M pps RX).
Dépannage
Device or resource busy
â assurez-vous que le service Wi-Fi Android est dĂ©sactivĂ© (svc wifi disable
) avant d'activer le mode moniteur.nexutil: ioctl(PRIV_MAGIC) failed
â la bibliothĂšque n'est pas prĂ©chargĂ©e ; vĂ©rifiez le cheminLD_PRELOAD
.- L'injection de trames fonctionne mais aucun paquet capturĂ© â certains ROMs bloquent les canaux ; essayez
nexutil -c <channel>
ouiwconfig wlan0 channel <n>
. - SELinux bloque la bibliothĂšque â dĂ©finissez l'appareil sur Permissif ou corrigez le contexte du module :
chcon u:object_r:system_lib_file:s0 libnexmon.so
.
Références
- Hijacker sur le Samsung Galaxy S10 avec injection sans fil
- NexMon â cadre de patching de firmware
- Hijacker (interface graphique aircrack-ng pour Android)
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Apprenez et pratiquez le hacking Azure :
HackTricks Training Azure Red Team Expert (AzRTE)
Soutenir HackTricks
- Vérifiez les plans d'abonnement !
- Rejoignez le đŹ groupe Discord ou le groupe telegram ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PR au HackTricks et HackTricks Cloud dépÎts github.