Ενεργοποίηση της Λειτουργίας Monitor NexMon & Εισαγωγή Πακέτων σε Android (τσιπ Broadcom)
Reading time: 6 minutes
tip
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Ελέγξτε τα σχέδια συνδρομής!
- Εγγραφείτε στην 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.
Επισκόπηση
Οι περισσότερες σύγχρονες συσκευές Android ενσωματώνουν ένα τσιπ Wi-Fi Broadcom/Cypress που αποστέλλεται χωρίς δυνατότητες λειτουργίας monitor 802.11 ή εισαγωγής πλαισίων. Το ανοιχτού κώδικα πλαίσιο NexMon διορθώνει το ιδιόκτητο firmware για να προσθέσει αυτές τις δυνατότητες και τις εκθέτει μέσω μιας κοινής βιβλιοθήκης (libnexmon.so
) και ενός βοηθητικού CLI (nexutil
). Με την προφόρτωση αυτής της βιβλιοθήκης στον κανονικό οδηγό Wi-Fi, μια ριζωμένη συσκευή μπορεί να συλλάβει ακατέργαστη κίνηση 802.11 και να εισάγει αυθαίρετα πλαίσια – εξαλείφοντας την ανάγκη για εξωτερικό προσαρμογέα USB.
Αυτή η σελίδα τεκμηριώνει μια γρήγορη ροή εργασίας που χρησιμοποιεί ένα πλήρως διορθωμένο Samsung Galaxy S10 (BCM4375B1) ως παράδειγμα, χρησιμοποιώντας:
- Το module NexMon Magisk που περιέχει το διορθωμένο firmware +
libnexmon.so
- Την εφαρμογή Hijacker Android για αυτοματοποίηση της εναλλαγής λειτουργίας monitor
- Προαιρετικά το Kali NetHunter chroot για να εκτελεί κλασικά εργαλεία ασύρματης δικτύωσης (aircrack-ng, wifite, mdk4 …) απευθείας κατά της εσωτερικής διεπαφής
Η ίδια τεχνική ισχύει για οποιαδήποτε συσκευή έχει διαθέσιμη δημόσια διόρθωση NexMon (Pixel 1, Nexus 6P, Galaxy S7/S8, κ.λπ.).
Προαπαιτούμενα
- Συσκευή Android με υποστηριζόμενο τσιπ Broadcom/Cypress (π.χ. BCM4358/59/43596/4375B1)
- Root με Magisk ≥ 24
- BusyBox (οι περισσότερες ROM/NetHunter το περιλαμβάνουν ήδη)
- NexMon Magisk ZIP ή αυτοσυγκροτημένη διόρθωση που παρέχει:
/system/lib*/libnexmon.so
/system/xbin/nexutil
- Hijacker ≥ 1.7 (arm/arm64) – https://github.com/chrisk44/Hijacker
- (Προαιρετικά) Kali NetHunter ή οποιοδήποτε Linux chroot όπου σκοπεύετε να εκτελέσετε εργαλεία ασύρματης δικτύωσης
Φλας της διόρθωσης NexMon (Magisk)
- Κατεβάστε το ZIP για τη συγκεκριμένη συσκευή/firmware σας (παράδειγμα:
nexmon-s10.zip
). - Ανοίξτε το Magisk -> Modules -> Εγκατάσταση από αποθήκευση -> επιλέξτε το ZIP και επανεκκινήστε.
Το module αντιγράφει το
libnexmon.so
στο/data/adb/modules/<module>/lib*/
και διασφαλίζει ότι οι ετικέτες SELinux είναι σωστές. - Επαληθεύστε την εγκατάσταση:
ls -lZ $(find / -name libnexmon.so 2>/dev/null)
sha1sum $(which nexutil)
Ρύθμιση του Hijacker
Ο Hijacker μπορεί να εναλλάσσει αυτόματα τη λειτουργία monitor πριν εκτελέσει το airodump
, wifite
, κ.λπ. Στις Ρυθμίσεις -> Προχωρημένα προσθέστε τις παρακάτω καταχωρήσεις (επεξεργαστείτε τη διαδρομή της βιβλιοθήκης αν το module σας διαφέρει):
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
Ενεργοποιήστε το “Start monitor mode on airodump start” ώστε κάθε σάρωση του Hijacker να γίνεται σε εγγενή λειτουργία παρακολούθησης (wlan0
αντί για wlan0mon
).
Εάν το Hijacker εμφανίζει σφάλματα κατά την εκκίνηση, δημιουργήστε τον απαιτούμενο φάκελο στην κοινή αποθήκευση και επανανοίξτε την εφαρμογή:
mkdir -p /storage/emulated/0/Hijacker
Τι σημαίνουν αυτές οι σημαίες nexutil
;
-s0x613
Γράφει τη μεταβλητή firmware 0x613 (FCAP_FRAME_INJECTION) →1
(ενεργοποίηση TX τυχαίων πλαισίων).-i
Θέτει τη διεπαφή σε λειτουργία παρακολούθησης (η κεφαλίδα radiotap θα προστεθεί).-v2
Ορίζει το επίπεδο λεπτομέρειας;2
εκτυπώνει επιβεβαίωση και έκδοση firmware.-m0
Επαναφέρει τη διαχειριζόμενη λειτουργία (χρησιμοποιείται στην εντολή disable).
Μετά την εκτέλεση της Ενεργοποίησης λειτουργίας παρακολούθησης θα πρέπει να δείτε τη διεπαφή σε κατάσταση παρακολούθησης και να μπορείτε να καταγράψετε ακατέργαστα πλαίσια με:
airodump-ng --band abg wlan0
Χειροκίνητο one-liner (χωρίς 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
Αν χρειάζεστε μόνο παθητική παρακολούθηση, παραλείψτε την επιλογή -s0x613
.
Χρησιμοποιώντας libnexmon
μέσα στο Kali NetHunter / chroot
Τα εργαλεία χρήστη που περιλαμβάνονται στο Kali δεν γνωρίζουν για το NexMon, αλλά μπορείτε να τα αναγκάσετε να το χρησιμοποιήσουν μέσω του LD_PRELOAD
:
- Αντιγράψτε το προ-κατασκευασμένο κοινό αντικείμενο στο chroot:
cp /sdcard/Download/kalilibnexmon.so <chroot>/lib/
- Ενεργοποιήστε τη λειτουργία παρακολούθησης από τον Android host (εντολή παραπάνω ή μέσω του Hijacker).
- Εκκινήστε οποιοδήποτε ασύρματο εργαλείο μέσα στο Kali με το preload:
sudo su
export LD_PRELOAD=/lib/kalilibnexmon.so
wifite -i wlan0 # ή aircrack-ng, mdk4 …
- Όταν τελειώσετε, απενεργοποιήστε τη λειτουργία παρακολούθησης όπως συνήθως στο Android.
Δεδομένου ότι το firmware χειρίζεται ήδη την έγχυση radiotap, τα εργαλεία χρήστη συμπ behave just like on an external Atheros adapter.
Τυπικές Επιθέσεις που είναι Δυνατές
Μόλις η παρακολούθηση + TX είναι ενεργή μπορείτε να:
- Συλλάβετε WPA(2/3-SAE) handshakes ή PMKID με
wifite
,hcxdumptool
,airodump-ng
. - Εγχύσετε πλαίσια αποσύνδεσης / αποσύνδεσης για να αναγκάσετε τους πελάτες να επανασυνδεθούν.
- Δημιουργήσετε αυθαίρετα πλαίσια διαχείρισης/δεδομένων με
mdk4
,aireplay-ng
, Scapy, κ.λπ. - Δημιουργήσετε rogue APs ή να εκτελέσετε επιθέσεις KARMA/MANA απευθείας από το τηλέφωνο.
Η απόδοση στο Galaxy S10 είναι συγκρίσιμη με εξωτερικές USB NICs (~20 dBm TX, 2-3 M pps RX).
Αντιμετώπιση Προβλημάτων
Device or resource busy
– βεβαιωθείτε ότι η υπηρεσία Wi-Fi του Android είναι απενεργοποιημένη (svc wifi disable
) πριν ενεργοποιήσετε τη λειτουργία παρακολούθησης.nexutil: ioctl(PRIV_MAGIC) failed
– η βιβλιοθήκη δεν είναι προ-φορτωμένη; ελέγξτε ξανά τη διαδρομήLD_PRELOAD
.- Η έγχυση πλαισίων λειτουργεί αλλά δεν έχουν συλληφθεί πακέτα – ορισμένα ROMs μπλοκάρουν σκληρά κανάλια; δοκιμάστε
nexutil -c <channel>
ήiwconfig wlan0 channel <n>
. - Το SELinux μπλοκάρει τη βιβλιοθήκη – ρυθμίστε τη συσκευή σε Permissive ή διορθώστε το πλαίσιο του module:
chcon u:object_r:system_lib_file:s0 libnexmon.so
.
Αναφορές
- Hijacker on the Samsung Galaxy S10 with wireless injection
- NexMon – firmware patching framework
- Hijacker (aircrack-ng GUI for Android)
tip
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Ελέγξτε τα σχέδια συνδρομής!
- Εγγραφείτε στην 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.