
O framework de patch de firmware baseado em C para chips WiFi Broadcom/Cypress que permite Monitor Mode, Frame Injection e muito mais

Nexmon é o nosso framework de correção de firmware baseado em C para chips WiFi Broadcom/Cypress que permite escrever seus próprios patches de firmware, por exemplo, para ativar o modo monitor com cabeçalhos radiotap e injeção de quadros.
Abaixo, você encontra uma visão geral do que é possível com o nexmon. Este repositório concentra-se principalmente em ativar o modo monitor e a injeção de quadros em muitos chips. Se você quiser recursos adicionais, os seguintes projetos podem ser interessantes para você:
Nosso software pode danificar seu hardware e anular a garantia do seu hardware! Você usa nossas ferramentas por sua própria conta e risco! Se você não gosta desses termos, não use o nexmon!
Os seguintes dispositivos são atualmente suportados pelo nosso patch de firmware nexmon.
| Chip WiFi | Versão do Firmware | Usado em | Sistema Operacional | M | RT | I | FP | UC | CT |
|---|---|---|---|---|---|---|---|---|---|
| bcm4330 | 5_90_100_41_sta | Samsung Galaxy S2 | Cyanogenmod 13.0 | X | X | X | X | O | |
| bcm4335b0 | 6.30.171.1_sta | Samsung Galaxy S4 | LineageOS 14.1 | X | X | X | X | O | |
| bcm4339 | 6_37_34_43 | Nexus 5 | Android 6 Stock | X | X | X | X | X | O |
| bcm43430a11 | 7_45_41_26 | Raspberry Pi 3 and Zero W | Raspbian 8 | X | X | X | X | X | O |
| bcm43430a11 | 7_45_41_46 | Raspberry Pi 3 and Zero W | Raspbian Stretch | X | X | X | X | X | O |
| bcm43439a07 | 7_95_49 (2271bb6 CY) | Raspberry Pi Pico W | Pico SDK | X | X | X | X | ||
| bcm43451b1 | 7_63_43_0 | iPhone 6 | iOS 10.1.1 (14B100) | X | X | ||||
| bcm43455 | 7_45_77_0_hw | Huawei P9 | Android 7 Stock | X | X | X | X | X | |
| bcm43455 | 7_120_5_1_sta_C0 | Galaxy J7 2017 | ? | X | X | ||||
| bcm43455 | 7_45_77_0_hw(8-2017) | Huawei P9 | Android 7 Stock | X | X | X | X | X | |
| bcm434555 | 7_46_77_11_hw | Huawei P9 | Android 8 China Stock | X | X | X | X | X | |
| bcm43455 | 7_45_59_16 | Sony Xperia Z5 Compact | LineageOS 14.1 | X | X | X | X | X | |
| bcm43455c0 | 7_45_154 | Raspberry Pi B3+/B4 | Raspbian Kernel 4.9/14/19 | X | X | X | X | ||
| bcm43455c0 | 7_45_189 | Raspberry Pi B3+/B4 | Raspbian Kernel 4.14/19, 5.4 | X | X | X | X | ||
| bcm43455c0 | 7_45_206 | Raspberry Pi B3+/B4 | Raspberry Pi OS Kernel 5.4 | X | X | X | X | X | |
| bcm43455c0 | 7_45_234 (4ca95bb CY) | Raspberry Pi B3+/B4/5 | Raspberry Pi OS | X | X | ||||
| bcm43436b03 | 9_88_4_65 | Raspberry Pi Zero 2 W | Raspberry Pi OS Kernel 5.10 | X | X | X | X | X | |
| bcm4356 | 7_35_101_5_sta | Nexus 6 | Android 7.1.2 | X | X | X | X | O | |
| bcm4358 | 7_112_200_17_sta | Nexus 6P | Android 7 Stock | X | X | X | X | O | |
| bcm4358 | 7_112_201_3_sta | Nexus 6P | Android 7.1.2 Stock | X | X | X | X | O | |
| bcm43582 | 7_112_300_14_sta | Nexus 6P | Android 8.0.0 Stock | X | X | X | X | X | O |
| bcm43596a03 | 9_75_155_45_sta_c0 | Samsung Galaxy S7 | Android 7 Stock | X | O | X | |||
| bcm43596a03,2 | 9_96_4_sta_c0 | Samsung Galaxy S7 | LineageOS 14.1 | X | X | X | O | X | |
| bcm4375b13,5,6 | 18_38_18_sta | Samsung Galaxy S10 | Rooted + disabled SELinux | X | X | X | O | X | |
| bcm4375b13,5,6 | 18_41_8_9_sta | Samsung Galaxy S20 | Rooted + disabled SELinux | X | X | X | O | X | |
| bcm4389c15,8,9 | 20_82_42_sta (r994653) | Samsung Galaxy S22 Plus | Android 14, Rooted with Magisk | X | X | ||||
| bcm4389c15,8,9 | 20_101_36_2 (r994653) | Google Pixel 7 and 7 Pro | Rooted with Magisk | X | X | ||||
| bcm4389c15,8,9 | 20_101_57 (r1035009) | Google Pixel 7 and 7 Pro | Rooted with Magisk | X | X | ||||
| bcm4398d05,8,9 | 24_671_6_9 (r1031525) | Google Pixel 8 | Rooted with Magisk | X | X | ||||
| bcm6715b05 | 17_10_188_6401 (r808804) | Asus RT-AX86U Pro | Stock firmware 3.0.0.4_388.23565 | / | X | ||||
| qca95004 | 4-1-0_55 | TP-Link Talon AD7200 | Custom LEDE Image |
1 bcm43430a1 foi rotulado erroneamente como bcm43438 no passado.
2 use LD_PRELOAD=libnexmon.so em vez de LD_PRELOAD=libfakeioctl.so para injetar quadros por meio de ioctls
3 patches de flash precisam ter 8 bytes de comprimento e estar alinhados em um limite de 8 bytes
4 Chip Wi-Fi 802.11ad do primeiro roteador Wi-Fi de 60 GHz Talon AD7200. Corrija seu firmware usando nexmon-arc e execute-o com nossa imagem LEDE personalizada lede-ad7200
5 Desativamos a proteção de execução (chamada Execute Never) na região 1, porque ela interfere no código nexmon (Permission fault on Section)