suficreates/PySocket-Portscanner

GitHub: suficreates/PySocket-Portscanner

一款基于 Python 的高性能多线程端口扫描器,集成了服务识别、操作系统指纹探测和自动风险评估,帮助安全人员快速掌握目标系统的攻击面。

Stars: 0 | Forks: 0

本项目是一个高性能、多线程的**网络端口扫描器**,旨在全面洞察目标系统的安全态势。该工具使用 Python 构建,超越了简单的连通性检查,将服务识别、操作系统指纹识别和风险评估集成到一个精简的工具中。 该扫描器利用并发机制高效处理大型端口范围,同时提供专业的彩色编码 CLI 界面,用于实时监控和“实时攻击洞察”。 ## 🚀 核心特性 * **双向解析:** 使用 DNS 协议,在域名和 IP 地址之间进行无缝转换(反之亦然)。 * **灵活的扫描配置:** * **快速扫描:** 针对知名端口(0–1024)进行快速评估。 * **全面扫描:** 对所有 65,535 个可用端口进行彻底审查。 * **自定义扫描:** 允许用户根据需要定义特定的端口范围。 * **深度包检测:** * **Banner 抓取:** 获取服务 Banner 以识别软件版本。 * **协议映射:** 识别常见服务(例如 80 端口的 HTTP,22 端口的 SSH)并标记非标准配置。 * **OS 指纹识别:** 分析响应数据以估算主机的操作系统。 * **智能报告:** * **风险评估:** 根据开放端口自动对系统的漏洞等级(低、中、高)进行分类。 * **安全摘要:** 在扫描结束时生成有关系统攻击面的洞察报告。 * **导出功能:** 结果可以保存到本地文件,以便进一步的审计和记录。 * **性能与界面:** * **实时攻击洞察:** 在扫描过程中显示实时数据。 * **执行指标:** 跟踪并显示完成扫描所需的总时间。 * **专业 CLI:** 利用 `colorama` 实现清晰、易读且专业级的终端输出。 ## 🛠️ 技术模块分解 本项目基于几个关键的 Python 库构建,每个库在扫描器的架构中都发挥着关键作用: | 模块 | 在本项目中的用途 | | :--- | :--- | | `socket` | 项目的骨干;用于创建网络连接、执行 DNS 查询和抓取服务 Banner。 | | `concurrent.futures` | 实现 `ThreadPoolExecutor` 以同时执行数百个端口检查,显著减少扫描时间。 | | `time` | 用于计算扫描开始与结束之间的时间差,以提供性能指标。 | | `colorama` | 提供跨平台的 ANSI 转义字符序列支持,允许输出绿色(开放)、红色(关闭)和黄色(警告)的文本。 | ### 🔍 聚焦:`socket` 实现 `socket` 模块是用于扫描逻辑的主要工具。在本项目中,它用于通过 `socket.connect_ex()` 尝试执行“三次握手”。 与标准的连接尝试不同,`connect_ex` 返回一个错误指示器,而不是抛出异常: * 返回值为 `0` 表示端口**开放**。 * 任何其他返回值则表示端口**已关闭或被过滤**。 此外,`socket.gethostbyname()` 和 `socket.gethostbyaddr()` 被用于处理 DNS 解析功能,确保用户可以输入 URL 或原始 IP 作为目标。 ## 💻 如何使用 1. **输入目标:** 输入域名或 IP 地址。 2. **选择模式:** 在快速、全面或自定义范围之间进行选择。 3. **分析:** 当扫描器识别开放端口、抓取 Banner 并评估风险等级时,查看实时洞察。 4. **导出:** 将最终摘要和端口列表保存到 `.txt` 文件中以供记录。
标签:Banner抓取, colorama, DNS解析, Python, 协议分析, 反取证, 安全评估, 开源项目, 插件系统, 操作系统指纹识别, 攻击路径可视化, 攻击面分析, 数据统计, 无后门, 无线安全, 服务器安全, 权限提升, 深度包检测, 端口扫描, 网络安全, 网络安全分析, 网络扫描器, 逆向工具, 隐私保护, 黑客工具