gitstq/VulnPilot
GitHub: gitstq/VulnPilot
VulnPilot 是一款纯 Python 编写的零依赖轻量级 Web 应用安全漏洞智能扫描器,帮助开发者和安全工程师在开发阶段快速发现 OWASP Top 10 常见漏洞。
Stars: 0 | Forks: 0
__ __ _ _ _____ _ _ _______ _____
| \/ (_)_ __ (_) __ \ _ __ _____ ___ _| \ | |_ _|_ _|
| |\/| | | '_ \| | | _) | '__/ _ \ \/ / | | | \| | | | | |
| | | | | | | | | |__> | | | (_) > <| |_| | |\ | | | | |
|_| |_|_|_| |_|_|_____/|_| \___/_/\_\\__, |_| \_| |_| |_|
|___/
Lightweight Web Application AI Security Vulnerability Scanner
` 一行命令启动 |
| **智能检测** | 内置 7 大专业扫描器,覆盖 OWASP Top 10 主要漏洞类别 |
| **多格式报告** | 支持 Text(彩色终端)、JSON、HTML、Markdown 四种报告输出 |
| **CI/CD 友好** | 内置 CI 模式,通过退出码和 JSON 输出无缝集成到流水线中 |
### 🔥 解决的痛点
- **传统扫描工具过于臃肿**:动辄数百 MB 的安装包,复杂的依赖链,VulnPilot 整个项目仅由若干 `.py` 文件组成,拷贝即用
- **CI/CD 集成困难**:很多扫描工具缺乏结构化的输出和标准化的退出码,VulnPilot 原生支持 `--ci` 模式,发现漏洞即返回非零退出码
- **离线环境受限**:无法安装依赖的安全隔离环境?VulnPilot 只需要 Python 3.8+ 解释器,无网络也能运行
- **快速安全检查门槛高**:开发者想要一个简单的安全自检工具,却不得不学习复杂的配置,VulnPilot 提供合理的默认值,零配置即可使用
### ✨ 差异化亮点
- 🧬 **智能 Payload 变异引擎**:内置 7 种变异策略(URL 编码、双重编码、Unicode 编码、大小写变换、HTML 实体编码、注释插入、空字节注入),有效绕过 WAF 和输入过滤
- 🎨 **精美的终端 UI**:彩色输出、进度条、动画 Spinner、格式化表格,让命令行工具也能赏心悦目
- 🔌 **可扩展的扫描器架构**:基于插件式设计,新增扫描器只需继承 `BaseScanner` 类并实现 `scan()` 方法
- 📊 **自定义规则系统**:通过 JSON 规则文件灵活控制扫描行为,包括启用/禁用扫描器、自定义请求头、排除路径等
- 🛡️ **安全第一**:明确要求仅对授权目标进行扫描,内置速率限制和扫描上限保护
### 🌟 灵感来源
VulnPilot 的设计灵感来源于安全工程师在日常开发和渗透测试中的真实需求——我们需要一个**轻量、快速、可靠**的安全扫描工具,能够在开发流程的早期阶段快速发现常见漏洞,而不必部署重量级的商业扫描器。正如飞行员在起飞前会进行系统性的安全检查清单一样,VulnPilot 帮助开发者在代码上线前完成 Web 应用的安全预检。
## ✨ 核心特性
### 🔍 七大专业扫描器
| 扫描器 | 覆盖漏洞 | OWASP 分类 | CWE 编号 |
|--------|----------|------------|----------|
| **SQL 注入扫描器** | 错误型、布尔盲注、时间盲注 | A03:2021 - Injection | CWE-89 |
| **XSS 扫描器** | 反射型 XSS、DOM-based XSS | A03:2021 - Injection | CWE-79 |
| **SSRF 扫描器** | 内部 IP 探测、协议走私、云元数据访问 | A10:2021 - SSRF | CWE-918 |
| **安全头检测器** | 缺失安全响应头、Cookie 配置缺陷 | A05:2021 - Security Misconfiguration | CWE-693 |
| **信息泄露检测器** | 技术指纹识别、敏感文件暴露、调试信息 | A01:2021 - Broken Access Control | CWE-200 |
| **路径穿越扫描器** | 目录遍历、本地文件包含(LFI) | A01:2021 - Broken Access Control | CWE-22 |
| **开放重定向扫描器** | URL 重定向滥用、钓鱼攻击向量 | A01:2021 - Broken Access Control | CWE-601 |
### 🧬 智能 Payload 变异引擎
VulnPilot 内置强大的 Payload 变异系统,通过多种编码和混淆策略有效绕过常见的输入过滤和 WAF 防护:
原始 Payload:
变异策略输出:
URL 编码: %3Cscript%3Ealert('XSS')%3C/script%3E
双重 URL 编码: %253Cscript%253Ealert('XSS')%253C/script%253E
Unicode 编码: \u003cscript\u003ealert('XSS')\u003c/script\u003e
HTML 实体编码: <script>alert('XSS')</script>
大小写变换:
注释插入: