Christbowel/siphon

GitHub: Christbowel/siphon

一款完全本地运行的AI驱动Web漏洞猎杀工具,结合本地LLM推理引擎与传统脚本扫描器双轨道并行检测,能像渗透测试员一样思考并输出可直接提交的漏洞报告。

Stars: 1 | Forks: 0

[![Header](https://capsule-render.vercel.app/api?type=waving&color=0:0d1117,50:2d1b69,100:4a0080&height=200§ion=header&text=SIPHON&fontSize=80&fontColor=bf00ff&animation=fadeIn&fontAlignY=38&desc=Autonomous%20AI%20Bug%20Hunter&descAlignY=60&descColor=d4aaff)](https://github.com/Christbowel/siphon) [![Typing SVG](https://readme-typing-svg.demolab.com?font=JetBrains+Mono&weight=600&size=20&pause=1000&color=BF00FF¢er=true&vCenter=true&width=700&lines=100%25+local+%C2%B7+No+API+keys+%C2%B7+No+cloud;Thinks+before+it+tests+%E2%80%94+like+a+real+pentester;Dual-Track%3A+LLM+reasoning+%2B+script+scanners;Your+data+never+leaves+your+machine)](https://git.io/typing-svg) ``` ███████╗██╗██████╗ ██╗ ██╗ ██████╗ ███╗ ██╗ ██╔════╝██║██╔══██╗██║ ██║██╔═══██╗████╗ ██║ ███████╗██║██████╔╝███████║██║ ██║██╔██╗ ██║ ╚════██║██║██╔═══╝ ██╔══██║██║ ██║██║╚██╗██║ ███████║██║██║ ██║ ██║╚██████╔╝██║ ╚████║ ╚══════╝╚═╝╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝ ``` **自主 AI 驱动的 Web 漏洞猎手** *100% 本地运行 · 无需 API 密钥 · 无云服务 · 一键启动* [![License: MIT](https://img.shields.io/badge/License-MIT-8A2BE2?style=for-the-badge)](LICENSE) [![Python](https://img.shields.io/badge/Python-3.11+-3776AB?style=for-the-badge&logo=python&logoColor=white)](https://python.org) [![Docker](https://img.shields.io/badge/Docker-required-2496ED?style=for-the-badge&logo=docker&logoColor=white)](https://docker.com) [![Ollama](https://img.shields.io/badge/Ollama-local_LLM-00d4ff?style=for-the-badge)](https://ollama.ai) [![Status](https://img.shields.io/badge/status-active-00ff88?style=for-the-badge)]() [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen?style=for-the-badge)](CONTRIBUTING.md)
## 什么是 SIPHON? 大多数安全工具要么是只会用误报淹没你的傻瓜扫描器,要么是基于云的 AI 包装器,会将你的目标数据发送到第三方服务器。 SIPHON 两者都不是。 SIPHON 是一个完全自主的漏洞猎杀代理,**在测试之前会先思考**。它完全在你的机器上运行,在一个隔离的 Docker 容器内。你的目标 URL、你的发现、你的侦察数据——这些都不会离开你的网络。没有 OpenAI。没有 Anthropic。没有 API 密钥。没有订阅。 你用一个命令启动它。SIPHON 像真正的浏览器一样抓取目标,捕获每一个 API 调用和 POST 主体,然后让本地 LLM 对其发现进行推理——形成假设、建模服务器行为、测试业务逻辑——就像经验丰富的渗透测试员思考目标那样。同时,专门的扫描器覆盖技术攻击面。每一个发现都会在到达你手中之前得到验证。没有噪音。没有浪费时间。 结果:一份你真正可以提交的报告。 ``` $ ./start.sh https://target.com ███████╗██╗██████╗ ██╗ ██╗ ██████╗ ███╗ ██╗ ... Target : https://target.com Model : qwen2.5-coder:7b (local) Mode : Dual-Track (Reasoning + Scripts) Phase 1 Fingerprinting Stack: Spring · WAF: none Phase 2 Cartography 127 endpoints · 43 API calls · 12 params Phase 3 Hunt Track A ▶ /api/v1/orders reasoning engine Track B ▶ 6 scanners running sqli · xss · idor · ... 🔴 [HIGH] IDOR on /api/v1/orders/{id} confidence: 0.92 🟡 [MEDIUM] Missing security header confidence: 1.00 Hunt complete 2 confirmed · 0 false positives · reports in ./reports/ ``` ## 主要功能
### 🧠 会思考,而不只是扫描 Track A 使用本地 LLM 对服务器进行建模,识别信任假设,并测试假设。它在尝试破坏端点之前,先理解端点*做*什么。而不是盲目地向参数投放载荷。 ### 🔗 跨端点记忆 SIPHON 在运行过程中构建整个应用程序的心智模型。在 `/api/profile` 上发现的用户 ID 会在 `/api/orders`、`/api/payments` 以及其他任何地方进行测试。大多数扫描器永远无法建立这种联系。
### 📡 捕获真实流量 Playwright 爬虫拦截浏览器发出的每一个 XHR 调用、API 请求和 POST 主体,而不仅仅是页面上的链接。SIPHON 调查应用程序*实际做*什么,而不是 HTML 中可见的内容。 ### ⚡ 精英模块链 确认的发现会输入到链式模块中:盲注、OAuth 深度测试、竞争条件利用、缓存投毒、HTTP 走私。一个发现演变成一条杀伤链。
### 🎯 零误报容忍 每一个发现都会在进入报告之前通过专用验证器。没有将软 404 确认为路径遍历。没有将反射字符串误认为是 XSS。你得到的是真实的发现。 ### 🔒 设计上 100% 隐私 容器是网络隔离的。它只能到达目标和你的本地 Ollama 实例,其他一切都受阻。你的侦察、你的发现、你的方法论:全属于你,在你的机器上。
## 工作原理 代理完全在 Docker 容器内运行。它只能到达目标 URL 和你主机上的 Ollama——其他一切都受阻。你永远不需要进入容器;结果直接流式传输到你的终端,报告生成在你机器上的 `./reports/` 中。 ``` Your terminal Docker container (isolated) │ │ │ ./start.sh https://target.com │ │────────────────────────────────────────>│ │ │ │ Phase 0 : Auth │ Finds login form, attempts auth │ │ │ Phase 1 : Fingerprinting │ Stack, WAF, endpoints │ │ │ Phase 2 : Cartography │ Playwright browser crawl │ Captures XHR, API calls, POST bodies │ │ │ Phase 3 : Hunt (parallel) │ ┌───────────────┴───────────────┐ │ Track A Track B │ LLM reasoning Script scanners │ Hypothesis testing SQLi, XSS, IDOR │ Business logic Mass assignment │ Cross-endpoint memory Cache poisoning │ └───────────────┬───────────────┘ │ │ │ Phase 4-6 : Chain, Validate, Report │ │ │ <── findings stream in real time ──────│ │ <── reports saved to ./reports/ ───────│ ``` **双轨道引擎** 是 SIPHON 的独特之处: **Track A** 使用本地 LLM,接收每个端点及其真实捕获的请求方法、标头、完整 POST 主体,并像渗透测试员一样对其进行推理。它对服务器做什么进行建模,识别信任假设,形成假设,测试假设,并保持跨端点记忆以发现整个应用程序中的模式。 **Track B** 并行运行专门的 Python 扫描器,每个扫描器专注于特定的漏洞类别,具有专用的载荷和确认逻辑。两条轨道同时运行,结果在保存前进行交叉验证。 ## 为什么选择 SIPHON 而不是其他工具? | 功能 | SIPHON | CAI | PentestGPT | Nuclei | |---|:---:|:---:|:---:|:---:| | 完全本地,无 API 密钥 | ✅ | ❌ | ❌ | ✅ | | LLM 推理引擎 | ✅ | ✅ | ✅ | ❌ | | 完全自主 | ✅ | 部分 | ❌ | ✅ | | 一键启动 | ✅ | ❌ | ❌ | ✅ | | 假设驱动测试 | ✅ | ❌ | ❌ | ❌ | | 业务逻辑检测 | ✅ | 部分 | 部分 | ❌ | | 跨端点记忆 | ✅ | ❌ | ❌ | ❌ | | POST 主体捕获 | ✅ | ❌ | ❌ | ❌ | | 误报验证 | ✅ | 部分 | ❌ | ❌ | | 可提交的报告 | ✅ | ❌ | 部分 | ❌ | ## 架构 ``` ┌─────────────────────────────────────┐ │ SIPHON │ └──────────────┬──────────────────────┘ │ ┌────────────────────┼────────────────────┐ ▼ ▼ ▼ ┌─────────────┐ ┌───────────────┐ ┌──────────────┐ │ Phase 0 │ │ Phase 1-2 │ │ Phase 3 │ │ Auth │ │ Fingerprint │ │ Hunt │ │ (optional) │ │ Cartography │ │ Dual-Track │ └─────────────┘ └───────────────┘ └──────┬───────┘ │ ┌──────────────┴──────────────┐ ▼ ▼ ┌─────────────────┐ ┌──────────────────┐ │ TRACK A │ │ TRACK B │ │ LLM Reasoning │ │ Script Scanners │ │ │ │ │ │ • Hypothesis │ │ • IDOR / BOLA │ │ formation │ │ • SQLi │ │ • Cross-ep. │ │ • XSS │ │ memory │ │ • Auth bypass │ │ • Business │ │ • Mass assign. │ │ logic testing │ │ • Cache poison. │ └────────┬────────┘ └────────┬─────────┘ └──────────┬────────────────┘ ▼ ┌─────────────────┐ │ Validation │ │ (anti-FP) │ └────────┬────────┘ ▼ ┌─────────────────┐ │ Reports │ │ Markdown · PDF │ └─────────────────┘ ``` ## 前置条件 - Linux(推荐 Kali, Parrot, Ubuntu 或 Debian) - [Docker](https://docs.docker.com/get-docker/) + Docker Compose - 最低 8GB RAM(大型模型推荐 16GB) - 仅首次设置需要互联网连接 如果尚未安装,Ollama 将自动安装。 ## 安装说明 **步骤 1 克隆** ``` git clone https://github.com/Christbowel/siphon.git cd siphon ``` **步骤 2 一次性设置** ``` chmod +x install.sh ./install.sh ``` 如果缺失则安装 Ollama,拉取默认模型,构建 Docker 镜像,创建 reports 目录。运行一次。 **步骤 3 复制配置** ``` cp config/config.example.yaml config/config.yaml ``` 默认配置开箱即用。仅当你想更改模型或抓取设置时才需编辑。 ## 运行 SIPHON **未认证扫描** ``` ./start.sh https://target.com ``` **针对本地测试目标 (DVWA)** ``` ./dvwa.sh ``` 在 Docker 中启动 DVWA 并自动对其启动 SIPHON。适合演示和测试。 **检查栈状态** ``` ./start.sh --status ``` **停止一切** ``` ./start.sh --stop ``` 报告在扫描运行时生成在你主机的 `./reports/` 中——无需进入容器。 ## 配置 ``` local: model: qwen2.5-coder:7b # any model from `ollama list` host: http://host.docker.internal:11434 crawl: use_playwright: true # full browser crawl (recommended) max_pages: 150 max_depth: 4 hunt: max_endpoints: 20 # endpoints Track A investigates max_steps: 4 # LLM steps per endpoint track_a: true track_b: true ``` **支持的模型** | 模型 | RAM | 最适合 | |---|---|---| | `qwen2.5-coder:7b` | 8GB | 默认均衡 | | `mistral:7b` | 8GB | 快速运行 | | `deepseek-coder:6.7b` | 8GB | API 和代码分析 | | `llama3:8b` | 10GB | 强推理能力 | | `qwen2.5-coder:14b` | 16GB | 最佳效果 | ## SIPHON 检测什么 **Track A — LLM 推理引擎** LLM 接收每个端点及其真实捕获的请求,并逐步对其进行推理:建模服务器行为、识别信任假设、形成假设、测试假设、观察结果。它保持跨端点记忆以发现跨越整个应用程序的模式。 `IDOR / BOLA` `身份验证绕过` `权限提升` `业务逻辑` `批量赋值` `竞争条件` `JWT 篡改` `参数污染` `HTTP 动词篡改` **Track B — 脚本扫描器 + 精英模块** 专门的扫描器并行运行,每个专注于特定类别,具有专用载荷和确认逻辑。确认的发现自动链接到精英模块以进行更深入的利用。 `SQLi (报错 · 盲注 · 时间盲注)` `XSS (反射型 · 存储型 · DOM)` `SSRF` `开放重定向链` `敏感文件暴露` `HTTP 走私` `缓存投毒` `原型污染` `OAuth 深度测试` `盲注链` `竞争条件利用` `安全标头分析` ## 报告 ``` reports/ └── target.com_2025-01-15_1430/ ├── 001_idor_high.md ├── 002_auth-bypass_critical.md └── 00_summary.md ``` 每个发现包括:描述、复现步骤、概念验证请求和响应、影响、CVSS 评分和修复建议。可直接粘贴到 HackerOne 或 Bugcrowd。 ## 负责任的使用 SIPHON 仅用于授权的安全测试。仅对你拥有的目标、活跃的漏洞赏金计划范围内的目标,或像 DVWA、HackTheBox 或 TryHackMe 这样有意设为脆弱的环境运行它。 切勿在没有明确书面授权的系统上运行 SIPHON。你对如何使用此工具负全部责任。 有关负责任的披露政策,请参阅 [SECURITY.md](SECURITY.md)。 ## 贡献 欢迎 PR。关于如何添加扫描器模块、改进提示词或修复错误,请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。 贡献最有用的领域:新的 Track B 模块、针对特定模型的更好提示词、WAF 绕过技术、web3 支持。
[![Footer](https://capsule-render.vercel.app/api?type=waving&color=0:4a0080,50:2d1b69,100:0d1117&height=100§ion=footer)](https://github.com/Christbowel/siphon) 用 ♥ 为漏洞赏金社区构建 · 请负责任地使用
标签:AI安全, AI风险缓解, Chat Copilot, CISA项目, DLL 劫持, Docker, LLM评估, Ollama, Python, Web安全, 双重引擎, 大语言模型, 安全防御评估, 密码管理, 无API密钥, 无后门, 本地LLM, 特征检测, 网络安全, 网络安全, 自动化攻击, 自动漏洞检测, 蓝队分析, 请求拦截, 逆向工具, 防御加固, 隐私保护, 隐私保护