0day1day/Slave_I
GitHub: 0day1day/Slave_I
面向 M5Stack Tab5 的多协议无线安全研究固件,在 ESP32-P4 + C6 双芯片平台上集成 Wi-Fi、BLE 和 802.15.4 的侦察、抓包与测试工具,支持浏览器一键刷入和桌面模拟器开发。
Stars: 5 | Forks: 0
# Slave I
**适用于 M5Stack Tab5 的攻防安全固件。** 面向 ESP32-P4 (UI) + ESP32-C6 (无线电) 平台的无线研究工具包 —— 包含 Wi-Fi、BLE 和 802.15.4 的侦察与攻击工具,具备触摸 UI、物理键盘工作流以及用于开发的桌面模拟器。
## ⚠️ 合法与道德使用声明
Slave I 是一款用于**安全研究与教育**的工具。请**仅**在你拥有或获得**明确授权**的网络和设备上使用。
未经授权发送取消认证帧、运行恶意接入点或抓取流量在**大多数司法管辖区都是违法的**。你需对自己使用该固件的行为负全部责任。作者按“原样”提供此固件,不提供任何担保,也不承担任何责任。
真心话:别当个蠢货或脚本小子。
## 硬件要求
- **M5Stack Tab5** —— 搭载 ESP32-P4(应用 + LVGL UI),并通过 Espressif 的 `esp_hosted` 链路 (SDIO) 连接板载 **ESP32-C6** 无线电模块。
- **microSD** 卡(用于保存抓包、日志、门户模板)。
- 可选:M5 I2C 智能键盘或 USB HID 键盘(两者均可用于操作 UI 导航)。
## 功能特性
**已在硬件上实现并测试:**
- **Wi-Fi** —— 支持 2.4/5 GHz 扫描、Evil Twin、deauth、强制门户(内置模板 + 从 SD 卡加载的自定义模板),以及将握手包 / EAPOL 抓取并保存为 `.pcap`。
- **BLE** —— 扫描并解析设备厂商(基于 company-ID + OUI 数据库)。
- **附近设备** —— 统一的 Wi-Fi + BLE 雷达,按信号强度排序。
- **802.15.4 / Zigbee** —— 能量扫描、设备嗅探(包含 PAN、EUI-64、厂商、类型、LQI)、原始帧抓取为 `.pcap`(可在 Wireshark 中打开),支持全信道跳频模式。
- **文件管理器** —— 支持在 SD 卡上浏览 / 创建 / 删除 / 复制 / 剪切 / 粘贴文件,并内置文本编辑器。
- **系统** —— RTC 日期/时间(持久化保存)、结构化的 SD 卡日志记录、实时 KPI 监控、主题切换、物理键盘导航。
- **桌面模拟器** —— 整个 UI 可在你的电脑上运行(基于 LVGL/SDL),便于快速迭代开发。
**计划中 —— 取决于社区兴趣:**
- **Sub-GHz (CC1101)、2.4 GHz NRF24、NFC 和 IR** —— 通过 **ULTRA** 扩展板实现。
PCB 已**设计完毕**;如果**社区有需求,我就会生产它并发布配套的固件支持**。如果你会用到它,请在仓库里告诉我——这决定了它是否会进入生产阶段。
- ESP-NOW 工具集。
## 安装说明
**使用浏览器一键刷入:** 在 Chrome 或 Edge 中打开 **[web flasher](https://0day1day.github.io/Slave_I/)**,通过 USB-C 连接 Tab5,然后点击 *Install* 即可。这就是完整的安装过程 —— ESP32-C6 的无线电固件已被打包在 P4 镜像中,并会在首次启动时自动完成配网(会显示 *ARMING RADIO* 界面约 15 秒,随后重启一次)。无需 microSD,也无需进行第二步操作。
喜欢用数据线?可以使用 `esptool` 配合发布版中的 `*-p4-factory.bin` 文件。完整指南和流程图详见 **[INSTALL.md](INSTALL.md)**。
二进制文件已附在每个 [GitHub release](https://github.com/0day1day/Slave_I/releases) 中。
## 从源码构建
环境要求:CMake ≥ 3.24、SDL2(macOS 上使用 `brew install sdl2`)、Python 3.11+,以及 **ESP-IDF 5.4.2**(仅在构建设备端固件时需要)。
```
./scripts/bootstrap.sh # fetch vendored deps (LVGL, json)
# 桌面模拟器(无需硬件):
./scripts/build-desktop.sh
./scripts/run-desktop.sh # or ./scripts/dev-desktop.sh to watch+rebuild
# 设备端 (Tab5):
./scripts/build-tab5.sh
./scripts/flash-tab5.sh # flashes the P4
./scripts/deploy-c6.sh # OTA-flashes the C6 radio firmware
./scripts/test.sh # unit tests
```
## 架构设计
Slave I 的工作负载分布在两块芯片上:**P4** 负责 UI 展示与任务调度,**C6** 则负责运行原生无线电引擎并执行具体的攻击指令,两者通过托管链路上的 RPC 协议进行驱动。C6 固件被直接嵌入在 P4 镜像中,并在首次启动时通过无线方式自动完成配网部署。
## 许可证与致谢
MIT 许可证 —— 详见 [`LICENSE`](LICENSE)。Slave I 基于 M5Stack 的 M5Tab5-UserDemo 及其他开源项目构建;完整的归属说明请参阅 [`CREDITS.md`](CREDITS.md)。
标签:Bash脚本, ESP32, 固件开发, 客户端加密, 物联网安全, 逆向工具, 防御绕过