Dhesshwin-B-G/vulnerabilty_scanner

GitHub: Dhesshwin-B-G/vulnerabilty_scanner

一款基于 Python 的轻量级网络漏洞扫描器,通过扫描 TCP 开放端口、识别服务并比对本漏洞数据库来评估安全风险,最终生成文本格式的扫描报告。

Stars: 0 | Forks: 0

# 漏洞扫描器 ## 概述 漏洞扫描器是一个基于 Python 的网络安全工具,旨在识别开放端口、检测常见服务、分析潜在的安全风险,并生成详细的漏洞报告。 开发此项目是为了理解基本的网络安全概念,如端口扫描、服务检测、漏洞评估和报告生成。 ## 功能 - 扫描目标主机的 TCP 端口 - 识别常见的网络服务 - 使用漏洞数据库分析服务风险 - 生成详细的扫描报告 - 将结果保存到文本文件中 - 模块化且易于理解的架构 ## 项目结构 ``` vulnerability_scanner/ │ ├── main.py │ ├── scanner/ │ ├── port_scanner.py │ ├── service_detector.py │ └── risk_analyser.py │ ├── database/ │ └── vulnerability.json │ ├── report/ │ └── report_generator.py │ ├── output/ │ └── scan_report.txt │ └── test_files/ ├── test_port.py ├── test_service.py ├── test_risk.py └── test_report.py ``` ## 使用的技术 - Python 3 - Socket 编程 - JSON - 文件处理 ## 工作原理 ### 1. 端口扫描 扫描器检查目标系统上的一系列 TCP 端口,并识别开放的端口。 示例: ``` Port 22 → Open Port 80 → Open ``` ### 2. 服务检测 扫描器将开放端口映射到已知的服务。 示例: ``` 22 → SSH 80 → HTTP 443 → HTTPS 3306 → MySQL ``` ### 3. 风险分析 将检测到的服务与漏洞数据库进行比较。 示例: ``` SSH → Medium Risk FTP → High Risk MySQL → High Risk ``` ### 4. 报告生成 最终结果将保存至: ``` output/scan_report.txt ``` ## 安装说明 克隆或下载该项目。 确保已安装 Python: ``` python --version ``` ## 运行扫描器 执行: ``` python main.py ``` 出现提示时,输入目标 IP 地址或域名。 示例: ``` Enter target IP or domain: 127.0.0.1 ``` ## 示例输出 ``` ================================================== VULNERABILITY SCANNER ================================================== Enter target IP or domain: 127.0.0.1 [*] Scanning ports... [OPEN] Port 135 [OPEN] Port 445 [*] Detecting services and analysing risks... Port: 135 Service: Unknown Service Risk: Unknown Port: 445 Service: Unknown Service Risk: Unknown [+] Report saved to output/scan_report.txt ``` ## 示例报告 ``` ================================================== VULNERABILITY SCAN REPORT ================================================== Target: 127.0.0.1 Port: 135 Service: Unknown Service Risk: Unknown Description: Service could not be identified. -------------------------------------------------- ``` ## 涉及的网络安全概念 - TCP/IP 网络 - 端口扫描 - Socket 编程 - 服务枚举 - 漏洞评估 - 风险分级 - 报告生成 ## 局限性 - 使用基于端口的服务检测 - 不执行高级 banner grabbing - 使用本地漏洞数据库 - 仅扫描 TCP 端口 - 不执行真实的 CVE 查询 - 对于大范围端口,顺序扫描可能会比较慢 ## 未来增强功能 - 多线程扫描 - 用于版本检测的 banner grabbing - 集成 CVE 数据库 - 生成 PDF 报告 - GUI 界面 - 实时漏洞源 - 严重程度颜色标识 ## 学习成果 通过这个项目,我们探索了以下网络安全概念: - 使用 socket 进行网络通信 - 开放端口识别 - 服务检测技术 - 漏洞评估基础 - JSON 数据管理 - 安全报告生成 ## 作者 Dhesshwin B G 网络安全实习项目 基于 Python 的漏洞扫描器
标签:Homebrew安装, Python, URL短链接分析, 加密, 插件系统, 数据统计, 无后门, 服务探测, 漏洞扫描器, 端口扫描, 网络安全, 隐私保护