
Firmware Predatório para ESP32

# :shark: Bruce
Bruce é um firmware versátil para ESP32 repleto de ferramentas de segurança ofensiva, criado para tornar operações de Red Team rápidas e portáteis.
Ele também suporta produtos da [M5Stack](https://shop.m5stack.com), [LILYGO](https://lilygo.cc), [RockBase IoT](https://www.rockbaseiot.com) e [Elecrow](https://www.elecrow.com), e funciona muito bem com os Cardputer, Sticks, M5Cores, T-Decks e T-Embeds.
## :zap: Obtenha Nosso DevKit Oficial!
# RF REAPER
**RF REAPER** é o nosso devkit PCB personalizado, projetado especificamente para o Bruce!
Todos os principais recursos funcionam nativamente, prontos para uso. Sub-GHz, NFC/RFID, IR, 2.4GHz (NRF), pronto para GPS e um microSD, tudo movido por um potente ESP32-S3 (16MB Flash / 8MB PSRAM). Muitos GPIOs via expansor AW9523, além da compatibilidade com os conectores Flipper Zero e iButton, permitem que você hackeie, modifique e construa nele sem limites. Quer uma função específica? Peça-nos através de uma issue; vamos verificar.
👉 **[Compre o RF REAPER e as placas oficiais](https://shop.bruce.computer)**
**Confira também nosso hardware totalmente open-source:** https://bruce.computer/boards
Mais placas devkit personalizadas em breve! Acompanhe nossas comunidades!
## :building_construction: Como instalar
### A maneira mais fácil de instalar o Bruce é usando nosso Web Flasher oficial!
### Confira: https://bruce.computer/flasher
Alternativamente, você pode baixar o binário mais recente das releases ou actions e gravar localmente usando o esptool.py
```sh
esptool.py --port /dev/ttyACM0 write_flash 0x00000 Bruce-<device>.bin
```
**Para dispositivos m5stack**
Se você já usa o M5Launcher para gerenciar seu dispositivo m5stack, pode instalá-lo via OTA
Ou você pode gravá-lo diretamente pela [ferramenta m5burner](https://docs.m5stack.com/en/download); basta procurar por 'Bruce' (minhas compilações oficiais serão enviadas por "owner" e terão fotos.) na categoria de dispositivo que você quiser e clicar em burn
## :keyboard: Servidor no Discord
Fale conosco em nosso [Servidor no Discord](https://discord.gg/WJ9XF9czVT)!
## :bookmark_tabs: Wiki
Para mais informações sobre cada função suportada pelo Bruce, [leia nossa wiki aqui](https://wiki.bruce.computer/).
Também [leia nossas FAQ](https://wiki.bruce.computer/faq/)
## :computer: Lista de Recursos
<details>
<summary><h2>WiFi</h2></summary>
- [x] Conectar ao WiFi
- [x] AP WiFi
- [x] Desconectar WiFi
- [x] [Ataques WiFi](https://wiki.bruce.computer/features/wifi/#wifi-atks)
- [x] [Spam de Beacons](https://wiki.bruce.computer/features/wifi/#beacon-spam)
- [x] [Ataque a Alvo](https://wiki.bruce.computer/features/wifi/#target-atks)
- [x] Informações
- [x] Deauth direcionado
- [x] EvilPortal + Deauth
- [x] Flood de Deauth (mais de um alvo)
- [x] [Wardriving](https://wiki.bruce.computer/features/gps/#wardriving)
- [x] [TelNet](https://wiki.bruce.computer/features/wifi/#telnet)
- [x] [SSH](https://wiki.bruce.computer/features/wifi/#ssh)
- [x] [Sniffer RAW](https://wiki.bruce.computer/features/wifi/#raw-sniffer)
- [x] [Cliente TCP](https://wiki.bruce.computer/features/wifi/#client-tcp)
- [x] [Listener TCP](https://wiki.bruce.computer/features/wifi/#listen-tcp)
- [x] [Evil Portal](https://wiki.bruce.computer/features/wifi/#evil-portal)
- [x] [Varredura de Hosts](https://wiki.bruce.computer/features/wifi/#scan-hosts) (com varredura de portas TCP)
- [x] [Responder](https://wiki.bruce.computer/features/wifi/#responder)
- [x] [ARP Spoofing](https://wiki.bruce.computer/features/wifi/#arp-spoofing)
- [x] [ARP Poisoning](https://wiki.bruce.computer/features/wifi/#arp-poisoning)
- [x] [Túnel WireGuard](https://wiki.bruce.computer/features/wifi/#wireguard-tunneling)
- [x] Brucegotchi
- [x] Amigo do Pwnagotchi
- [x] Spam de faces e nomes no Pwngrid
- [x] [Opcional] DoScreen com nome e face bem longos
- [x] [Opcional] Inundar identificadores únicos de pares
</details>
<details>
<summary><h2>BLE</h2></summary>
- [x] [Varredura BLE](https://wiki.bruce.computer/features/ble/#ble-scan)
- [x] Bad BLE - Executar scripts Ducky, semelhante ao [BadUsb](https://wiki.bruce.computer/features/ble/#badble)
- [x] Teclado BLE - Apenas Cardputer e T-Deck
- [x] Spam iOS
- [x] Spam Windows
- [x] Spam Samsung
- [x] Spam Android
- [x] Spam para todos
</details>
<details>
<summary><h2>RF</h2></summary>
- [x] Escanear/Copiar
- [x] [SubGhz personalizado](https://wiki.bruce.computer/features/rf/#replay-payloads-like-flipper)
- [x] Espectro
- [x] Jammer Full (envia uma onda quadrada completa para a saída)
- [x] Jammer Intermitente (envia sinal PWM para a saída)
- [x] Configuração
- [x] Pino RF TX
- [x] Pino RF RX
- [x] Módulo RF
- [x] RF433 T/R M5Stack
- [x] [CC1101 (Sub-Ghz)](https://wiki.bruce.computer/features/rf/#cc1101)
- [x] Frequência RF
- [x] Replay
</details>
<details>
<summary><h2>RFID</h2></summary>
- [x] Ler tag
- [x] Ler 125kHz
- [x] Clonar tag
- [x] Escrever registros NDEF
- [x] Amiibolink
- [x] Chameleon
- [x] Escrever dados
- [x] Apagar dados
- [x] Salvar arquivo
- [x] Carregar arquivo
- [x] Configuração
- [x] [Módulo RFID](https://wiki.bruce.computer/features/rfid/#supported-modules)
- [x] PN532
- [x] PN532Killer
- [ ] Emular tag
</details>
<details>
<summary><h2>IR</h2></summary>
- [x] TV-B-Gone
- [x] Receptor IR
- [x] [IR personalizado (NEC, NECext, SIRC, SIRC15, SIRC20, Samsung32, RC5, RC5X, RC6)](https://wiki.bruce.computer/features/ir/#replay-payloads-like-flipper)
- [x] Configuração - [X] Pino Ir TX - [X] Pino Ir RX
</details>
<details>
<summary><h2>FM</h2></summary>
- [x] [Broadcast padrão](https://wiki.bruce.computer/features/fm/#broadcast-standard)
- [x] [Broadcast reservado](https://wiki.bruce.computer/features/fm/#broadcast-standard)
- [x] [Parar broadcast](https://wiki.bruce.computer/features/fm/#broadcast-stop)
- [ ] [Espectro FM](https://wiki.bruce.computer/features/fm/#fm-spectrum)
- [ ] [Sequestrar Anúncios de Trânsito](https://wiki.bruce.computer/features/fm/#hijack-ta)
- [ ] [Configuração](https://wiki.bruce.computer/features/fm/#bookmark_tabs-config)
</details>
<details>
<summary><h2>NRF24</h2></summary>
- [x] [NRF24 Jammer](https://wiki.bruce.computer/features/nrf24/)
- [x] Espectro 2.4G
- [ ] Mousejack
</details>
<details>
<summary><h2>Scripts</h2></summary>
- [x] [Intérprete JavaScript](https://wiki.bruce.computer/features/js-interpreter/) [Créditos para justinknight93](https://github.com/justinknight93/Doolittle)
</details>
<details>
<summary><h2>Outros</h2></summary>
- [x] Espectro do microfone
- [x] [QRCodes](https://wiki.bruce.computer/features/others/#qrcodes)
- [x] Personalizado
- [x] PIX (sistema de transferência bancária do Brasil)
- [x] [Gerenciador do SD Card](https://github.com/pr3y/Bruce/wiki/Others#sd-card-mngr)
- [x] Ver imagem (jpg)
- [x] Informações do arquivo
- [x] [Enviar para Wigle](https://wiki.bruce.computer/features/gps/#how-to-use-wigle)
- [x] Reproduzir áudio
- [x] Ver arquivo
- [x] Gerenciador LittleFS
- [x] [WebUI](https://wiki.bruce.computer/controlling-device/webui/)
- [x] Estrutura do servidor
- [x] HTML
- [x] Gerenciador SDCard
- [x] Gerenciador Spiffs
- [x] Megalodon
- [x] [BADUsb (Novos recursos, LittleFS e SDCard)](https://wiki.bruce.computer/features/others/#badusb)
- [x] Teclado USB - Apenas Cardputer e T-Deck
- [x] [iButton](https://wiki.bruce.computer/features/others/#ibutton)
- [x] Controle de LED
</details>
<details>
<summary><h2>Relógio</h2></summary>
- [x] Suporte a RTC
- [x] Ajuste de horário via NTP
- [x] Ajuste manual
</details>
<details>
<summary><h2>Conectar (ESPNOW)</h2></summary>
- [x] Enviar arquivo
- [x] Receber arquivo
- [x] Enviar comandos
- [x] Receber comandos
</details>
<details>
<summary><h2>Configuração</h2></summary>
- [x] Brilho
- [x] Tempo para escurecer
- [x] Orientação
- [x] Cor da interface
- [x] Som de inicialização liga/desliga
- [x] Relógio
- [x] Suspensão
- [x] Reiniciar
</details>
## Funções específicas por dispositivo; as não mencionadas aqui estão disponíveis para todos.
| Dispositivo | CC1101 | NRF24 | Rádio FM | PN532 | Microfone | BadUSB | LED RGB | Alto-falante | Medidor de Bateria | LITE_VERSION |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----: | :---: | :------: | :------------------: | :--: | :----: | :-----: | :-----: | :--------: | :----------: |
| [M5Stack Cardputer](https://shop.m5stack.com/products/m5stack-cardputer-kit-w-m5stamps) (e ADV) | :ok: | :ok: | :ok: | :ok: | :ok: | :ok: | :ok: | NS4168 | :x: | :x: |
| [M5Stack M5StickC PLUS2](https://shop.m5stack.com/products/m5stickc-plus2-esp32-mini-iot-development-kit) | :ok: | :ok: | :ok: | :ok: | :ok: | :ok:¹ | :x: | Tone | :x: | :x: |
| [M5Stack M5StickC PLUS](https://shop.m5stack.com/products/m5stickc-plus-esp32-pico-mini-iot-development-kit) | :ok: | :ok: | :ok: | :ok: | :ok: | :ok:¹ | :x: | Tone | :x: | :x:² |
| [M5Stack M5Core BASIC](https://shop.m5stack.com/products/basic-core-iot-development-kit) | :ok: | :ok: | :ok: | :ok: | :ok: | :ok:¹ | :x: | Tone | :x: | :x: |
| [M5Stack M5Core2](https://shop.m5stack.com/products/m5stack-core2-esp32-iot-development-kit-v1-1) | :ok: | :ok: | :ok: | :ok: | :ok: | :ok:¹ | :x: | :x: | :x: | :x: |
| [M5Stack M5CoreS3](https://shop.m5stack.com/products/m5stack-cores3-esp32s3-lotdevelopment-kit)/[SE](https://shop.m5stack.com/products/m5stack-cores3-se-iot-controller-w-o-battery-bottom) | :ok: | :ok: | :ok: | :ok: | :x: | :ok: | :x: | :x: | :x: | :x: |
| [JCZN CYD‑2432S028](https://www.aliexpress.us/item/3256804774970998.html) | :ok: | :ok: | :ok: | :ok: | :x: | :ok:¹ | :x: | :x: | :x: | :x:² |
| [Lilygo T‑Embed CC1101](https://lilygo.cc/products/t-embed-cc1101) | :ok: | :ok: | :ok: | :ok: | :ok: | :ok: | :ok: | :ok: | :ok: | :x: |
| [Lilygo T‑Embed](https://lilygo.cc/products/t-embed) | :ok: | :ok: | :ok: | :ok: | :ok: | :ok: | :ok: | :ok: | :x: | :x: |
| [Lilygo T-Display-S3](https://lilygo.cc/products/t-display-s3) | :ok: | :ok: | :x: | :x: | :x: | :ok: | :x: | :x: | :x: | :x: |
| [Lilygo T‑Deck](https://lilygo.cc/products/t-deck) ([e pro](https://lilygo.cc/products/t-deck-plus-1)) | :ok: | :x: | :x: | :x: | :x: | :ok: | :x: | :x: | :x: | :x: |
| [Lilygo T-Watch-S3](https://lilygo.cc/products/t-watch-s3) | :x: | :x: | :x: | :x: | :x: | :ok: | :x: | :x: | :x: | :x: |
| [Lilygo T-LoRa Pager](https://lilygo.cc/products/t-lora-pager) | :x: | :x: | :x: | :x: | :x: | :ok: | :x: | :x: | :x: | :x: |
| [Smoochiee V2](https://www.pcbway.com/project/shareproject/Bruce_PCB_Smoochiee_d6a0284b.html) | :ok: | :ok: | :x: | :ok: | :x: | :ok: | :x: | :x: | :x: | :x: |
| [ESP32-C5](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32c5/esp32-c5-devkitc-1/user_guide.html) | :ok: | :ok: | :x: | :ok: | :x: | :x: | :x: | :x: | :x: | :x: |
| [Bruce RF Reaper](https://www.elecrow.com/bruce-pcb-rf-reaper.html) | :ok: | :ok: | :x: | :ok: mas c/ ST25R3916 | :x: | :ok: | :ok: | :x: | :ok: | :x: |
| [Elecrow 24B](https://www.elecrow.com/2-4inch-esp32-miner-lcd-display-2pcs-cryptocurrency-solo-miner-with-1000kh-s-hashrate.html) | :ok: | :ok: | :ok: | :ok: | :x: | :ok:¹ | :x: | :x: | :x: | :x:² |
| [Elecrow 3.5"](https://www.elecrow.com/esp-terminal-with-esp32-3-5-inch-parallel-480x320-tft-capacitive-touch-display-rgb-by-chip-ili9488.html) | :ok: | :ok: | :ok: | :ok: | :x: | :ok:¹ | :x: | :x: | :x: | :x:² |
| [NM-CYD-C5 + RF HAT](https://https://rockbase.shop/products/nm-cyd-c5-colorful) | :ok: | :ok: | :x: | :ok: | :x: | :ok: | :ok: | :x: | :ok: | :x: |
² CYD tem uma versão LITE_VERSION para compatibilidade com o Launcher
¹ Bad-USB do Core, CYD e StickCs: [aqui](https://wiki.bruce.computer/features/others/#badusb)
_LITE_VERSION_: TelNet, SSH, WireGuard, ScanHosts, RawSniffer, Brucegotchi, BLEBacon, BLEScan e Interpreter NÃO estão disponíveis para compatibilidade com o M5Launcher
## :sparkles: Por que e como ele se parece?
Bruce nasce de uma observação perspicaz dentro da comunidade focada em dispositivos como o Flipper Zero. Embora esses dispositivos oferecessem um vislumbre do mundo da segurança ofensiva, havia a sensação palpável de que algo mais poderia ser alcançado sem ser tão superfaturado, principalmente com o ecossistema de hardware robusto e modular fornecido pelos dispositivos ESP32 e pelos produtos Lilygo e M5Stack.





Outras mídias podem ser [encontradas aqui](https://github.com/brucedevices/firmware/blob/main/media).
## :clap: Agradecimentos
- [@bmorcelli](https://github.com/bmorcelli) pelo novo core e por um monte de novos recursos, além de portar para muitos dispositivos!
- [@IncursioHack](https://github.com/IncursioHack) por adicionar recursos dos módulos RF e RFID.
- [@Luidiblu](https://github.com/Luidiblu) pela assistência com o logotipo e o design da interface.
- [@eadmaster](https://github.com/eadmaster) por adicionar muitos recursos.
- [@rennancockles](https://github.com/rennancockles) por muito código RFID, refatoração e outros recursos.
- [@7h30th3r0n3](https://github.com/7h30th3r0n3) pela refatoração e muita ajuda com ataques WiFi.
- [@Tawank](https://github.com/Tawank) pela refatoração do interpretador, entre muitas outras coisas
- @pablonymous pelas funções de RF para ler dados RAW
- [Smoochiee](https://github.com/smoochiee) pelo design da PCB do Bruce.
- TH3_KR4K3N pelo design da PCB extensor do Stick cplus.
- A todos que contribuíram de alguma forma com o projeto, obrigado :heart:
Bruce também se apoia em outros grandes projetos de firmware open-source, que inspiraram recursos e código em todo o projeto:
- [ESP32Marauder](https://github.com/justcallmekoko/ESP32Marauder) por [@justcallmekoko](https://github.com/justcallmekoko) — kit de ferramentas ofensivas WiFi/Bluetooth.
- [Launcher](https://github.com/bmorcelli/Launcher) por [@bmorcelli](https://github.com/bmorcelli) — o launcher/bootloader multi-aplicativos para os dispositivos.
- [Evil-M5Project](https://github.com/7h30th3r0n3/Evil-M5Project) por [@7h30th3r0n3](https://github.com/7h30th3r0n3) — suíte de ataques WiFi para M5Stack.
- [M5Stick-Nemo](https://github.com/n0xa/m5stick-nemo) por [@n0xa](https://github.com/n0xa) — firmware multitool para dispositivos M5Stick.
Bruce é construído sobre muitas bibliotecas de software livre, e partes dos módulos de RF e NFC/RFID são derivadas de outros projetos. Consulte [THIRD_PARTY.md](https://github.com/brucedevices/firmware/blob/main/THIRD_PARTY.md) para detalhes de atribuição de terceiros e conformidade com copyleft.
## :construction: Aviso Legal
Bruce é uma ferramenta para operações ofensivas cibernéticas e de red team, distribuída sob os termos da Licença Pública Geral Affero (AGPL). Ela é destinada exclusivamente a testes de segurança legais e autorizados. O uso deste software para qualquer atividade maliciosa ou não autorizada é estritamente proibido. Ao baixar, instalar ou usar o Bruce, você concorda em cumprir todas as leis e regulamentos aplicáveis. Este software é fornecido gratuitamente e não aceitamos pagamentos por cópias ou modificações. Os desenvolvedores do Bruce não assumem responsabilidade por qualquer uso indevido do software. Use por sua conta e risco.