Jedvanaways/nrf-research-firmware-windows

GitHub: Jedvanaways/nrf-research-firmware-windows

将 Bastille 的 nRF24 无线研究固件工具链移植到 Windows,提供预编译固件、Python 3 刷写嗅探工具和带 AI 助手的浏览器控制台,方便在 Windows 上对罗技无线接收器进行安全研究与流量分析。

Stars: 0 | Forks: 0

# nrf-research-firmware-windows [Bastille Networks 的 nRF24 研究固件工具](https://github.com/BastilleResearch/nrf-research-firmware) 的 Windows 移植版,带有一个基于浏览器的控制台,用于扫描、嗅探和传输 nRF24 流量。 固件本身是 Bastille 的,从未修改过的上游源码构建。本仓库新增了: - Logitech Unifying 刷写工具以及 `nrf24-scanner` / `nrf24-sniffer` 工具的 **Python 3 移植版** - **预构建的固件二进制文件**(`firmware/dongle.formatted.bin` + `.ihx`),这样你就不需要在 Windows 上安装 SDCC - **Windows 驱动更换操作指南**(Zadig → WinUSB,针对 C52B → AAAA → 1915:0102 的三阶段操作) - **Web 应用**(`app/`),可以从浏览器驱动刷写好的接收器,带有可选的 Claude 驱动的助手, 能够以自然语言扫描、嗅探和分析抓包数据 ## 支持的硬件 | 产品 ID | 描述 | 可刷写? | |---|---|---| | `046D:C52B` | Logitech Unifying 接收器(基于 Nordic,Bolt 之前) | ✅ 如果固件版本低于 `RQR012.09` | | `046D:C532` | Unifying 接收器(较新) | ✅ 如果未打补丁 | | `046D:C534` | Unifying 接收器(Logi C-U0008) | ✅ 如果未打补丁 | | `046D:C539` / `C53A` / `C53F` | Lightspeed G 接收器 | ✅ 如果未打补丁 | | `046D:C548` / `C547` / `C54D` | **Bolt** 接收器(BLE) | ❌ 不是 nRF24 | | `1915:0007` | Nordic Semiconductor nRF24LU1+ 开发板 | ✅(原生) | 位于 `tools/check-logitech-receiver.ps1` 的检查脚本(如果存在于姊妹仓库中,或者你可以从上游的 `.github` 中提取)会告诉你插入的接收器属于哪个类别。 ## 快速入门 1. 从 [python.org](https://www.python.org/downloads/windows/) **安装 Python 3.10+** —— Microsoft Store 版本也可以。 2. **安装依赖**(建议在 venv 虚拟环境中进行): git clone https://github.com/Jedvanaways/nrf-research-firmware-windows cd nrf-research-firmware-windows py -m venv .venv .venv\Scripts\Activate.ps1 pip install -r requirements.txt 3. **插入一个可刷写的 Logitech 接收器** 并确认: Get-PnpDevice -PresentOnly | Where-Object { $_.InstanceId -match 'VID_046D.*PID_C52B' } 4. **刷写固件** —— 详见 [`docs/flashing.md`](docs/flashing.md)。简版如下: - 使用 Zadig 将 `046D:C52B` 切换为 WinUSB([docs/zadig-driver-swap.md](docs/zadig-driver-swap.md)) - 运行 `py flasher/logitech-usb-flash.py firmware/dongle.formatted.bin firmware/dongle.formatted.ihx` - 使用 Zadig 将新的 `046D:AAAA` bootloader 切换为 WinUSB,重新运行刷写工具 - 使用 Zadig 将最终的 `1915:0102` 研究固件切换为 WinUSB 5. **启动控制台:** py app/app.py 在 打开。详见 [`app/README.md`](app/README.md)。 6. **或者直接使用 CLI 工具:** py tools/nrf24-scanner.py -v py tools/nrf24-sniffer.py -a AA:BB:CC:DD:EE ## 目录布局 ``` firmware/ Prebuilt firmware .bin + .ihx for the Logitech Unifying receiver flasher/ Python 3 port of Bastille's Logitech flash/restore scripts tools/ Python 3 port of Bastille's nrf24-scanner and nrf24-sniffer app/ Browser-based console (FastAPI + vanilla JS) docs/ Windows-specific runbooks upstream/ Provenance — commit SHA + link to Bastille upstream ``` ## 恢复原始的 Logitech 固件 详见 [`docs/restoring.md`](docs/restoring.md)。简版如下:从 Logitech 支持存档中获取原厂的 `RQR_012_005_00028.hex` 文件,并在 WinUSB 仍然绑定的状态下运行 `py flasher/logitech-usb-restore.py RQR_012_005_00028.hex`。接收器将恢复为普通的 HID 鼠标接收器。 ## 鸣谢 所有无线电协议的智能逻辑和固件本身都是 Bastille 的工作。本 仓库是一个 Windows 宿主工具的封装。完整的出处信息请参阅 [NOTICE](NOTICE),修改列表请参阅 [CHANGES.md](CHANGES.md)。 ## 许可证 GPLv3,继承自上游。详见 [LICENSE](LICENSE)。
标签:AI助手, AV绕过, Claude, CVE检测, FastAPI, Logitech, nRF24, nRF24LU1+, Python, Unifying, WinUSB, Zadig, 嗅探器, 固件刷写, 射频, 无后门, 无线电通信, 硬件黑客, 系统分析, 网络分析