prashanth0301/Mini-Nmap-Clone
GitHub: prashanth0301/Mini-Nmap-Clone
该项目是一个基于 Python 的轻量级 Nmap 克隆工具,提供多线程端口扫描、服务检测和报告生成等核心网络探测功能。
Stars: 0 | Forks: 0
# Mini Nmap 克隆版
一款受 Nmap 启发、基于 Python 的专业网络扫描工具。该项目可执行主机发现、多线程 TCP 端口扫描、服务检测、Banner 抓取、基础操作系统检测,并生成详细的扫描报告。
## 功能
* 主机发现
* 多线程 TCP 端口扫描
* 常用端口扫描
* 自定义端口范围扫描
* 服务检测
* Banner 抓取
* 反向 DNS 查询
* 基础操作系统检测
* 扫描报告生成
* 专业命令行界面
* 彩色控制台输出
## 项目结构
```
Mini-Nmap-Clone/
│
├── mini_nmap.py
├── banner.py
├── commonports.py
├── discovery.py
├── scanner.py
├── service.py
├── utils.py
├── os_detect.py
├── report.py
├── requirements.txt
├── .gitignore
├── README.md
├── notes.md
│
├── reports/
│
└── assets/
├── architecture.png
├── architecture.txt
├── interface_selection.png
└── output.png
```
## 使用技术
* Python 3
* Socket 编程
* 多线程 (Threading)
* 队列 (Queue)
* Colorama
* IPAddress 模块
## 安装说明
克隆仓库:
```
git clone https://github.com//Mini-Nmap-Clone.git
```
进入项目目录:
```
cd Mini-Nmap-Clone
```
安装所需依赖:
```
pip install -r requirements.txt
```
运行扫描工具:
```
py mini_nmap.py
```
## 扫描模式
### 常用端口扫描
扫描预定义的常用 TCP 端口列表,以实现快速服务发现。
### 自定义端口范围扫描
允许扫描 1 到 65535 之间任意用户定义的端口范围。
## 示例输出
```
PORT STATE SERVICE BANNER
------------------------------------------------------------
22/tcp OPEN SSH SSH-2.0-OpenSSH
80/tcp OPEN HTTP HTTP/1.1 200 OK
443/tcp OPEN HTTPS Banner Not Available
```
## 报告
每次完成的扫描都会自动保存在 **reports/** 目录中。
每份报告包含:
* 目标 IP
* 主机名
* 扫描日期
* 开放端口数量
* 服务信息
* Banner 信息
## 架构
参见:
* assets/architecture.png
* assets/architecture.txt
## 截图
### 界面
`assets/interface_selection.png`
### 扫描输出
`assets/output.png`
## 未来改进
* UDP 端口扫描
* SYN 扫描
* 服务版本检测
* 更好的操作系统指纹识别
* XML 和 JSON 报告导出
* IPv6 支持
## 免责声明
本工具仅供教育目的和授权的安全测试使用。在扫描非您所有或非您管理的系统之前,请务必获得许可。
## 作者
**Y. Prashanth Kumar Reddy**
网络安全 | 网络 | Python
标签:Facebook API, Python, Qt框架, 云存储安全, 密码管理, 插件系统, 数据统计, 无后门, 服务识别, 端口扫描, 网络安全, 网络扫描, 逆向工具, 隐私保护