aimannurzharfan/Network-Scanner
GitHub: aimannurzharfan/Network-Scanner
NetGuard:网络漏洞扫描器,自动化识别网络服务漏洞。
Stars: 0 | Forks: 0
# NetGuard:网络漏洞扫描器
## 1.0 项目概述
NetGuard 是一个使用 Python 开发的多线程网络侦察工具。它旨在帮助网络管理员和安全分析师自动化识别活跃的网络服务。该工具执行快速 TCP 端口扫描,执行服务标志抓取以识别软件版本,并将发现汇总到结构化的 PDF 审计报告中。
## 2.0 技术特性
* **多线程执行:** 利用 Python 的 concurrent.futures 模块管理 100 个工作者的线程池,允许快速扫描端口范围而不会产生显著的延迟。
* **基于套接字的枚举:** 通过 TCP 握手响应确定端口状态(打开/关闭/过滤)。
* **标志抓取:** 自动尝试从活动端口检索服务头(前 1024 字节),以帮助检测版本。
* **自动报告:** 生成带时间戳的不可编辑的 PDF 报告,包含扫描元数据和漏洞点摘要表。
* **错误处理:** 包括对网络超时、套接字错误和用户中断的健壮异常处理。
## 3.0 安装
### 3.1 系统要求
* Python 3.10 或更高版本
* pip(Python 包安装器)
### 3.2 安装说明
1. 将仓库克隆到本地机器:
git clone https://github.com/aimannurzharfan/Network-Scanner.git
cd Network-Scanner
2. 使用 requirements 文件安装所需的依赖项:
pip install -r requirements.txt
### 3.3 快速入门(Windows PowerShell)
1. 创建虚拟环境并安装依赖项:
.\setup_env.ps1
2. 激活虚拟环境:
.\.venv\Scripts\Activate.ps1
3. 运行扫描器:
python scanner.py <目标 IP 地址>
# 示例:
python scanner.py 127.0.0.1
**注意:**
* PDF 报告始终保存为 `netguard_last_scan.pdf`,并且每次运行都会被覆盖。
* 如果 VS Code 的 Pylance 仍然标记导入,请将解释器设置为 `./.venv/Scripts/python.exe`(命令面板 > Python:选择解释器)。
## 4.0 使用指南
要执行扫描,请从命令行界面(CLI)运行脚本,并将目标 IP 地址作为参数。
**命令语法:**
```
python scanner.py
```
## 5.0 视频演示
以下是一个全面的工具功能演示,包括安全的主机扫描和报告生成。
* **YouTube 演示:** [观看视频演示](https://youtu.be/vQmuTjyilvs)
* **本地视频文件:** `demo.mp4`(位于根目录)
## 6.0 文档
有关详细的技术分析、架构图和代码解释,请参阅位于 `docs` 文件夹中的完整系统文档。
标签:CFAA, PDF报告, Python开发, Qt框架, 云存储安全, 分布式计算, 异常处理, 数据统计, 服务识别, 版本检测, 端口扫描, 网络安全, 网络扫描, 计算机安全法, 逆向工具, 隐私保护