sreer22/VulnScan-Pro-Web-Application-Vulnerability-Scanner

GitHub: sreer22/VulnScan-Pro-Web-Application-Vulnerability-Scanner

一款基于 Python 和 Flask 构建的开源 Web 应用漏洞扫描器,集成 SQL 注入、XSS、CVE、WAF 检测、端口扫描与 WHOIS 查询等安全评估功能,并提供扫描历史仪表板。

Stars: 0 | Forks: 0

# VulnScan Pro — Web 应用程序漏洞扫描器 这是一个微型项目,作为获得 Namakkal 637 503 Mahendra Engineering College (Autonomous) 网络安全工程学士学位的部分要求提交。 Mahendra Engineering College (Autonomous), Namakkal – 637 503 ## 学年:2025–2026 # 👥 团队成员 ## 姓名 - 学号 1. Sreeyakeshrajan T - 6113231281086 2. Tharanidharan M - 6113231281090 3. Sureshkumar P - 6113231281088 4. Praveen K R - 611323128 3807 ### 指导教师: Ms. R. Jananipriya, M.E. ### 系主任: Dr. A. Neelamadheswari, M.E., Ph.D. # 📌 摘要 VulnScan Pro 是一款使用 Python 和 Flask 构建的先进开源 Web 应用程序漏洞扫描器。它执行涵盖以下内容的多维度安全评估: 1. SQL 注入检测 2. 跨站脚本攻击 (XSS) 探测 3. 通过服务器响应头进行 CVE 匹配 4. Web 应用程序防火墙 (WAF) 识别 5. 开放端口扫描 6. DNS/IP 解析、WHOIS 查询和子域名枚举(通过 crt.sh) 结果保存在 SQLite 数据库中,可通过扫描历史仪表板查看。UI 采用深色主题的玻璃拟态设计,并带有动画加载遮罩。 # 🛠️ 技术栈 ## 层级 - 技术 1. 后端 - Python 3, Flask 2. 数据库 - SQLite 3. 前端 - HTML, CSS, JavaScript 4. API - crt.sh (Certificate Transparency), NIST NVD 5. 库 - requests, socket, whois # ✨ 功能特性 ## 🔐 SQL 注入检测: 基于 payload 的测试,结合错误模式匹配 ## 🧨 XSS 检测: 带有响应分析的反射型 XSS 探测 ## 🗂️ CVE 查询: 将服务器指纹与本地 CVE 数据库进行匹配 ## 🛡️ WAF 检测: 识别 Cloudflare、Sucuri、Incapsula ## 🔌 端口扫描: 检查常用端口(80、443、8080、3306 等) ## 🌐 DNS 和 WHOIS: 域名解析和注册信息 ## 📋 子域名枚举: 通过 crt.sh Certificate Transparency 日志 ## 🕓 扫描历史仪表板: 由 SQLite 支持的持久化历史记录,包含统计数据 # 📁 项目结构 vulnscan-pro/ │ ├── app.py # Flask 应用程序与路由处理程序 ├── scanner.py # 核心扫描引擎 ├── cve_db.py # 本地 CVE 数据库 ├── templates/ │ ├── index.html # 主扫描器 UI │ └── dashboard.html # 扫描历史仪表板 └── vulnscan.db # SQLite 扫描历史(自动创建) # 🚀 入门指南 ## 前置条件 Bash : pip install flask requests python-whois ## 运行应用程序 Bash : python app.py 然后在浏览器中打开:http://127.0.0.1:5000 # 🧪 模块概述 ## 模块 - 文件 - 描述 i) Flask App - app.py - 路由、数据库初始化、扫描结果处理 ii) SQL 注入 - scanner.py - Payload 注入与 SQL 错误匹配 iii) XSS 检测 - scanner.py - 反射型 XSS 脚本探测 iv) CVE 查询 - cve_db.py - 具有严重性评级的静态 CVE 数据库 v) WAF 检测 - scanner.py - 基于响应头的 WAF 识别 vi) 端口扫描器 - scanner.py - 对常用端口进行 TCP 连接扫描 vii) DNS 和 WHOIS - scanner.py - 域名解析与注册信息查询 viii) 仪表板 - app.py - 获取 SQLite 历史记录并渲染模板 # 📸 截图 ## 屏幕 - 描述 1. 图 9.1 - 主扫描器界面 2. 图 9.2 - 动画加载屏幕 3. 图 9.3 - 扫描结果:拦截的注入 + 严重 CVE 4. 图 9.4 - CVE 详情模态框(CVE-2021-26855 严重) 5. 图 9.5 - 扫描结果:SQL 漏洞 + 开放端口 6. 图 9.6 - 所有安全扫描(包含 CVE 和端口) 7. 图 9.7 - 带有统计信息的扫描历史仪表板 # 🔮 未来增强计划 [ ] 盲注 SQL 注入(基于时间和基于布尔值) [ ] CSRF 检测和安全头分析 [ ] 实时 NVD CVE API 集成 [ ] 经过身份验证的扫描(支持会话/cookie) [ ] 生成 PDF 报告 [ ] 定时/周期性扫描 [ ] 多目标批量扫描 [ ] Docker 容器化 [ ] 代理轮换和速率限制支持 # ⚠️ 免责声明 VulnScan Pro 严格仅用于教育目的、授权的渗透测试和安全研究。未经明确许可扫描任何系统都是非法和不道德的。作者对任何滥用此工具的行为不承担责任。 # 📚 参考资料 1. OWASP Top Ten https://owasp.org/www-project-top-ten/ 2. NIST 国家漏洞数据库 https://nvd.nist.gov/ 3. MITRE CVE https://cve.mitre.org/ 4. Flask 文档 https://flask.palletsprojects.com/ 5. crt.sh 证书搜索 https://crt.sh/ 6. PortSwigger XSS 指南 https://portswigger.net/web-security/cross-site-scripting # 📄 许可证 本项目是作为 Mahendra Engineering College (Autonomous) 的学术微型项目开发的。如需重复使用或扩展,请注明原作者。
标签:CISA项目, Flask, Python, SQL注入检测, XSS检测, 加密, 多模态安全, 开源, 数据可视化, 数据统计, 无后门, 漏洞扫描器, 端口扫描