st4lk3r-unit/BeamStalker

GitHub: st4lk3r-unit/BeamStalker

一个跨平台的模块化嵌入式 RF 实验固件,统一多目标 UI 与服务,专注无线研究与实验协作。

Stars: 0 | Forks: 0

![](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/a0f8625eba174714.png)

知识应当免费 🏴‍☠️

# BeamStalker BeamStalker 是一个围绕共享 UI、服务和后端抽象层构建的模块化嵌入式 RF 实验固件。 它针对具有不同显示和输入方法的多个目标平台,同时保持用户体验、命令接口和内部应用模型的一致性。 BeamStalker 最初从 [Neutrino](https://github.com/st4lk3r-unit/neutrino) 固件骨架启动,随后扩展为独立的多目标 RF 平台。 ## 🖥️ 支持的目标平台 | 目标平台 | 状态 | 显示 | 输入 | 备注 | |---|---:|---|---|---| | `native` | ✅ | SDL2 桌面窗口 | 键盘 | Linux 调试目标 | | `native-headless` | ✅ | 无 | konsole / 标准输入 | 无头 Linux 目标 | | `esp32s3-tpager` | ✅ | 480×222 ST7796 | 键盘 + 编码器 | 主力手持目标 | | `esp32s3-tdongle-s3` | ✅ | 160×80 ST7735 | 单按钮 | 紧凑式 Dongle 目标 | | `esp32s3-cardputer` | ✅ | 240×135 ST7789 | 键盘 | 紧凑式键盘目标 | | `esp32s3-heltec-v3` | ✅ | 128×64 SSD1306 | 单按钮 | 最小 OLED 目标 | | `cardputer-adv` | 🚧 | 暂未确定 | 暂未确定 | 开发中 | ## 📡 当前无线后端 | 后端 | 状态 | 备注 | |---|---:|---| | Wi-Fi (ESP32) | ✅ | 扫描、捕获、AP 风格工具、取决于目标/后端的原始 802.11 功能 | | BLE (ESP32) | ✅ | 扫描 + 广播工具 | | 原生 Linux | ✅ | 调试 / UI / 服务开发目标 | | 其他射频后端 | 🚧 | 通过抽象层规划中 | ## ✨ 功能特性 当前固件包含以下功能: - 多目标 UI,共享导航模型 - 原生 Linux 目标用于开发与调试 - Wi-Fi 扫描(被动 AP 发现,按 RSSI 排序) - Wi-Fi 数据包捕获至 `.pcap`(DLT_IEEE802_11) - Wi-Fi 信标泛洪 - Wi-Fi 解除认证(广播 + 定向,可配置原因码) - WPA2 EAPOL 握手捕获——被动嗅探或解除认证触发,写入 hashcat 兼容的 `.pcap`(`-m 22000`) - captive portal(手动伪造 AP) - 邪恶双胞胎(克隆 AP + 信道切换/解除认证诱饵 + 门户) - 蜜罐(广播或定向客户端诱饵 + 门户) - 魅力攻击(探测响应注入 + 门户) - BLE 扫描 - BLE 广播泛洪 - 设备日志与状态视图 - 通过串口/控制台提供 Konsole 命令接口,实现完整控制而不依赖设备 UI - 结构化 SD 卡布局:所有文件位于 `BeamStalker/` 下,按工具划分子文件夹 ## 🛠️ 构建流程 BeamStalker 使用 PlatformIO 进行构建。 ### 依赖要求 在构建前,请确保已**克隆仓库及其子模块**: ``` git clone --recurse-submodules https://github.com/st4lk3r-unit/BeamStalker.git cd BeamStalker/firmware ``` 如果已克隆仓库但未包含子模块: ``` git submodule update --init --recursive ``` 你还需要以下工具: * Python * [PlatformIO](https://platformio.org/) * 所选目标平台对应的工具链 ### 构建示例 ``` # 原生桌面 pio run -e native # 原生无头 pio run -e native-headless # LilyGO T-Pager pio run -e esp32s3-tpager # LilyGO T-Dongle-S3 pio run -e esp32s3-tdongle-s3 # M5Stack Cardputer pio run -e esp32s3-cardputer # Heltec WiFi LoRa 32 V3 pio run -e esp32s3-heltec-v3 ``` ## ⚡ 烧录与部署 构建完成后,可直接使用 PlatformIO 烧录: ``` pio run -e esp32s3-tpager -t upload ``` 你也可以使用 [发布版本](https://github.com/st4lk3r-unit/BeamStalker/releases/latest) 配合外部烧录工具,具体取决于目标板和启动流程: * `esptool.py` * 浏览器烧录工具,例如 [`esptool-js`](https://espressif.github.io/esptool-js/) * 启动器,例如 [`M5Launcher`](https://github.com/bmorcelli/Launcher),在适用情况下使用 ## 🎮 控制方式 BeamStalker 在不同目标上提供统一交互模型,即使物理输入方式不同。 抽象导航模型围绕以下按键构建: * **上 / 下 / 左 / 右** * **回车 / 确认** * **返回** * 根据目标可选的额外快捷键 这意味着全键盘目标、旋转编码器目标和单按钮目标均可驱动相同的 UI 逻辑。 ### 🧭 UI 映射 在键盘导向的目标上,默认的思维模型如下: * `W A S D` → 导航 * `Enter` → 确认 * `Backspace` → 返回 部分目标也提供: * 方向键 * 旋转编码器导航 * 单按钮导航模式 * 板级特定快捷键(如有) ### ⌨️ Konsole BeamStalker 也可通过 **Konsole**(基于串口/控制台的命令接口)进行控制。 这在物理输入有限或操作不便的目标上尤为重要,例如 Dongle 和单按钮板卡。 Konsole 的设计目标是: * 不依赖设备 UI 即可实现完整目标控制 * 提供更适合自动化与测试的工作流 * 为后续脚本化和开机命令执行提供路径 ## 🙏 感谢与灵感来源 以下项目与个人对 BeamStalker 产生了直接或间接影响: * [st4lk3r-unit/neutrino](https://github.com/st4lk3r-unit/neutrino) 提供原始固件模板与早期架构基础 * [@sdardouchi](https://github.com/sdardouchi) 负责 GitHub Pages 工作与旧式手机/嵌入式社区围绕 [OperationSE](https://github.com/OperationSE) 的生态 * [@Eun0us](https://github.com/Eun0us) 在 ESP 控制台流程与 [Shell-ESP32](https://github.com/Eun0us/Shell-ESP32) 方面的研究与思路 * [@bmorcelli](https://github.com/bmorcelli) 提供 [M5Launcher](https://github.com/bmorcelli/Launcher) 及手持固件生态相关工作 * [@pr3y](https://github.com/pr3y) 提供 [Bruce Firmware](https://github.com/pr3y/Bruce) * [@7h30th3r0n3](https://github.com/7h30th3r0n3) 提供 [Evil-M5Project](https://github.com/7h30th3r0n3/Evil-M5Project) * [@Spacehuhn](https://github.com/SpacehuhnTech) 在 ESP 原始 Wi-Fi 工具方面的先验研究与实践 同时感谢推动社区向前的所有项目:**知识应当免费 🏴‍☠️** *由 akpalanaza 有趣制作。
标签:ASN信息, BLE广告, BLE扫描, DLT_IEEE802_11, ESP32, ESP32-S3, Linux开发目标, PCAP, RF实验, RSSI排序, SSD1306, ST7735, ST7789, ST7796, UML, Wi-Fi信标泛洪, Wi-Fi去认证, Wi-Fi扫描, Wi-Fi抓包, Wildcard支持, 伦理探索, 共享UI, 协作平台, 单按钮输入, 后端抽象, 多目标平台, 客户端加密, 射频实验, 嵌入式固件, 开发调试, 开源固件, 开源硬件, 无线实验, 服务抽象层, 桌面调试, 模块化固件, 知识免费, 编码器输入, 被动AP发现, 键盘输入