Shanmukhasrisai/vulnscan

GitHub: Shanmukhasrisai/vulnscan

VulnScan 是一款企业级 API 渗透测试平台,通过多协议智能 Fuzzing 和漏洞模板覆盖 OWASP Top 10 检测,帮助安全团队在攻击者之前发现现代 API 架构中的关键漏洞。

Stars: 0 | Forks: 0

# VulnScan ## 企业级 API 渗透测试平台 [![Python 3.8+](https://img.shields.io/badge/Python-3.8%2B-blue)](https://www.python.org/downloads/) [![MIT License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE) [![Security Focused](https://img.shields.io/badge/Security-Focused-red.svg)] **VulnScan** 是一款高性能、专业级的 API 漏洞扫描器和渗透测试平台,专为安全团队、渗透测试人员和云安全审计人员设计。VulnScan 通过智能 fuzzing、可自定义的模板、多协议支持以及跨现代微服务架构和云基础设施的全面 API 漏洞检测,提供企业级的安全测试能力。 VulnScan 专为应对现代安全挑战而构建,使安全专业人员能够在攻击者之前发现关键漏洞。 ## VulnScan 的独特之处 VulnScan 通过专门专注于**以 API 为中心的安全测试**,与其他通用漏洞扫描器区别开来: - 🎯 **API 优先架构**:针对 REST、GraphQL、SOAP、gRPC 和 WebSocket API 的专用检测引擎 - 🔄 **智能协议适配**:自动协议检测和上下文感知的漏洞测试 - 🧬 **高级变异 Fuzzing**:ML 辅助的 payload 生成和特定于协议的变异策略 - 🔐 **认证框架测试**:全面的 JWT、OAuth 2.0、SAML、mTLS 和 API 密钥漏洞检测 - ⚡ **实时分析**:即时漏洞识别,并附带详细的漏洞利用链分析 - 🛠️ **以开发者为中心的 API**:简洁的 Python SDK,用于无缝的安全自动化和 CI/CD 集成 - ☁️ **云原生支持**:专为 AWS、Azure 和 GCP 安全评估而构建 - 📊 **企业级可扩展性**:专为大规模安全操作和合规审计而设计 ## 核心功能 ### 高级 API 安全测试 #### 多协议支持 **REST API 安全** - Endpoint 枚举和参数发现 - 注入测试(SQLi、NoSQL、命令注入、XPath) - 认证和授权绕过检测 - API 速率限制和暴力破解漏洞识别 **GraphQL 安全** - 查询复杂性分析和 DoS 检测 - Introspection 提取和 schema 枚举 - 批量攻击和别名注入测试 - 嵌套 resolver 中的授权绕过 **SOAP API 测试** - WSDL 分析和操作枚举 - XML 注入和 XXE (XML External Entity) 检测 - WS-Security 认证绕过 - SOAP action 欺骗检测 **gRPC 安全** - Protocol buffer fuzzing - 认证和 interceptor 测试 - 消息篡改检测 - Unary 和流式 RPC 漏洞扫描 **WebSocket 测试** - 实时消息注入 - 连接劫持和 session 固定 - 跨站点 WebSocket 劫持 (CSWSH) - 消息级认证绕过 #### 核心漏洞检测 VulnScan 检测 API 漏洞,包括 **OWASP API 安全 Top 10** 和各种**常见漏洞和暴露 (CVE)**: - **SQL 注入**:多数据库检测(MySQL、PostgreSQL、Oracle、MSSQL) - **NoSQL 注入**:MongoDB、CouchDB 及其他 NoSQL 查询注入 - **跨站脚本攻击 (XSS)**:反射型、存储型和基于 DOM 的检测 - **跨站请求伪造 (CSRF)**:Token 验证和攻击向量识别 - **远程代码执行 (RCE)**:命令注入和表达式语言注入 - **路径遍历**:目录遍历和文件包含漏洞 - **服务器端请求伪造 (SSRF)**:内部网络访问和云元数据服务攻击 - **认证绕过**:认证失效、缺少授权、权限提升 - **不安全的反序列化**:对象注入和 gadget chain 攻击 - **API 密钥暴露**:硬编码凭据和 token 泄露检测 - **OWASP Top 10 覆盖**:全面检测 OWASP API 安全 Top 10 漏洞 - **CVE 检测**:针对已知漏洞的自动化扫描,并附带 CVSS 评分和影响评估 ### 可自定义的模板 **模板系统** - 基于 YAML 的漏洞定义格式 - 支持复杂的多步骤攻击链 - 自定义 payload 库和变异策略 - 条件逻辑和动态变量替换 **预置模板** - 500+ 精选漏洞模板 - 特定行业的安全检查(医疗保健、金融、电子商务) - 合规性模板(PCI-DSS、HIPAA、GDPR) - 活跃的社区模板仓库 **自定义模板开发** ``` template: name: "Custom API Authentication Bypass" severity: high protocol: rest requests: - method: POST path: "/api/auth/login" headers: Content-Type: "application/json" body: | {"username": "{{username}}", "password": "{{payload}}"} payloads: - "' OR '1'='1" - "admin' --" - "{\"$ne\": null}" detection: - status_code: 200 - response_contains: "token" - response_time: "<500ms" ``` ## 安装与快速开始 **前置条件** - Python 3.8 或更高版本 - pip 包管理器 - 虚拟环境(推荐) **安装** ``` # Clone 仓库 git clone https://github.com/Shanmukhasrisai/vulnscan.git cd vulnscan # 创建 virtual environment python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate # 安装 dependencies pip install -r requirements.txt # 安装 VulnScan pip install -e . ``` **快速开始 - 基础扫描** ``` # 扫描单个 API endpoint vulnscan scan --url https://api.example.com/v1 # 使用自定义 template 扫描 vulnscan scan --url https://api.example.com --template jwt-bypass # 带 authentication 的高级扫描 vulnscan scan \ --url https://api.example.com \ --header "Authorization: Bearer YOUR_TOKEN" \ --template full-audit \ --output report.json ``` **Python SDK 示例** ``` from vulnscan import VulnScanner from vulnscan.templates import SQLInjectionTemplate # 初始化 scanner scanner = VulnScanner( target_url="https://api.example.com", headers={"Authorization": "Bearer YOUR_TOKEN"}, timeout=30 ) # 添加 templates scanner.add_template(SQLInjectionTemplate()) scanner.add_template("owasp-top-10") # 执行扫描 results = scanner.scan() # 处理结果 for vuln in results.vulnerabilities: print(f"Found: {vuln.name} - Severity: {vuln.severity}") print(f"Location: {vuln.url}") print(f"Recommendation: {vuln.remediation}") # 生成报告 report = results.generate_report(format="html") report.save("vulnerability_report.html") ``` ## 高级配置 **配置文件 (vulnscan.yaml)** ``` target: url: "https://api.example.com" base_path: "/api/v1" authentication: type: "oauth2" credentials: client_id: "your_client_id" client_secret: "your_client_secret" token_url: "https://auth.example.com/token" scanning: threads: 10 timeout: 30 rate_limit: 100 # requests per second user_agent: "VulnScan/1.0 Security Audit" templates: - "sql-injection" - "xss-detection" - "authentication-bypass" - "api-security-owasp" reporting: output_format: ["json", "html", "pdf"] severity_threshold: "medium" include_false_positives: false advanced: follow_redirects: true verify_ssl: true proxy: "http://proxy.example.com:8080" custom_headers: X-API-Version: "2.0" audit_storage: false check_metadata_service: false ``` ## 安全考虑 ⚠️ **法律声明**:VulnScan 是一款渗透测试工具,仅设计用于授权的安全评估。请仅在以下系统上使用此工具: - 您拥有的系统 - 您获得明确书面授权的系统 - 授权的渗透测试项目 **未经授权访问计算机系统是非法的。** 在进行安全评估之前,请务必确保您拥有适当的书面授权。 ## License 本项目采用 MIT License 授权 - 详情请参阅 [LICENSE](LICENSE) 文件。 ## 支持与资源 - 📖 **[完整文档](https://github.com/Shanmukhasrisai/vulnscan/wiki)** - 全面的指南和 API 参考 - 🐛 **[问题追踪器](https://github.com/Shanmukhasrisai/vulnscan/issues)** - 报告 Bug 和请求功能 - 💬 **[社区讨论](https://github.com/Shanmukhasrisai/vulnscan/discussions)** - 提问和分享经验 - 🔒 **[安全建议](https://github.com/Shanmukhasrisai/vulnscan/security)** - 私下报告安全问题 ## 免责声明 VulnScan 仅供教育和专业安全测试目的提供。作者和贡献者不对本工具的误用或造成的损害负责。在进行安全评估时,请务必确保您拥有适当的授权,并遵守适用的法律和法规。本工具仅限合格的安全专业人员在其获得授权测试的系统上使用。 **用 ❤️ 为安全社区打造**
标签:API安全, CISA项目, JSON输出, LNA, Python, Python工具, 密码管理, 无后门, 自动化安全评估, 逆向工具