ShehanSulakshana/PortScanner

GitHub: ShehanSulakshana/PortScanner

一款基于Python的轻量级端口扫描器,可实时检测目标主机的开放端口及运行服务,适合网络侦察和安全学习。

Stars: 1 | Forks: 0

# 🔍 PortScanner ![Python](https://img.shields.io/badge/Python-3.x-blue?style=flat&logo=python) ![License](https://img.shields.io/badge/License-MIT-green?style=flat) ![Purpose](https://img.shields.io/badge/Purpose-Educational-orange?style=flat) 一款基于 Python 的轻量级端口扫描器,可实时检测任意主机或 IP 地址上的开放端口及运行服务。作为一个实践性的网络安全工具构建,旨在用于网络侦察和漏洞评估练习。 ## ✨ 功能特性 - 🌐 接受 **IP 地址和域名**(自动将主机名解析为 IP) - 🎯 **自定义端口范围** 扫描 —— 精准定位您需要的目标 - ⚡ **实时输出** —— 发现开放端口和服务时即时显示 - 💾 **导出结果** —— 将开放端口和服务保存到 `.txt` 文件 - 🏷️ **服务检测** —— 识别每个开放端口上运行的服务(例如 HTTP, SSH, FTP) ## 📁 文件说明 | File | Description | |---|---| | `portscanner.py` | 主扫描脚本 | | `req.txt` | Python 依赖项 | ## ⚙️ 安装说明 ``` git clone https://github.com/ShehanSulakshana/PortScanner.git cd PortScanner pip install -r req.txt ``` ## 🚀 使用方法 ``` python portscanner.py ``` 系统将提示您输入: | Input | Example | Notes | |---|---|---| | Host / IP | `192.168.1.1` 或 `example.com` | 域名会自动解析为 IP | | Port range | `1-1024` | 范围越大耗时越长 | ## 📤 示例输出 ``` Scanning 192.168.1.1 from port 1 to 1024... [OPEN] Port 22 → SSH [OPEN] Port 80 → HTTP [OPEN] Port 443 → HTTPS Scan complete. 3 open ports found. Save results to file? (y/n): ``` ## 🛡️ 网络安全背景 端口扫描是一项基础技术,常用于: - **渗透测试** —— 在交战前绘制攻击面 - **网络管理** —— 审计哪些服务处于暴露状态 - **CTF 比赛** —— 任何挑战的侦察阶段 - **漏洞评估** —— 识别潜在危险的开放端口 该工具提供与 `nmap` 等行业工具相同的核心功能,使用 Python 从零构建,以深入理解其底层原理。 ## 📜 许可证 [MIT](LICENSE) ## 👨‍💻 作者 **Shehan Sulakshana** 网络安全专业本科生 | Python 与安全爱好者 [GitHub](https://github.com/ShehanSulakshana)
标签:AES-256, DNS查询工具, Python, Qt框架, TCP/IP, 云存储安全, 套接字编程, 密码管理, 开源, 插件系统, 攻击面测绘, 教育用途, 无后门, 服务识别, 漏洞评估, 端口扫描器, 系统独立性, 网络安全, 网络扫描, 隐私保护