Rehana196/Advanced-Port-Scanner

GitHub: Rehana196/Advanced-Port-Scanner

一款带有赛博朋克 GUI 的 Python 多线程端口扫描器,支持服务检测、操作系统启发式分析和报告导出,面向教育和授权安全测试场景。

Stars: 0 | Forks: 0

# 高级端口扫描器 一款使用 Python 编写的专业、模块化、多线程端口扫描器,配备高端的“暗黑黑客”霓虹赛博朋克风格 GUI。它具备高级 banner 抓取、服务检测、操作系统启发式分析以及报告导出功能。 ## 架构与项目结构 该项目遵循标准软件工程模式进行模块化构建: ``` Advanced-Port-Scanner/ │ ├── main.py # Application entry point ├── gui.py # Tkinter application UI (Dark Hacker Theme) ├── scanner.py # Multi-threaded TCP/UDP scanning engines ├── banner.py # Custom network banner grabber ├── service_detection.py # Banner regex matching and service discovery ├── os_detection.py # TTL and banner OS heuristic classifier ├── export.py # Export module (JSON, CSV, TXT) ├── logger.py # Scan history management (JSON logs) ├── utils.py # Hostname resolvers, IP validators, configuration tools ├── config.py # Styling parameters and common network configurations └── requirements.txt # Project dependencies ``` ## 功能特性 - **交互式赛博朋克 UI**:使用标准 `tkinter.ttk` 实现流畅的霓虹元素(无需外部样式引擎)。 - **多线程扫描 Pipeline**:支持并发扫描数百个端口。 - **服务版本检测**:连接并分析服务 banner(例如 Apache、SSH、nginx 版本提取)。 - **启发式操作系统分析**:通过解析 banner 中的签名匹配并分析网络 TTL 参数来检测目标操作系统。 - **扫描历史日志**:记录之前的扫描,方便您在日志仪表板中查看。 - **通用导出器**:一键快速生成 JSON、CSV 或人类可读的 TXT 安全报告。 ## 快速开始 ### 前置条件 - Python 3.8 或更高版本。 - 使用标准库(`tkinter`、`socket`、`threading` 等)。如果您使用的是 Linux,可能需要安装 Tkinter 包(例如 `sudo apt-get install python3-tk`)。 ### 运行应用 使用以下命令执行应用: ``` python main.py ``` ### 用法说明 1. 输入您的目标 IP 或主机名(例如 `127.0.0.1` 或 `scanme.nmap.org`)。 2. 提供端口列表或范围(例如 `21-80,443`)。或者,输入 `common` 以查询 `config.py` 中配置的常用 TCP/UDP 服务列表。 3. 选择您的协议(TCP、UDP 或两者兼顾)并指定要分配的线程数。 4. 按 **INITIATE SCAN**。 5. 扫描完成后,在右下角选择您偏好的格式以导出报告,或者在 **[ SCAN LOGS & HISTORY ]**(扫描日志与历史)选项卡中查看您过往的日志。
标签:Python, 云存储安全, 图形化界面, 插件系统, 数据统计, 无后门, 端口扫描, 网络安全, 网络扫描, 逆向工具, 隐私保护