RohanBhoi-7064/port-scanner

GitHub: RohanBhoi-7064/port-scanner

一款基于 Python 标准库的轻量级多线程命令行端口扫描器,集成了服务 Banner 抓取与漏洞签名匹配功能,用于快速检测目标主机的开放端口与潜在安全隐患。

Stars: 0 | Forks: 0

# 端口扫描器与漏洞签名检测工具 一个基于 Python 构建的轻量级、并发命令行工具,用于执行快速的网络端口扫描、banner 抓取以及基本的漏洞签名匹配。 ## 功能 - **多线程扫描**:使用 Python 的 `concurrent.futures.ThreadPoolExecutor` 并发检查端口,实现高性能。 - **服务 Banner 抓取**:捕获开放端口上的应用 banner,以识别正在运行的服务。 - **签名漏洞检测**:将抓取到的 banner 与本地已知存在漏洞的软件版本目录(例如过时的 SSH、vsftpd、Apache)进行匹配。 - **报告生成**:将扫描结果导出为结构化的文本 (`.txt`) 或 JSON (`.json`) 文件。 ## 环境要求 - Python 3.x 无需任何外部依赖。该项目完全依赖 Python 标准库(`socket`、`sys`、`concurrent.futures`、`json`、`datetime`、`argparse`)。 ## 安装说明 将仓库克隆到本地: ``` git clone https://github.com/rohan-bhoi/port-scanner.git cd port-scanner ``` ## 使用说明 使用 Python 运行脚本,并传入目标主机及可选参数。 ``` python scanner.py [options] ``` ### 选项 - `target`:要扫描的目标主机 IP 地址或域名(例如 `127.0.0.1` 或 `example.com`)。 - `-p`, `--ports`:要扫描的端口范围。默认为 `1-1024`。(例如 `-p 80` 或 `-p 1-500`)。 - `-t`, `--threads`:要生成的并发线程数。默认为 `50`。 - `-o`, `--output`:写入扫描报告的路径(支持 `.txt` 或 `.json` 文件格式)。 ### 示例 **在默认端口 (1-1024) 上进行基本扫描:** ``` python scanner.py 127.0.0.1 ``` **使用自定义线程数扫描特定范围:** ``` python scanner.py localhost -p 1-8080 -t 100 ``` **将结果导出为 JSON 文件:** ``` python scanner.py localhost -p 20-100 -o scan_report.json ``` ## 许可证 MIT License
标签:Python, 插件系统, 数据统计, 无后门, 端口扫描, 逆向工具