arpitxp/esp32-bruce-wireless-pentest-deck
GitHub: arpitxp/esp32-bruce-wireless-pentest-deck
Stars: 1 | Forks: 0
# Bruce Smoochie:独立无线渗透测试平台
## 它是什么?
Smoochie Board 是一款紧凑的手持设备,将 Wi-Fi、Bluetooth/BLE、Sub-GHz RF、2.4 GHz IoT、红外、NFC/RFID 和 GPS 整合到一个独立的单元中。它运行定制版的 Bruce 固件,完全依靠电池运行——无需笔记本电脑。
该项目作为佩斯大学 (Pace University) 的毕业研究项目构建,专为授权的无线安全测试、渗透测试教育、红队实验室模拟和动手 IoT 安全研究而设计。
## 硬件
### 核心
| 组件 | 详情 |
|---|---|
| 微控制器 | ESP32-S3(双核,集成 Wi-Fi + BLE)|
| 显示屏 | 1.47" IPS TFT (172×320 RGB) |
| 存储 | 内部 Flash 上的 LittleFS(无需 SD 卡)|
| 电池 | 800mAh 锂离子电池,配备 TP4056 充电电路 |
| 续航时间 | 充满电后可进行约 2–3 小时的主动扫描 |
### 无线模块
| 模块 | 协议 | 频率 |
|---|---|---|
| 内置 (ESP32-S3) | Wi-Fi 802.11 b/g/n | 2.4 GHz |
| 内置 (ESP32-S3) | Bluetooth / BLE | 2.4 GHz |
| CC1101 | Sub-GHz RF | 315 / 433 / 868 / 915 MHz |
| nRF24L01+PA/LNA | 专有 IoT RF | 2.4 GHz |
| IR 收发器 | 红外(NEC, RC5 等)| — |
| PN532 | NFC / RFID | 13.56 MHz |
| NEO-6M | GPS (NMEA) | — |
## 系统架构
Smoochie Board 整合了多个无线收发器,由 ESP32-S3 通过 SPI、I2C 和 UART 总线进行协调。固件实现了一个模块化抽象层,允许在不重启的情况下切换协议。
- **SPI 总线:** CC1101, nRF24L01, TFT 显示屏
- **I2C 总线:** PN532 (NFC/RFID)
- **UART:** GPS 模块
- **内部 RF:** 通过 ESP32-S3 无线电实现 Wi-Fi 和 BLE
所有模块都在受控的电源管理下运行,以在多协议扫描期间保持稳定的电池性能。
## 功能特性
### Wi-Fi
- 实时网络扫描
- 加密类型识别(WEP, WPA, WPA2)
- 信号强度监控和 SSID 枚举
### 蓝牙 / BLE
- 附近设备发现
- 广播包观察
- 基本协议可见性和设备指纹识别
### Sub-GHz RF (CC1101)
- 在 315 / 433 / 868 / 915 MHz 频率上进行信号捕获和重放
- 演示遥控器、门铃和 IoT 传感器中的重放漏洞
- 实时频谱活动可视化
### 2.4 GHz IoT (nRF24L01)
- 针对低功耗 IoT 设备的数据包捕获和重放
- 演示不安全的通信通道
- 2.4 GHz 频段活动监控
### 红外
- 捕获来自消费类遥控器和设备的 IR 信号
- 重放命令以演示未经身份验证的 IR 控制
- 支持常见协议,包括 NEC 和 RC5
### NFC / RFID (PN532)
- 标签 UID 提取和显示
- ISO/IEC 14443-4 兼容标签识别
- MIFARE Classic 1K 卡检测
- 在受控环境中进行 RFID 安全研究
### GPS 记录
- 无线观测的位置标记(NMEA 数据)
- 支持信号与位置关联的 Wardriving
- 可导出至地图平台的日志
- 配备贴片天线时,户外 20–40 秒内可获得稳定的 GPS 定位
## 固件
Smoochie Board 运行 Bruce 固件,并带有自定义 C++ 扩展,用于:
- 通过 SPI、I2C 和 UART 进行多无线电协调
- 设备端信号捕获和重放工作流
- 基于 LittleFS 的持久化日志记录(取代 SD 卡)
- GPS 标记的事件日志记录
- 通过物理按键和 TFT 显示屏进行的统一菜单导航
- 针对野外使用优化的 2–3 小时功耗管理
## 测试结果
| 测试 | 结果 |
|---|---|
| RFID UID 读取 (MIFARE Classic 1K) | ✅ 成功 — UID 在 4cm 范围内显示在屏幕上 |
| GPS 卫星锁定(户外)| ✅ 20–40 秒内稳定定位 |
| 电池续航时间(主动扫描)| ✅ 800mAh 电池约 2–3 小时 |
| nRF24L01 信号捕获 | ✅ 已验证 |
| CC1101 Sub-GHz 检测 | ✅ 初始化确认 |
| IR 发送/接收 | ✅ 成功捕获和重放 |
| Wi-Fi 扫描 + 显示(电池供电)| ✅ 稳定,无需连线 |
## 仓库结构
```
smoochie-board/
|
├── firmware/ # Bruce firmware extensions and custom modules
├── hardware/ # Schematics, wiring diagrams, PCB files
├── docs/ # Documentation and architecture diagrams
├── images/ # Device photos and UI screenshots
├── LICENSE
└── README.md
```
## 使用流程
1. 开机 — 设备通过电池启动进入 Bruce 固件菜单
2. 选择协议模式(Wi-Fi, BLE, Sub-GHz, IR, NFC, GPS)
3. 在 TFT 显示屏上观察实时无线活动
4. 根据需要捕获或记录信号
5. 分析发现结果以识别弱点并改进防御
## 使用场景
- 无线安全教育和课堂实验室
- 授权的渗透测试和红队模拟
- IoT 协议漏洞研究
- 部署前的无线基础设施评估
- Wardriving 和 RF 信号测绘练习
- 针对网络安全学生和从业者的实操培训
## 道德使用与法律声明
本设备严格用于:
- 经明确书面授权的授权安全测试
- 受控环境下的教育和研究目的
- 合法的渗透测试项目
**所有无线测试必须在获得网络或设备所有者明确许可的情况下进行。未经授权的拦截或重放信号可能违反地方、州和联邦法律,包括《计算机欺诈与滥用法》(CFAA) 和类似法规。**
作者不对滥用本硬件或固件的行为承担任何责任。
## 作者
**CYB691 Capstone, Pace University**
- Arpit Dhameliya
## 许可证
MIT License
标签:2.4GHz通信, Bruce固件, CC1101, DOS头擦除, ESP32-S3, GPS定位, IoT漏洞, NFC, nRF24L01, PN532, Sub-GHz, Wardriving, Wi-Fi扫描, 低功耗蓝牙, 安全教培, 密码破解, 嵌入式系统, 手持式渗透工具, 掌上设备, 插件系统, 攻击模拟, 无线协议分析, 流量捕获, 物联网安全, 硬件黑客, 红外收发, 网络拓扑, 驱动签名利用