@[TOC](内容预览 ≧∀≦ゞ
信息收集系列(四):端口扫描
前言
在前几篇文章中,我们介绍了 IP 和子域名的收集工作。那么,拿到这些 IP 和子域名后,接下来该做什么呢?我建议优先进行 端口扫描。
端口扫描是渗透测试和信息收集中的重要环节。这里推荐一篇横向对比测评文章:《16款端口扫描工具横向对比测评》。这篇文章对主流工具进行了深入分析,非常值得一读。
命令行工具推荐
在众多命令行端口扫描工具中,Nmap、Masscan 和 Naabu 是最经典且最受欢迎的工具。以下将详细介绍这三款工具的特点及使用建议:
1. Nmap
Nmap 是当前最知名的端口扫描工具之一,功能强大且全面。它支持多种扫描模式(如 TCP 扫描、SYN 扫描等),并能够深入识别服务、操作系统和网络结构特性。尽管如此,由于扫描速度相对较慢,它通常不适合作为大规模初始扫描工具,而更适合在目标明确的情况下进行深入分析。
2. Masscan
Masscan 是一款速度极快的端口扫描工具,能够在极短的时间内完成大规模扫描,非常适合初步筛选开放端口。然而,由于其扫描策略较为粗略,容易导致误报或漏报。因此,Masscan 通常需要与其他工具配合使用,以验证扫描结果的准确性。
3. Naabu
Naabu 是一款轻量级的高效端口扫描工具,由 ProjectDiscovery 团队开发。它设计简洁,专注于快速识别开放端口,是初始端口扫描的优秀选择。Naabu 的主要特点包括:
- 高效扫描:支持并发扫描,可快速识别目标的开放端口。
- 灵活配置:支持对目标、端口范围、扫描速率等参数进行自定义。
- 模块化设计:能够与其他工具(如 Nmap、Httpx)无缝集成,用于后续的深度分析。
Naabu 的优势:
- 速度快:相比 Nmap,Naabu 的扫描效率更高,适合大规模资产的初步端口检测。
- 准确性好:比 Masscan 的误报率低,同时支持灵活的重试和错误处理机制。
- 易于集成:Naabu 可将扫描结果直接传递给其他工具(如 Nmap),形成完整的扫描链。
4. Naabu + Nmap 联合方案
在追求扫描 效率 和 准确率 的同时,Naabu 与 Nmap 的组合是一个理想的解决方案。使用 Naabu 进行初步端口扫描后,将结果传递给 Nmap,进一步识别服务详情和漏洞信息。以下是具体的使用流程和命令示例:
naabu -list lists.txt -p - -exclude-ports 80,443,21,22,25 -rate 20000 -c 500 -retries 2 -warm-up-time 1 -silent -nmap-cli 'nmap -sV -oX scan.xml'
参数解释:
-list lists.txt:指定目标 IP 或域名列表。-exclude-ports 80,443,21,22,25:排除常见的端口,聚焦其他端口。-rate 20000:调整扫描速率至 20,000 包每秒。-c 500:并发线程数从默认的 25 提升到 500。-retries 2:减少重试次数以提升效率。-warm-up-time 1:预热时间设置为 1 秒。-silent:启用安静模式。-nmap-cli:调用 Nmap 进行更深入的服务识别,并保存扫描结果。
➤ 为什么这里选用完整 CONNECT 扫描而不是 SYN 扫描?
在端口扫描中,SYN 扫描 通常更高效,因为它通过忽略 TCP 三次握手的后续步骤减少了数据包的交互,从而提高扫描速度。然而,在某些场景下,完整的 CONNECT 扫描 更为适合。这是因为:
- 资源开销:尽管 SYN 扫描发送的数据包更少,但由于它需要保持半开连接状态,关闭套接字可能消耗更多资源。
- 稳定性:某些环境中,半开连接可能触发防火墙或 IDS 的拦截,而完整的 CONNECT 扫描更易于绕过这些限制。
- 实测结果:经过多次测试,完整 CONNECT 扫描在某些情况下花费的时间更短。这可能与操作系统在管理半开连接和关闭资源时的机制有关。
总结:选择扫描模式需要结合实际测试场景。一般情况下,可优先尝试 SYN 扫描;若存在误报或性能瓶颈,可切换为 CONNECT 扫描。
图形化工具推荐
对于更直观、综合的操作体验,图形化工具是不错的选择。目前市面上有非常多优秀的图形化GUI工具,以下是几款我个人常用的工具:
1. TscanPlus (无影)
功能特点:
- 综合性网络安全检测工具,支持快速资产发现和漏洞检测。
- 构建基础资产信息库,标识薄弱点和高危资产。
- 更新频率高,扫描耗时短,资产发现率高。
- 支持数据导出,结果可读性良好。
GitHub 地址:https://github.com/TideSec/TscanPlus
2. Goby
功能特点:
- 攻击面绘测及自动化漏洞扫描工具。
- 预置丰富漏洞库(超过 10 万种规则),支持硬件设备和软件业务系统识别。
- 构建完整资产数据库,适合安全应急场景。
- 扫描速度稍慢,但覆盖范围全面。
下载地址:https://gobysec.net/
3. Mitan (密探)
功能特点:
- 基于 Java 开发的综合信息收集工具,整合多种功能接口。
- 支持资产信息收集、IP 端口查询、子域名爆破、文件扫描等功能。
- 操作简单,适合渗透测试和日常信息收集。
GitHub 地址:https://github.com/kkbo8005/mitan
4. TangGo
功能特点:
- 国产化综合测试平台,基于实战经验开发,适合 Web 安全测试和评估。
- 提供 SYN 扫描模式,速度快(2 小时内完成),适合快速扫描。
- 支持 TCP 扫描模式,扫描更全面且结果更准确。
- 集成多种功能插件,但社区版功能有限。
下载地址:https://tanggo.nosugar.tech/
小结
本文介绍的这些工具各具特色,大家可根据实际需求选择合适的工具组合使用。在操作中,推荐结合命令行工具与图形化工具的优势,构建高效的扫描和信息收集流程。
思考点:
- 哪些图形化工具可以与命令行工具更好地集成使用?
- 如何在大规模扫描中平衡结果的准确性与效率?
欢迎在评论区分享你使用这些工具的心得!
原文 https://blog.csdn.net/2301_79518550/article/details/143816918