xunholy/promptzero

GitHub: xunholy/promptzero

自然语言 AI 操作器,将 Flipper Zero 与 Marauder 转化为对话式渗透测试控制台。

Stars: 0 | Forks: 0

``` ██████╗ ██████╗ ██████╗ ███╗ ███╗██████╗ ████████╗ ██╔══██╗██╔══██╗██╔═══██╗████╗ ████║██╔══██╗╚══██╔══╝ ██████╔╝██████╔╝██║ ██║██╔████╔██║██████╔╝ ██║ ██╔═══╝ ██╔══██╗██║ ██║██║╚██╔╝██║██╔═══╝ ██║ ██║ ██║ ██║╚██████╔╝██║ ╚═╝ ██║██║ ██║ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ███████╗███████╗██████╗ ██████╗ ╚══███╔╝██╔════╝██╔══██╗██╔═══██╗ ███╔╝ █████╗ ██████╔╝██║ ██║ ███╔╝ ██╔══╝ ██╔══██╗██║ ██║ ███████╗███████╗██║ ██║╚██████╔╝ ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═════╝ [ AI-POWERED FLIPPER ZERO OPERATOR ] no limits // no filters ``` PromptZero 是一个自然语言 AI 操作器,用于 [Flipper Zero](https://flipperzero.one)。像与人交谈一样与你的 Flipper 互动。它生成有效载荷、部署并执行——全部只需一句话。 ## 它能做什么 PromptZero 通过 USB 串口连接到你的 Flipper Zero(以及可选的 ESP32 Marauder WiFi 开发板),然后通过 Claude 驱动的自然语言让你控制一切。 ``` promptzero> make me a Starbucks WiFi captive portal Generated and deployed evil_portal to /ext/apps_data/evil_portal/index.html Evil portal started on Marauder devboard promptzero> scan for nearby WiFi networks and deauth the strongest one Found 12 access points. Strongest: "NETGEAR-5G" (-31 dBm, channel 6) Selected AP 0. Deauth attack running... promptzero> create a BadUSB payload that opens a reverse shell on Windows Generated and deployed badusb to /ext/badusb/generated_payload.txt Ready to execute — plug into target and run promptzero> what's this? [photo of a remote control] That's a Samsung BN59 series TV remote using the Samsung32 IR protocol. I can generate a complete remote file. Want me to create it? ``` ### 97 个工具,覆盖 5 个子系统 | 子系统 | 工具 | 能力 | |-----------|-------|-------------| | **Flipper Zero** | 34 | Sub-GHz 发射/接收、红外发射/接收、NFC 检测/模拟、RFID 读/写/模拟、iButton、GPIO、BadUSB、存储、应用启动器 | | **ESP32 Marauder** | 51 | WiFi 扫描、脱网、信标泛洪、探测请求泛洪、PMKID 捕获、邪恶门户、BLE 泛洪、蓝牙扫描、读卡器检测、网络侦察、战车道、MAC 欺骗 | | **AI 生成** | 7 | 邪恶门户 HTML、BadUSB DuckyScript、Sub-GHz .sub 文件、红外 .ir 遥控器、NFC .nfc 标签——全部通过自然语言描述生成 | | **智能** | 3 | 视觉分析(照片 -> 设备 ID + 攻击向量)、SD 卡应用/信号发现、设备注册表 | | **审计** | 3 | SQLite 审计日志、会话导出(JSON)、统计信息 | ## 架构 ``` ┌──────────────────────────────────────────────────────────────────┐ │ USER INPUT │ │ CLI / Web UI / Voice / MCP Client │ └──────────────┬───────────────────────────────────┬───────────────┘ │ │ v v ┌──────────────────────────┐ ┌─────────────────────────────┐ │ Claude Agent (tool use)│ │ Generation Pipeline │ │ 97 tools / audit log │────────>│ Claude / Ollama / OpenRouter│ │ risk classification │ │ generate -> deploy -> run │ └──────────┬───────────────┘ └─────────────────────────────┘ │ ┌─────┴──────┐ │ │ v v ┌──────────┐ ┌───────────┐ │ Flipper │ │ Marauder │ │ Zero │ │ ESP32 │ │ USB ACM │ │ USB ACM │ │ (serial) │ │ (serial) │ └──────────┘ └───────────┘ ``` ## 快速开始 ### 先决条件 ### 安装 ``` git clone https://github.com/xunholy/promptzero.git cd promptzero make build ``` ### 配置 ``` cp config.example.yaml config.yaml # 编辑 config.yaml — 设置您的 API 密钥和串口 ``` 或者使用环境变量: ``` export ANTHROPIC_API_KEY="sk-ant-..." export OPENAI_API_KEY="sk-..." # optional, for voice export OPENROUTER_API_KEY="sk-or-..." # optional, for multi-model generation ``` ### 运行 ``` # CLI 模式(默认) ./bin/promptzero # Web UI ./bin/promptzero --web # 带有 WiFi 开发板的自定义端口上的 Web UI ./bin/promptzero --web --web-port 3000 --wifi # 带语音输入的 CLI ./bin/promptzero --voice # MCP 服务器(适用于 Claude Desktop / Claude Code) ./bin/promptzero --mcp # 使用本地 Ollama 进行有效载荷生成(零外泄) ./bin/promptzero --gen-provider ollama --ollama-model qwen2.5-coder:14b # 全部一起 ./bin/promptzero --web --wifi --voice ``` ## 模式 ### CLI(默认) 交互式 REPL。输入自然语言命令,获取结果。 ``` promptzero> scan the SD card and show me what signals I have saved promptzero> transmit the garage door signal promptzero> read the NFC tag on my desk ``` ### Web UI(`--web`) 深色主题浏览器界面,位于 `http://localhost:8080`。包括: - 带实时 WebSocket 通信的聊天界面 - 浏览器语音录制(无需 sox) - 状态指示器和会话管理 ### 语音(`--voice`) CLI 模式下的按键通话。按下回车键但不输入文本即可通过麦克风录制(需要 `sox`)。音频通过 OpenAI Whisper 转写,然后作为普通命令处理。 ### MCP 服务器(`--mcp`) 作为 [模型上下文协议](https://modelcontextprotocol.io/) 服务器运行,通过 stdio。使用方法: ## 生成流水线 核心差异化。描述你想要的内容,PromptZero 会创建它,写入 Flipper 并运行。 | 命令 | 发生过程 | |---------|-------------| | `"make me a Google login portal"` | AI 生成像素级 HTML -> 写入 `/ext/apps_data/evil_portal/index.html` -> 启动邪恶门户 | | `"create a reverse shell payload for macOS"` | AI 生成适用于 Flipper 的 DuckyScript -> 写入 `/ext/badusb/` -> 准备执行 | | `"I need a Samsung TV remote with all the buttons"` | AI 生成包含 NEC/Samsung32 协议命令的 .ir 文件 -> 写入 `/ext/infrared/` | | `"generate a 433MHz garage door signal"` | AI 生成包含正确编码的 .sub 文件 -> 写入 `/ext/subghz/` | ### 支持的有效载荷类型 - **邪恶门户** — 单文件 HTML 捕获门户(表单动作 `/get`,字段 `email`/`password`,最大 20KB,无外部资源) - **BadUSB** — Flipper 兼容的 DuckyScript,包含扩展命令(`STRINGLN`、`HOLD`/`RELEASE`、`MOUSEMOVE`、`MEDIA`、`SYSRQ`、`ID` 欺骗) - **Sub-GHz** — `.sub` 文件(解析键格式,含 52 种协议)和 RAW 格式(时序数据) - **红外** — `.ir` 文件(14 种协议,如 NEC、Samsung32、RC5、RC6、SIRC 等)和原始信号 - **NFC** — `.nfc` 文件(Mifare Classic、NTAG/Ultralight、ISO14443) ### 多提供者生成 ``` # 默认:Claude 生成有效载荷 ./bin/promptzero # 本地 Ollama:有效载荷永不离开您的机器 ./bin/promptzero --gen-provider ollama --ollama-model llama3.1 # OpenRouter:用于生成的任意模型 ./bin/promptzero --gen-provider openrouter ``` ## Flipper Zero 兼容性 ### 固件 针对已解锁全部功能的修改版固件进行测试: | 固件 | 状态 | |----------|--------| | **Momentum**(前身为 Xtreme) | 主要目标 | | **Unleashed** | 支持 | | **RogueMaster** | 支持 | | **官方(OFW)1.x** | 支持(功能受限——锁定频率、无额外协议) | ### 串口协议 - **连接**:USB CDC ACM(Linux 上为 `/dev/ttyACM0`) - **波特率**:对 CDC ACM 虚拟串口无意义(约定为 230400) - **DTR**:必须置位(自动处理) - **命令终止符**:`\r`(CR,0x0D) - **提示符**:`>: `(对子 shell 如 `[nfc]>: ` 进行 ANSI 转义剥离) - **文件写入**:使用 `storage write_chunk` 协议(非交互式 `storage write`) ### Marauder(WiFi 开发板) - **固件**:ESP32 Marauder v1.11.1+ - **连接**:USB CDC ACM(官方 Flipper WiFi 开发板为 `/dev/ttyACM1`) - **波特率**:115200 - **命令终止符**:`\n` - **提示符**:`> ` ## 构建 ``` make build # Build for current platform make run # Build and run make clean # Remove build artifacts make tidy # go mod tidy make lint # golangci-lint (requires golangci-lint installed) ``` ### 交叉编译 ``` GOOS=linux GOARCH=arm64 go build -o promptzero-linux-arm64 ./cmd/promptzero GOOS=darwin GOARCH=arm64 go build -o promptzero-darwin-arm64 ./cmd/promptzero GOOS=windows GOARCH=amd64 go build -o promptzero-windows-amd64.exe ./cmd/promptzero ``` ## 许可证 MIT 由 [Claude](https://claude.ai) 构建,贡献者 [xunholy](https://github.com/xunholy)
标签:AI 助理, AI 安全操作, AI风险缓解, AI 驱动的渗透测试, BLE 攻击, Claude 集成, ESP32, Evil Portal, EVTX分析, Flipper Zero, Marauder, PromptZero, USB 串行, WiFi 攻击, 开源安全工具, 无限制 AI, 日志审计, 生成式 AI, 硬件安全, 社会工程, 逆向工程平台