news 2026/5/8 17:19:48

从三次握手到RST包:用Wireshark抓包图解nmap五种扫描原理(附pcap文件)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
从三次握手到RST包:用Wireshark抓包图解nmap五种扫描原理(附pcap文件)

从数据包视角拆解Nmap五大扫描技术:Wireshark实战分析指南

当你盯着终端里nmap扫描结果时,是否好奇过那些"open"、"filtered"状态的判断依据?网络协议教科书上的三次握手示意图,在实际流量中究竟长什么样?本文将带你用Wireshark亲手捕获五种经典扫描方式产生的数据包,像侦探分析指纹那样解读每个SYN、ACK、RST背后的故事。我们不仅会还原教科书上的标准场景,更会捕捉那些教科书没写的异常情况——比如当FIN包遇上配置错误的路由器时会发生什么。无论你是刚接触网络安全的初学者,还是想深入理解扫描原理的工程师,这套基于真实流量的分析方法都将为你打开一扇观察TCP/IP协议的新窗口。

1. 环境准备与实验设计

在开始抓包前,需要精心设计实验环境以避免干扰数据。建议使用VirtualBox搭建包含三台主机的隔离网络:攻击机(运行Kali Linux)、靶机(运行未打补丁的Windows 7)和观察机(运行Wireshark的Ubuntu)。这种配置既能保证安全性,又能清晰区分扫描流量与背景流量。

关键工具配置要点:

# Kali Linux上的必要准备 sudo apt install -y nmap wireshark sudo usermod -aG wireshark $USER

网络拓扑需要特别注意:

  • 将三台主机的虚拟网卡都连接到"内部网络"模式
  • 禁用所有主机的IPv6协议栈
  • 在靶机上关闭Windows防火墙基本配置
# 靶机上的防火墙配置 netsh advfirewall set allprofiles state off

提示:实验结束后务必恢复防火墙设置,真实环境中绝对不要长时间关闭防护

Wireshark抓包过滤器推荐配置为tcp or udp or icmp,显示过滤器则根据具体扫描类型灵活调整。建议为每种扫描创建独立的捕获文件,文件名包含时间戳和扫描类型(如20240521_syn_scan.pcapng)。

2. TCP SYN扫描:半开放的艺术

作为nmap默认的扫描方式,SYN扫描完美诠释了"最少接触"原则。它像是个礼貌的敲门者——发送SYN包后,无论目标是否回应都会立即撤退,绝不完成整个握手过程。这种特性使其在扫描速度和隐蔽性之间取得了绝佳平衡。

在Wireshark中观察典型交互时,重点关注三个关键帧:

  1. 扫描机发送的SYN包(Flags字段仅SYN=1)
  2. 目标机的响应(SYN+ACK或RST)
  3. 扫描机立即回复的RST(终止潜在连接)

通过过滤器tcp.flags.syn==1 and tcp.flags.ack==0可以快速定位所有初始SYN探针。下表对比了不同响应对应的端口状态:

响应类型典型特征端口状态判断
SYN+ACK目标端口回复SYN=1,ACK=1开放
RST目标端口回复RST=1关闭
无响应超过重试次数仍无回复过滤

实际抓包中常会遇到意外情况。比如某次对Web服务器的扫描中,我们发现了这样的异常序列:

1. 扫描机:59876 → 目标机:80 [SYN] 2. 目标机:80 → 扫描机:59876 [SYN+ACK] 3. 扫描机:59876 → 目标机:80 [RST] 4. 目标机:80 → 扫描机:59876 [RST]

第4个RST包的出现表明目标系统可能采用了某种连接跟踪机制。这种细节只有在实际抓包中才能观察到,正是协议分析的魅力所在。

3. TCP Connect扫描:完整连接的代价

当SYN扫描不可用时(如某些严格过滤SYN包的防火墙环境),nmap会降级使用系统自带的connect()函数进行扫描。这种方式会走完标准三次握手流程,在目标系统留下完整的连接日志,堪称扫描界的"实名制"操作。

在Wireshark中分析Connect扫描时,典型的成功连接会显示完整握手过程:

1. 扫描机:49234 → 目标机:22 [SYN] 2. 目标机:22 → 扫描机:49234 [SYN, ACK] 3. 扫描机:49234 → 目标机:22 [ACK] 4. 扫描机:49234 → 目标机:22 [FIN, ACK] 5. 目标机:22 → 扫描机:49234 [ACK] 6. 目标机:22 → 扫描机:49234 [FIN, ACK] 7. 扫描机:49234 → 目标机:22 [ACK]

有趣的是,当遇到老旧设备时,可能会捕获到不符合RFC标准的交互。例如某次对嵌入式设备的扫描中,我们观察到了这样的异常终止:

3. 扫描机:49234 → 目标机:80 [ACK] 4. 扫描机:49234 → 目标机:80 [RST]

扫描机突然发送RST而非正常FIN,表明系统套接字库在连接后立即调用了close()而非shutdown()。这种情况在快速连续扫描多个端口时尤为常见。

4. TCP ACK扫描:防火墙探测术

ACK扫描是网络侦探的独特工具——它不关心端口是否开放,而是专门探测防火墙规则。其原理基于一个简单事实:符合RFC的TCP栈必须对不期望的ACK包回复RST。

实验环境中,我们在靶机前部署了iptables防火墙进行对比测试:

# 允许SYN但丢弃ACK的规则 iptables -A INPUT -p tcp --tcp-flags SYN SYN -j ACCEPT iptables -A INPUT -p tcp --tcp-flags ACK ACK -j DROP

Wireshark捕获到的典型流量模式如下:

未过滤端口:

1. 扫描机:54321 → 目标机:22 [ACK] 2. 目标机:22 → 扫描机:54321 [RST]

被过滤端口:

1. 扫描机:54321 → 目标机:80 [ACK] 2. (无响应)

实际网络环境中,ACK扫描常会暴露配置错误的安全设备。某次对企业网关的测试中,我们发现了这样的反常模式:

1. 扫描机:54321 → 目标机:443 [ACK] 2. 目标机:443 → 扫描机:54321 [SYN, ACK]

防火墙错误地将ACK包当作SYN处理,这种异常行为往往意味着存在协议栈修改或深度包检测设备。

5. FIN/Xmas/NULL扫描:隐秘行动三部曲

这三种扫描方式统称为"隐秘扫描",它们利用TCP协议规范中的灰色地带——RFC 793规定,关闭的端口必须对异常包回复RST,而开放端口则应忽略这些包。现代系统已普遍修补此行为,但在特定环境下仍能发挥作用。

在Wireshark中配置着色规则可以直观区分扫描类型:

  • FIN扫描:红色标记FIN=1,ACK=0的包
  • Xmas扫描:绿色标记FIN=1,URG=1,PSH=1的包
  • NULL扫描:蓝色标记所有标志位为0的包

对Windows XP系统的测试捕获到了典型响应:

# FIN扫描 1. 扫描机:44444 → 目标机:135 [FIN] 2. 目标机:135 → 扫描机:44444 [RST] # NULL扫描 1. 扫描机:44444 → 目标机:139 [无标志] 2. 目标机:139 → 扫描机:44444 [RST]

而针对Linux服务器的扫描则展示了不同表现:

1. 扫描机:44444 → 目标机:22 [FIN] 2. (无响应)

这种差异正是操作系统指纹识别的基础——不同TCP栈对非常规包的处理方式各有特色。

6. UDP扫描:沉默中的发现

UDP扫描就像在黑暗房间中寻找电灯开关——你只能通过碰壁(ICMP不可达)来确认开关不存在,而沉默可能意味着开关可用,也可能只是你的声音被吸收了。这种扫描速度极慢但不可或缺,因为DNS、NTP等关键服务都运行在UDP上。

Wireshark分析UDP扫描时需要特别注意ICMP响应与原始探针的关联。使用icmp.type==3 and icmp.code==3过滤器可快速定位端口不可达消息。以下是典型交互:

关闭的端口:

1. 扫描机:54321 → 目标机:53 [UDP] 2. 目标机 → 扫描机 [ICMP 目标不可达 端口不可达]

开放/过滤的端口:

1. 扫描机:54321 → 目标机:161 [UDP] 2. (无响应)

实际环境中,UDP扫描最常遇到的是速率限制问题。某次对ISP级设备的测试显示:

1-10. 扫描机连续发送10个UDP探针 11. 目标机回复单个ICMP不可达

这种响应模式表明设备可能配置了ICMP抑制策略,需要在nmap中调整--max-retries参数才能准确判断端口状态。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/8 17:19:23

如何在Mac上免费实现NTFS硬盘读写:Free NTFS for Mac完整指南

如何在Mac上免费实现NTFS硬盘读写:Free NTFS for Mac完整指南 【免费下载链接】Free-NTFS-for-Mac Nigate: An open-source NTFS utility for Mac. It supports all Mac models (Intel and Apple Silicon), providing full read-write access, mounting, and manage…

作者头像 李华
网站建设 2026/5/8 17:18:59

PaPerTan真正香嘛

还在为论文写作熬夜到凌晨?面对导师反复修改的意见心力交瘁?查重率居高不下无法通过学校审核?别担心,AI时代已经为你的论文难题提供了完美解决方案。本文实测6款顶尖AI论文写作工具,助你轻松搞定各类论文,一…

作者头像 李华
网站建设 2026/5/8 17:18:46

英伟达中国AI加速器市场份额归零,国产AI芯片三大门派谁能填坑?

【导语:英伟达在中国AI加速器市场份额降至零,国产AI芯片三大门派华为昇腾、海光DCU、寒武纪各展所长,试图填补市场空缺,但国产替代终局未到,竞争才刚开局。】英伟达高端芯片被挡,中国AI芯片市场生变2020年以…

作者头像 李华