Hrishi043/SecureScan-Ai

GitHub: Hrishi043/SecureScan-Ai

基于 Flask 和 Selenium 构建的 Web 漏洞扫描器与安全审计仪表板,支持多种漏洞类型主动扫描并自动生成专业报告。

Stars: 1 | Forks: 0

# SecureScan AI 🛡️ **SecureScan AI** 是一个使用 Flask、SQLAlchemy、Selenium 和 ReportLab 构建的专业级、作品集级别的 Web 漏洞扫描器和安全审计仪表板。它将基础的测试脚本转化为一个功能齐全的安全评估平台,展示了动态扫描跟踪、仪表板分析和专业的 PDF 报告生成功能。 ## 核心功能 - **时尚的赛博朋克仪表板 (Bootstrap 5)**:交互式的暗色主题界面,具有动态的玻璃拟态面板、指标卡片和响应式侧边栏导航。 - **实时分析 (Chart.js)**:环形图汇总漏洞严重程度分布(严重、高、中、低、信息),从数据库中动态加载。 - **安全认证**:健壮的用户管理,集成了 `Flask-Login` 会话管理,并使用 `werkzeug.security`(Scrypt 哈希)进行安全的密码加密。 - **关系型数据库历史记录**:基于 SQLAlchemy ORM 的 SQLite 后端,用于跟踪历史审计记录和具体的 payload 执行细节(payload 字符串、状态、严重程度、执行时间和 stdout 日志)。 - **统一的漏洞扫描器**:重构了 Selenium 自动化引擎,用于测试以下内容: - 命令注入漏洞 - 跨站脚本攻击(反射型 XSS)漏洞 - SQL 注入攻击 - CSRF 表单漏洞 - **自动模拟回退**:智能的 ChromeDriver 执行包装器。如果缺少本地的 DVWA 实例或 WebDriver 二进制文件,扫描器会自动回退到异常安全的**模拟模式**,确保平台体验的无缝衔接。 - **动态 PDF 审计**:统一的 PDF 生成模块,直接根据数据库记录构建动态填充的审计报告,汇总元数据、目标风险因素、发现结果表格以及量身定制的代码修复建议。 - **OWASP Top 10 学习中心**:采用 Bootstrap 简洁风格设计的内嵌教育专区,方便用户深入了解漏洞类型和现实生活中的漏洞赏金案例研究。 ## 重组后的项目结构 项目已从扁平化目录重构为符合企业级 Flask 布局规范的模块化包架构: ``` SecureScan_AI/ ├── app/ │ ├── __init__.py # Flask app factory, extension configs, and Blueprint registers │ ├── models.py # User (auth mixins), Scan, and ScanResult database entities │ ├── routes/ │ │ ├── auth.py # Secure login, registration, and logout sessions │ │ ├── dashboard.py # Compile metrics summaries for Chart.js rendering │ │ ├── scanner.py # Launch dynamic scans, retrieve log tables, and OWASP views │ │ └── reports.py # Dynamic ReportLab PDF builder and browser download stream │ ├── scanners/ │ │ ├── base_scanner.py # Base Chrome Webdriver config with simulation fallback │ │ ├── payloads.py # Centralized lists of security payloads │ │ ├── command_injection.py │ │ ├── xss.py │ │ ├── sql_injection.py │ │ └── csrf.py │ ├── static/ │ │ ├── css/ │ │ │ └── style.css # Global glassmorphism dark-theme styling │ │ └── bg.jpg # Auth page backdrop asset │ └── templates/ │ ├── base.html # Sidebar, navbar, alerts frame │ ├── auth/ # Login & register templates │ ├── dashboard.html # Chart.js graphs and metric cards │ ├── scanner/ # Audit forms, history logs, and execution details │ └── owasp/ # Dynamic educational partial templates ├── instance/ │ └── securescan.db # SQLite database storage ├── requirements.txt # Package dependencies lock └── run.py # Server startup script ``` ## 安装与设置 ### 1. 克隆并配置环境 导航到项目根目录,并确保已安装 Python 3.8+: ``` # 检查 Python 版本 python --version ``` ### 2. 安装包依赖 安装所需的锁定版本库: ``` pip install -r requirements.txt ``` ### 3. 启动 SecureScan AI 服务器 启动 Flask 开发服务器: ``` python run.py ``` 打开浏览器并访问 `http://127.0.0.1:5000` 以进入登录页面。 ## 使用指南 1. **身份验证**:注册一个新的安全专家账户。密码在保存时会自动加密。 2. **仪表板概览**:查看审计历史和安全态势摘要。 3. **配置审计**:导航至 **Run Scan** 并选择一个漏洞利用模块。 4. **扫描模式**: - **模拟模式(默认)**:保持开关处于选中状态,即可即时模拟扫描过程。非常适合在无需配置环境的情况下进行演示。 - **实时扫描代理**:取消选中“Enable Simulation Mode”以启动 Selenium 浏览器抓取工具。确保在 `http://localhost/dvwa` 运行着本地的 Damn Vulnerable Web Application (DVWA) 实例,并且将 `chromedriver.exe` 放置在项目根目录下。 5. **查看发现并导出**:深入查看结果以检查目标控制台日志,或点击 **Download PDF Audit Report** 导出包含修复说明的精美 PDF 文件。
标签:Bootstrap, CISA项目, Flask, Selenium, 加密, 后端开发, 数据泄露, 漏洞扫描器, 逆向工具