⑴ 网络侦察技术之主动扫描探测(一)
网络侦察是ATT&CK框架和网络杀伤链的关键步骤,其中主动扫描探测是获取目标网络资产信息的核心技术。该技术通过主动发送特定探测数据包,接收响应结果,以此判断目标网络的存活状态、资产信息等关键数据。主动扫描探测技术解决了以下几个核心问题:
识别目标网段中哪些主机是存活的?
确定目标存活主机开放了哪些端口?
识别开放端口上运行的协议或服务?
判断这些服务运行在何种操作系统上?
收集目标服务信息和资源,以支持后续深入分析。
主动扫描探测技术分为三个阶段:发现、识别和爬取。
发现阶段:通过存活主机发现和端口扫描,寻找目标网段中的存活IP和开放端口信息。
识别阶段:使用协议服务识别、产品识别和操作系统识别技术,确定目标主机上运行的服务、软件产品及其操作系统类型和版本号。
爬取阶段:根据攻击者需求,收集目标主机提供的服务相关信息与资源,包括Banner信息、网页、SSL证书等。
为实现上述技术,有多种工具和方法可供选择。例如,高速网络扫描器Masscan和Zmap可用于快速扫描存活主机和端口开放探测。Nmap提供协议服务指纹库进行精确识别,并具备产品、操作系统及其版本号的识别能力。Curl用于网页抓取,Openssl用于SSL证书爬取,Zgrab2则支持爬取目标协议的Banner信息和其他相关信息。Nmap是一个功能强大的扫描探测工具,能够从发现到爬取提供全面支持,并具备脚本引擎供用户进行扩展。
本文将通过多篇文章详细介绍这些扫描探测工具的底层原理及使用建议。本文以Nmap为例,首先介绍存活主机发现和端口扫描技术。
存活主机发现技术主要通过Ping扫描实现,包括ICMP Ping、ARP Ping、TCP SYN Ping、TCP ACK Ping、UDP Ping和SCTP INIT Ping等。这些技术各有特点,适用于不同场景下的网络环境。例如,ICMP Ping适用于标准网络环境;ARP Ping仅适用于本地局域网;TCP SYN Ping和TCP ACK Ping在发现存活主机的同时,可以探测端口状态;UDP Ping适用于绕过仅对TCP进行访问控制的防火墙;SCTP INIT Ping常用于SS7/SIGTRAN相关服务的探测。
端口扫描技术旨在找到存活主机上开放的端口或直接探测特定端口状态。Nmap支持多种端口扫描方式,包括TCP SYN扫描、TCP全连接扫描(TCP connect)、UDP扫描、SCTP INIT扫描、TCP NULL、FIN、Xmas扫描、TCP ACK扫描、TCP Window扫描、TCP Maimon扫描、自定义TCP扫描、SCTP COOKIE ECHO扫描、IDLE扫描和IP Protocol扫描等。
本文详细介绍了各种端口扫描技术的原理和使用场景,并根据具体需求提供了相应的使用建议。此外,还探讨了如何结合多种扫描技术,以提高检测准确率、扫描效率和隐匿性。
主动扫描探测技术对于网络侦察和攻击策略至关重要。通过了解和掌握这些技术,攻击者可以更有效地识别和获取目标网络的资产信息。未来文章将深入探讨识别和爬取阶段的技术和应用,欢迎读者继续关注。