Sumeru-M/Automated_Vulnerability_scanner

GitHub: Sumeru-M/Automated_Vulnerability_scanner

一款基于 Python 的模块化漏洞扫描器,通过端口、服务识别与 CVE 匹配实现自动化风险评估与可视化报告。

Stars: 0 | Forks: 0

# 自动漏洞扫描器 这是一个基于 Python 的模块化漏洞扫描器,执行端口扫描、基础服务识别和使用 CVE 数据集进行漏洞检查。它还包含性能指标和使用 Streamlit 界面可视化扫描结果的交互功能。 ## 概述 该扫描器允许您通过识别开放端口、检测运行中的服务,并使用简单的 CVE 数据集将其映射到已知漏洞,从而分析目标系统。该项目设计易于理解,同时仍反映网络安全性工具中使用的现实概念。 ## 功能 - 可配置范围内的端口扫描 - 并发扫描以提升性能 - 用于服务检测的横幅抓取(Banner Grabbing) - 使用本地数据集的 CVE 查找 - 扫描指标,如持续时间和成功率 - 使用 Streamlit 构建的交互式仪表板 - 表格结果和基础可视化 - CSV 导出支持 - 无效输入和超时处理 ## 项目结构 automated_vulnerability_scanner/ │ ├── scanner/ │ ├── port_scanner.py │ ├── banner_grabber.py │ └── service_detector.py │ ├── vulnerabilities/ │ └── cve_lookup.py │ ├── metrics/ │ └── metrics.py │ ├── reports/ │ └── report_generator.py │ ├── visualization/ │ └── plotter.py │ ├── ui/ │ └── streamlit_app.py │ ├── data/ │ └── sample_cve.json │ ├── config.py ├── main.py └── requirements.txt ## 安装 git clone https://github.com/your-username/automated_vulnerability_scanner.git cd automated_vulnerability_scanner pip install -r requirements.txt ## 用法 运行命令行版本: python main.py 运行 Streamlit 界面: streamlit run ui/streamlit_app.py ## 示例目标 仅扫描您拥有或获得许可测试的系统: - 127.0.0.1(本地主机) - scanme.nmap.org(公共测试服务器) - 您的本地网络设备(192.168.x.x) ## 示例输出 扫描摘要 - 持续时间:12.4 秒 - 总端口数:1023 - 开放端口数:2 - 成功率:0.19% 端口:22 服务:OpenSSH 漏洞:CVE-2018-15473 端口:80 服务:Apache 漏洞:CVE-2021-41773 ## 工作原理 该应用程序将目标解析为 IP 地址,并使用套接字连接扫描一系列端口。对于开放端口,它会获取服务横幅并与 CVE 数据集进行比较。结果将以结构化格式和可视化形式呈现。 ## 免责声明 本项目仅用于教育目的。请仅扫描您拥有或明确获得许可测试的系统。 ## 技术栈 - Python - 套接字编程 - Streamlit - Pandas - Matplotlib ## 后续改进 - 与真实的 CVE 数据库(如 NVD)集成 - 异步扫描以提升性能 - 改进的服务指纹识别 - 支持更多格式的可导出报告 - 扫描历史记录跟踪
标签:API密钥检测, Banner抓取, CVE匹配, Kubernetes, Python扫描器, Qt框架, Streamlit仪表盘, URL短链接分析, 交互式仪表板, 动态报告, 反取证, 安全, 安全评估, 实时可视化, 并发扫描, 开源安全工具, 性能指标, 扫描度量, 数据统计, 服务探测, 服务识别, 本地数据集, 模块化设计, 端口扫描, 系统分析, 网络分析, 网络安全, 自动化修复, 超时处理, 输入验证, 逆向工具, 逆向工程平台, 隐私保护