B-iLyas647/Port-scanner-v1.0

GitHub: B-iLyas647/Port-scanner-v1.0

一款零依赖的 Python 命令行多线程 TCP 端口扫描器,支持 banner 抓取与结果导出。

Stars: 0 | Forks: 0

# 🔍 端口扫描器 一个使用 Python 构建的快速、轻量级命令行端口扫描器。 支持多线程扫描、banner 抓取和结果导出。 ## 功能 - 使用原始 socket 进行 TCP 端口扫描 - 使用 `ThreadPoolExecutor`(200个工作线程)进行多线程扫描 - 通过 banner 抓取识别运行中的服务 - 常用端口模式(20个最关键的端口) - 使用正则表达式进行输入验证 - 将结果导出到文本文件 - 清晰的表格展示 ## 环境要求 - Python 3.x - 无需任何外部库 ## 使用方法 ``` python port_scanner.py --target [--ports | --common] [options] ``` ## 参数 | 参数 | 描述 | |----------|-------------| | `--target` | 目标 IP 地址(必填) | | `--ports` | 端口范围(例如 `1-1000`)或单个端口(例如 `80`) | | `--common` | 扫描 20 个最常用的端口 | | `--banner` | 从开放的端口抓取 banner | | `--timeout` | 每个端口的超时时间,以秒为单位(默认:`0.5`) | | `--export` | 将结果导出到文件(例如 `results.txt`) | ## 示例 ``` # 扫描常见端口并进行 banner grabbing python port_scanner.py --target 192.168.1.1 --common --banner # 扫描端口范围 python port_scanner.py --target 192.168.1.1 --ports 1-1000 # 扫描并导出结果 python port_scanner.py --target 192.168.1.1 --common --banner --export results.txt # 自定义 timeout python port_scanner.py --target 192.168.1.1 --ports 1-500 --timeout 0.3 ``` ## 法律声明 此工具仅用于教育目的和授权测试。 未经许可扫描网络是违法的。 在扫描任何目标之前,请务必确保您已获得授权。 ## 作者 **Ilyas** — 卡萨布兰卡 ISTA (OFPPT) 数字开发专业大一学生。 正在深入学习 Python、网络和 Web 安全技术。
标签:Banner抓取, Python, 云存储安全, 插件系统, 数据统计, 无后门, 服务器安全, 端口扫描, 系统独立性, 网络扫描, 逆向工具