taadithiya/Vulnerability-Assessment

GitHub: taadithiya/Vulnerability-Assessment

一款基于浏览器的漏洞评估分析器,可将授权的 Nmap XML 扫描结果转化为结构化的安全仪表板和可打印报告。

Stars: 0 | Forks: 0

# VulnGuard — 漏洞评估分析器 VulnGuard 是一款基于浏览器的网络安全应用,可将授权的 Nmap XML 扫描结果转化为结构化的漏洞评估仪表板。 它能提取已发现的资产、开放端口、服务、软件详情、潜在的安全暴露、严重级别、风险评分以及修复建议。 ## 在线演示 [打开 VulnGuard — 漏洞评估分析器](https://taadithiya.github.io/Vulnerability-Assessment/) ## 代码仓库 [在 GitHub 上查看 VulnGuard 源代码](https://github.com/taadithiya/Vulnerability-Assessment) ## 项目概述 以原始 XML 格式审查漏洞评估扫描结果可能非常困难。 VulnGuard 提供了一个简单的界面,允许用户直接在浏览器中上传并分析授权的 Nmap XML 文件。 该应用程序会将扫描结果转换为: - 资产清单 - 开放端口摘要 - 服务清单 - 潜在的安全发现 - 严重性分布 - 风险评分 - 修复建议 - 可打印的评估报告 ## 核心功能 - 上传并分析 Nmap XML 文件 - 在浏览器本地处理扫描文件 - 提取活跃的主机和主机名 - 识别开放的 TCP 和 UDP 端口 - 提取协议、服务、产品和版本 - 在可用时显示操作系统信息 - 使用预定义规则检测潜在的服务暴露 - 按严重性对发现进行分类 - 计算总体评估风险评分 - 按主机、端口、服务或描述搜索发现 - 按严重性筛选发现 - 生成修复建议 - 加载内置的示例评估 - 清除评估结果 - 打印或将报告保存为 PDF - 适用于桌面和移动设备的响应式界面 - 自定义 GitHub Pages 404 页面 ## 技术栈 - HTML5 - CSS3 - JavaScript - DOMParser API - Nmap XML - Git - GitHub - GitHub Pages ## 应用程序工作流程 ``` Authorized target ↓ Nmap scan ↓ XML output generated using -oX ↓ Upload XML file to VulnGuard ↓ Browser-side XML parsing ↓ Asset and service inventory ↓ Potential exposure detection ↓ Severity classification ↓ Risk scoring ↓ Remediation guidance ↓ Printable assessment report ``` ## 截图 ### 安全仪表板 ![VulnGuard 安全仪表板](https://static.pigsec.cn/wp-content/uploads/repos/cas/fb/fb4d1df9f9c79c05c800344cb61d987a07b2c32aac1de278e0a4c28b5cc50bfc.png) ### 资产与服务清单 ![VulnGuard 资产与服务](https://static.pigsec.cn/wp-content/uploads/repos/cas/5f/5f6272b840ef70f1e460b94687ea5a8e8c70cc39dc6201729bc79ecf783bad41.png) ### 评估发现 ![VulnGuard 评估发现](https://static.pigsec.cn/wp-content/uploads/repos/cas/2d/2d0ac3059664765c21ab777a74909a0712cd2e1ed3b944d0fa450e35b44b078f.png) ### 可打印报告 ![VulnGuard 报告预览](https://static.pigsec.cn/wp-content/uploads/repos/cas/91/917efd6f13992aac6a8d0cc1bcd61eb0c8175c1a5387bbfdff3deabd13e21292.png) ## 生成 Nmap XML 文件 请仅对您拥有或获得明确授权评估的系统运行 Nmap。 常规命令: ``` nmap -sV -oX scan-results.xml ``` 示例: ``` nmap -sV -oX scan-results.xml 192.168.1.10 ``` 包含操作系统检测: ``` sudo nmap -sV -O -oX scan-results.xml ``` ## 使用端口 8000 进行本地测试 启动一个临时的 Python Web 服务器: ``` python3 -m http.server 8000 --bind 127.0.0.1 ``` 保持该终端窗口处于打开状态。 在另一个终端窗口中,运行: ``` nmap -Pn -sV -p 8000 \ -oX assets/samples/localhost-scan.xml \ 127.0.0.1 ``` 将 `localhost-scan.xml` 上传到 VulnGuard 并点击 **Analyze Scan**。 之后使用以下命令停止临时服务器: ``` Control + C ``` ## 在本地运行项目 克隆代码仓库: ``` git clone https://github.com/taadithiya/Vulnerability-Assessment.git ``` 进入项目目录: ``` cd Vulnerability-Assessment ``` 在 Visual Studio Code 中打开项目: ``` code . ``` 在 Visual Studio Code 中安装 **Live Server** 扩展。 打开 `index.html`,然后点击 **Go Live**。 应用程序应在类似于以下地址打开: ``` http://127.0.0.1:5500/index.html ``` ## 如何使用 VulnGuard 1. 打开 VulnGuard 应用程序。 2. 点击 **Choose XML File**。 3. 选择一个授权的 Nmap XML 扫描文件。 4. 点击 **Analyze Scan**。 5. 查看仪表板摘要。 6. 查看已发现的资产和服务。 7. 查看生成的潜在发现。 8. 在需要时使用搜索和严重性筛选器。 9. 查看修复建议。 10. 点击 **Print Report** 将评估打印或保存为 PDF。 您也可以点击 **Load Sample Scan**,无需上传文件即可测试应用程序。 ## 风险评分 VulnGuard 使用以下严重性权重: | 严重性 | 评分 | |---|---:| | 严重 | 10 | | 高 | 7 | | 中 | 4 | | 低 | 1 | | 信息 | 0 | 总体风险等级: | 总分 | 风险等级 | |---:|---| | 0(包含已分析资产) | 信息 | | 1–5 | 低 | | 6–15 | 中 | | 16–30 | 高 | | 31 及以上 | 严重 | ## 支持的暴露规则 VulnGuard 目前包含针对以下潜在暴露的规则: | 端口 | 服务 | 默认严重性 | |---:|---|---| | 21 | FTP | 中 | | 23 | Telnet | 高 | | 25 | SMTP | 低 | | 53 | DNS | 低 | | 80 | HTTP | 中 | | 110 | POP3 | 中 | | 139 | NetBIOS | 中 | | 143 | IMAP | 中 | | 445 | SMB | 中 | | 1433 | Microsoft SQL Server | 高 | | 3306 | MySQL | 中 | | 3389 | RDP | 高 | | 5432 | PostgreSQL | 中 | | 5985 | WinRM | 低 | | 6379 | Redis | 高 | | 8000 | 备用 HTTP 开发服务 | 低 | | 27017 | MongoDB | 高 | 这些规则仅用于识别潜在的暴露,并不能确认存在漏洞。 ## 隐私 上传的扫描文件会在浏览器本地进行处理。 VulnGuard 不会: - 将扫描文件上传到外部服务器 - 将扫描结果存储在数据库中 - 将扫描数据发送给第三方服务 - 需要账户或登录 刷新或关闭页面会清除已分析的数据。 ## 评估限制 开放的端口或检测到的服务并不自动代表已确认的漏洞。 - 利用漏洞 - 确认 CVE - 执行经过身份验证的扫描 - 验证补丁状态 - 确认配置缺陷 - 计算官方的 CVSS 评分 - 替代手动安全测试 - 替代专业的漏洞管理平台 所有生成的发现都需要人工验证。 ## 道德使用 本项目仅适用于: - 授权的漏洞评估 - 个人系统 - 受控的实验室环境 - 教育 - 网络安全研究 - 作品集展示 未经明确授权,请勿扫描系统、网络、应用程序或设备。 ## 项目结构 ``` Vulnerability-Assessment/ ├── index.html ├── style.css ├── script.js ├── 404.html ├── README.md ├── .gitignore ├── .nojekyll ├── assets/ │ ├── icons/ │ ├── images/ │ └── samples/ ├── Documentation/ ├── Evidence/ ├── Reports/ ├── Sample-Data/ ├── Scan-Results/ ├── Screenshots/ │ ├── dashboard.png │ ├── assets-services.png │ ├── findings.png │ └── report-preview.png └── Scripts/ ``` ## 未来改进 计划中的改进包括: - CVSS 评分 - CVE 丰富化 - 服务版本分析 - 防止重复发现 - 评估元数据 - 分析师姓名和范围字段 - JSON 导出 - CSV 导出 - 改进的 PDF 报告模板 - 支持 Nessus CSV - 支持 OpenVAS CSV - 额外的暴露规则 - 单元测试和集成测试 - 拖拽上传 XML - 深色和浅色主题 ## 安全提示 本仓库中包含的示例文件和截图应仅包含 localhost 或受控实验室信息。 请勿提交: - 客户扫描结果 - 来自真实组织的私有 IP 清单 - 密码 - 身份验证 token - API 密钥 - 敏感报告 - 机密截图 ## 作者 **Aadithya T** 网络安全 | 威胁情报 | 安全运营 | 漏洞管理 | 网络防御 ## 许可协议 本项目提供用于教育、研究、授权评估和作品集展示。 请负责任地使用本应用程序,并仅在您拥有明确权限的系统和环境中使用。
标签:数据可视化, 自定义脚本