KrishiCyberLabs/Network-Port-Scanner
GitHub: KrishiCyberLabs/Network-Port-Scanner
一款基于 Python 多线程的 TCP 端口扫描工具,用于检测目标开放端口、识别服务并自动生成安全评估报告。
Stars: 0 | Forks: 0
# 🌐 Network Port Scanner v3.0




一个基于 Python 的网络安全实用工具,旨在执行 TCP 端口扫描、识别可访问的网络服务,并生成详细的安全评估报告。
本项目展示了**网络侦察概念、socket 编程、TCP/IP 通信、多线程以及使用 Python 实现安全自动化**的实际应用。
该工具提供了一个轻量级的命令行界面,适用于授权的安全测试和教育性的网络分析。
# 🚀 核心功能
## 🔍 TCP 端口扫描
- 扫描目标 IP 地址和域名
- 检测开放的 TCP 端口
- 自动解析域名
- 在受控环境中执行网络侦察
# ⚡ 多线程快速扫描
扫描器使用 Python 线程来提高扫描效率。
它不再按顺序检查端口,而是同时执行多个端口检查,从而显著减少扫描时间。
示例:
```
Traditional Scan:
Port 1 → Port 2 → Port 3 → ...
Multi-threaded Scan:
Port 1
Port 2
Port 3
(Parallel execution)
```
# 🎯 多种扫描模式
扫描器提供三种扫描选项:
## 1️⃣ 常用端口扫描
扫描常用的服务端口:
| 端口 | 服务 |
|------|---------|
| 21 | FTP |
| 22 | SSH |
| 53 | DNS |
| 80 | HTTP |
| 443 | HTTPS |
| 3306 | MySQL |
| 3389 | RDP |
| 445 | SMB |
## 2️⃣ 全端口扫描
扫描端口:
```
1 - 1024
```
适用于识别通常暴露的服务。
## 3️⃣ 自定义端口范围扫描
允许用户定义特定的扫描范围。
示例:
```
Start Port: 80
End Port: 443
```
适用于针对性的网络分析。
# 🔎 服务识别
扫描器将检测到的端口与通常关联的服务进行映射。
示例:
```
PORT SERVICE
22 SSH
80 HTTP
443 HTTPS
445 SMB
3306 MySQL
```
# 🎨 专业命令行界面
功能特点:
- 网络安全主题横幅
- 彩色终端输出
- 清晰的扫描状态消息
- 友好的用户菜单导航
- 改进的错误处理
示例:
```
╔══════════════════════════════════╗
║ NETWORK PORT SCANNER ║
║ Cybersecurity Toolkit v3.0 ║
╚══════════════════════════════════╝
```
# 📊 安全扫描报告
该工具在每次扫描后会自动生成带有时间戳的报告。
生成的报告示例:
```
reports/
scan_report_20260719_120000.txt
```
报告包含:
- 目标 IP/域名
- 扫描日期和时间
- 扫描持续时间
- 已扫描的端口范围
- 检测到的开放端口
- 识别出的服务
# 🖥️ 截图
## 主菜单

## 常用端口扫描

## 全端口扫描

## 自定义范围扫描

# 🛠️ 使用的技术
## 编程语言
- Python 3
## Python 库
- Socket
- Threading
- Datetime
- Colorama
## 网络安全概念
- TCP/IP 网络
- 端口枚举
- 网络侦察
- 服务检测
- 安全评估
- 自动化
# 📂 项目结构
```
Network-Port-Scanner/
│
├── network_port_scanner.py
├── README.md
├── requirements.txt
├── LICENSE
│
├── reports/
│ └── scan_report_timestamp.txt
│
├── images/
│ ├── main-menu.png
│ ├── common-ports-scan.png
│ ├── full-scan.png
│ └── custom-range-scan.png
│
└── tests/
```
# ⚙️ 安装与设置
## 克隆仓库
```
git clone https://github.com/KrishiCyberLabs/network-port-scanner.git
```
## 导航至项目目录
```
cd network-port-scanner
```
## 安装依赖项
```
pip install -r requirements.txt
```
# ▶️ 运行工具
执行:
```
python network_port_scanner.py
```
输入目标:
```
127.0.0.1
```
选择扫描模式:
```
1. Common Ports
2. Full Scan (1-1024)
3. Custom Range
```
# 📌 示例输出
```
NETWORK PORT SCANNER v3.0
Target IP: 127.0.0.1
Scanning started...
[OPEN] 135 MSRPC
[OPEN] 445 SMB
[OPEN] 902 VMware
--------------------------------
SCAN COMPLETED
Open Ports Found: 3
Report Saved:
reports/scan_report_20260719.txt
```
# 🧪 测试
该项目包含一个测试目录,用于未来的自动化测试和验证。
测试重点:
- 端口扫描功能
- 错误处理
- 服务检测
- 输入验证
# 🎓 展示的技能
该项目展示了对以下内容的实际理解:
✅ Python 网络
✅ Socket 编程
✅ TCP/IP 基础
✅ 网络侦察
✅ 多线程
✅ 网络安全自动化
✅ 安全工具开发
✅ 技术文档
# 🔮 未来改进计划
计划中的改进:
- Banner grabbing
- 操作系统检测
- 漏洞信息映射
- 基于 GUI 的界面
- 高级日志记录
- 以 JSON 格式导出报告
# ⚠️ 合法使用免责声明
此工具仅严格用于:
- 教育目的
- 网络安全学习
- 授权的安全测试
未经适当授权,请勿扫描系统或网络。
# 👨💻 作者
## Krishi
网络安全学生 | Python 开发者
GitHub:
https://github.com/KrishiCyberLabs
⭐ 如果您觉得这个项目有用,请考虑给它点个星。
标签:Python, 安全测试, 插件系统, 攻击性安全, 数据统计, 无后门, 端口扫描, 网络安全, 逆向工具, 隐私保护