ESP32 Bit Pirate:一款支持所有协议的硬件破解工具(含 WebCLI)
- #硬件黑客
- #ESP32
- #多协议
- #开源固件
- #CLI
ESP32 Bit Pirate
ESP32 Bit Pirate 是一款开源固件,受传奇工具 Bus Pirate 启发,可将你的设备变为多协议黑客工具。它支持通过串口终端或基于 Web 的 CLI 嗅探、发送、脚本操控各种数字协议(I2C、UART、1-Wire、SPI 等),还能与蓝牙、Wi-Fi、Sub-GHz 和 RFID 等无线电协议通信。使用 ESP32 Bit Pirate Web Flasher 可一键安装固件。有关每种模式和命令的详细指南,请参阅 Wiki。脚本合集请查看 ESP32 Bit Pirate Scripts。硬件扩展方面,ESP32 Bus Expander 可添加额外无线电接口,ESP32 Bit Pirate Dock 可用于使用原始 Bus Pirate 的适配器和配件。
功能特性
- 通过 USB 串口或 WiFi Web 提供交互式命令行界面(CLI)
- 支持多种模式:
- HiZ(默认)
- I2C(扫描、故障注入、从机模式、转储、EEPROM)
- SPI(EEPROM、Flash、SD卡、从机模式)
- UART / 半双工 UART(桥接、读取、写入)
- 1WIRE(ibutton、EEPROM)
- 2WIRE(嗅探、智能卡)/ 3WIRE(EEPROM)
- DIO(数字 I/O:读取、上拉、设置、PWM)
- 红外(发送、录制、万能遥控)
- USB(HID、Flashrom、存储、USB-UART)
- 蓝牙(BLE HID、扫描、欺骗、嗅探)
- Wi-Fi / 以太网(嗅探、Deauth、Nmap、Netcat)
- JTAG(扫描、SWD、OpenOCD)
- LED(动画、设置 LED)
- I2S(测试扬声器、麦克风、播放声音)
- CAN(嗅探、发送和接收帧)
- SUBGHZ(分析、记录、重放)
- RFID(读取、写入、克隆)
- RF24(扫描、发送、接收)
- FM(分析、广播)
- CELL(转储 SIM 卡、短信、通话)
- 协议嗅探器:I2C、UART、SPI、1Wire、2wire、CAN、Wi-Fi、蓝牙、SubGhz
- UART 波特率自动检测、AT 命令及多种工具
- I2C 寄存器操作、EEPROM 转储工具、设备识别
- SPI 读取各类 EEPROM、Flash 及其他工具
- 使用 Bus Pirate 风格的字节码指令或 Python 进行脚本编程
- Device-B-Gone 命令支持超过 80 种红外协议
- 直接 I/O 管理、PWM、舵机、GPIO 状态
- 分析所有频段的无线电信号和频率
- 支持近 50 种可寻址 LED 协议
- 支持以太网和 WiFi 访问网络
- 通过 LittleFS over HTTP 导入导出数据
- 海盗助手可帮助你使用固件
- 可用作 USB-UART 转接头、SPI 编程器、逻辑分析仪等
支持的设备
| 设备 | 描述 |
|---|---|
| ESP32 S3 Dev Kit | 超过 20 个可用 GPIO,1 个按钮 |
| M5 Cardputer | 2 个 GPIO(Grove),屏幕,键盘,麦克风,扬声器,红外发射,SD 卡,电池,独立模式 |
| M5 Cardputer ADV | 12 个 GPIO(Grove,排针),屏幕,键盘,麦克风,扬声器,红外发射,SD 卡,IMU,电池,独立模式 |
| M5 Stick S3 | 13 个 GPIO(Grove,排针),屏幕,麦克风,扬声器,红外发射,红外接收,IMU,3 个按钮,电池 |
| M5 StampS3 | 9 个 GPIO(外露引脚),1 个按钮 |
| M5 AtomS3 Lite | 8 个 GPIO(Grove,排针),红外发射,1 个按钮 |
| LILYGO T-Display | 13 个 GPIO(1 个 Qwiic),屏幕,2 个按钮 |
| LILYGO T-Embed | 9 个 GPIO(Grove,排针),屏幕,编码器,扬声器,麦克风,SD 卡 |
| LILYGO T-Embed CC1101 | 4 个 GPIO(2 个 Qwiic),屏幕,编码器,扬声器,麦克风,SD 卡,CC1101,PN532,红外发射,红外接收,电池 |
| LILYGO T-Embed CC1101 Plus | 4 个 GPIO(2 个 Qwiic),屏幕,编码器,扬声器,麦克风,SD 卡,CC1101,NRF24,PN532,红外发射,红外接收,电池 |
| Seeed Studio Xiao S3 | 9 个 GPIO(外露引脚),1 个按钮 |
| 其他基于 ESP32-S3 的板子 | 所有基于 ESP32-S3 且至少拥有 8MB Flash 的板子均可支持。你可以将 s3 dev-kit 固件刷写到任何 ESP32-S3 板子上。但请注意,固件中的默认引脚映射可能与你的板子不匹配。 |
快速开始
🔧 刷写固件:使用 ESP32 Bit Pirate Web Flasher 直接从浏览器烧录固件。你也可以在 M5Burner 的 StickS3、AtomS3、M5StampS3 或 Cardputer 分类中烧录。
🔌 连接方式:
- 串口:任意终端应用(参见 Connect via Serial)
- Web:配置 Wi-Fi 并通过浏览器访问 CLI(参见 Wi-Fi Connection)
🧪 使用命令:例如 mode、help、scan、sniff 等。
Wiki 📚
访问 Wiki 获取每种模式和命令的详细文档,包括:
- 终端模式 - 关于串口和 Web 终端
- 模式概述 - 浏览支持的模式
- 串口设置 - 通过 USB 的串口访问
脚本 🛠️
通过串口使用 Python 脚本自动化 ESP32 Bit Pirate 的交互。示例和即用脚本可在仓库中找到:ESP32 Bit Pirate Scripts。包括:数据记录到文件、EEPROM 和 Flash 转储、与 GPIO 交互、LED 动画等。
扩展器 🔌
通过额外硬件模块扩展 ESP32 Bit Pirate 的能力。扩展器可添加对 WiFi 5GHz 或其他无线电协议的支持。
底座 🔧
为 ESP32 S3 DevKit 设计的底座,可与原始 Bus Pirate 适配器配合使用。允许你插入并使用原始 Bus Pirate 的适配器和配件生态系统。(即将推出)
命令行界面
ESP32 Bit Pirate 固件提供三种 CLI 模式:
| 接口 | 优势 | 理想场景 |
|---|---|---|
| Web 界面 | 可从任何浏览器访问(PC、平板、手机),通过 Wi-Fi 工作,无需线缆 | 快速测试、演示、无头设置 |
| 串口界面 | 性能更快,响应即时,流畅处理大数据 | 密集会话、频繁交互 |
| 独立模式 | 仅限 Cardputer,使用设备键盘和屏幕 | 便携会话、快速测试 |
| 所有接口共享相同的命令结构,可互换使用。 |
贡献
请参阅 How To Contribute 部分,其中概述了向任意模式添加新命令的简单方法。
视觉素材
查看图片、Logo、演示文稿、照片、视频、插图。这些素材可自由用于博客文章、文档、视频或文章,以帮助解释和推广该固件。
警告 ⚠️
- 电压警告:设备应仅在 3.3V 或 5V 下运行。不要连接其他电压等级的外设,否则可能损坏 ESP32。
- 使用警告:本固件仅供教育、诊断和互操作性测试使用。未经适当授权,请勿用于干扰、探测或操控设备。避免任何可能违反当地法规或干扰网络与通信的未经授权射频传输(例如 sub-GHz)。作者不对任何误用本软件或硬件的行为负责,包括因未经授权访问或信号发射导致的法律后果。请始终遵守贵国法律和负责任的披露政策。
关于
一款支持所有协议的硬件黑客工具(含基于 Web 的 CLI)。
评论