tanu40/Port-Scanner
GitHub: tanu40/Port-Scanner
基于 Python Socket 编程的轻量级端口扫描器,支持 Banner 抓取和 CSV 报告导出,适用于网络安全学习和小规模端口探测。
Stars: 0 | Forks: 0
# 🔍 带有 Banner Grabbing 功能的 Python 端口扫描器
一个简单而有效的基于 Python 的端口扫描器,可扫描目标系统的前 100 个端口,识别开放端口,执行 banner grabbing,并将结果保存到 CSV 文件中。
## 🚀 功能特性
* 扫描端口 **1–100**
* 检测 **开放/关闭端口**
* 执行 **banner grabbing** 以识别服务
* 优雅地处理 **超时和错误**
* 以 **CSV 格式** 保存结果
* 同时支持 **IP 地址和域名**
* 允许使用 **Ctrl + C** 安全中断
## 🛠️ 使用技术
* Python
* Socket 编程
* CSV 处理
## 📂 项目结构
```
port_scanner_project/
│
├── port_scanner.py
└── scan_results.csv
```
## ⚙️ 安装与设置
1. Clone 仓库:
```
git clone https://github.com/your-username/port-scanner-python.git
cd port-scanner-python
```
2. 运行脚本:
```
python port_scanner.py
```
## ▶️ 用法
* 在提示时输入目标 IP 或域名:
```
Enter target IP or domain: scanme.nmap.org
```
* 扫描器将:
* 检查端口 1–100
* 显示开放端口
* 尝试获取服务 banners
## 📊 输出
结果保存在:
```
scan_results.csv
```
示例:
```
Port,Status,Banner
22,Open,SSH-2.0-OpenSSH
80,Open,Apache Server
21,Closed,-
```
## ⚠️ 免责声明
此工具仅用于 **教育目的**。
* 未经许可请勿扫描系统
* 仅在以下环境使用:
* 您自己的机器 (`127.0.0.1`)
* 已授权的环境
## 💡 未来改进方向
* 多线程以实现更快扫描
* 自定义端口范围
* 服务检测 (HTTP, FTP, SSH)
* GUI 界面
* 与安全工具集成
## 🧑💻 作者
Tanushka Kumbhar
标签:Banner Grabbing, CSV 报告, Python, Qt框架, Socket 编程, Ubuntu, 二进制发布, 开源工具, 插件系统, 攻击路径可视化, 教育目的, 数据统计, 无后门, 服务器安全, 服务识别, 端口扫描, 系统分析, 网络分析, 网络安全, 网络扫描器, 网络调试, 脚本, 自动化, 逆向工具, 错误处理, 隐私保护, 黑客工具