NADAVAPALLI-SAI-PRANAV-BHASKAR/NetRecon
GitHub: NADAVAPALLI-SAI-PRANAV-BHASKAR/NetRecon
一个基于 Python 标准库的轻量级 TCP 端口扫描器,支持主机名解析、端口状态检测、服务识别与自动报告生成。
Stars: 0 | Forks: 0
# NetRecon - 网络侦察工具
NetRecon 是一个基于 Python 的网络侦察工具,可执行主机名解析、TCP 端口扫描、服务识别以及自动生成报告。
该项目展示了网络基础知识、Socket 编程、DNS 解析、文件处理以及基本的安全评估技术。
## 功能
- 主机名到 IP 的解析
- 反向 DNS 查询
- 自定义端口范围扫描
- TCP 端口状态检测
- 常见服务识别
- 扫描耗时测量
- 基于时间戳的报告生成
- 输入验证与错误处理
- 自动报告存储
## 使用技术
- Python
- Socket 编程
- TCP/IP 网络
- DNS 解析
- 文件处理
## 环境要求
- Python 3.10.0 或更高版本
无需任何外部依赖。
## 项目结构
```
NetRecon/
│
├── scanner.py
├── README.md
├── requirements.txt
└── report_YYYYMMDD_HHMMSS.txt
```
## 工作原理
1. 接收用户输入的 IP 地址或主机名。
2. 将主机名解析为 IP 地址。
3. 在可用时执行反向 DNS 查询。
4. 扫描用户定义的 TCP 端口范围。
5. 识别开放端口上运行的常见服务。
6. 测量扫描执行时间。
7. 生成带有时间戳的扫描报告。
## 使用说明
运行脚本:
```
py scanner.py
```
或
```
python scanner.py
```
## 示例
```
==================================================
NetRecon - Network Reconnaissance Tool
==================================================
Enter IP Address or Hostname: scanme.nmap.org
Resolved IP: 45.33.32.156
Hostname: scanme.nmap.org
Start Port: 20
End Port: 100
Scanning 45.33.32.156...
--------------------------------------------------
Port 22 OPEN (SSH)
Port 80 OPEN (HTTP)
--------------------------------------------------
Scan Complete
Scan completed in 8.05 seconds
Report saved as:
report_20260615_042927.txt
```
## 报告示例
```
NetRecon Scan Report
========================================
Target: 45.33.32.156
Hostname: scanme.nmap.org
Port Range: 20-100
Scan Time: 8.05 seconds
Open Ports:
Port 22 OPEN (SSH)
Port 80 OPEN (HTTP)
```
## 展示技能
- 网络侦察
- Socket 编程
- TCP 端口扫描
- DNS 解析
- 文件处理
- 错误处理
- Python 开发
## 未来改进
- 多线程扫描
- Banner 抓取
- 服务指纹识别
- GUI 界面
- 网络范围扫描
## 免责声明
本项目仅供教育目的和授权的安全测试使用。请仅扫描您拥有或已获得明确测试权限的系统。
谢谢
标签:Python, Socket编程, TCP/IP, 并发处理, 插件系统, 数据统计, 无后门, 端口扫描, 网络安全, 逆向工具, 隐私保护