20252807 2025-2026-2 《网络攻防实践》 第4次作业
1.实践内容
在网络攻防实验环境中完成TCP/IP协议栈重点协议的攻击实验,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击、TCP会话劫持攻击。
知识点介绍:
(1)ARP缓存欺骗攻击
ARP缓存欺骗是一种局域网攻击技术。利用ARP协议缺乏身份验证的漏洞,攻击者向目标主机发送伪造的ARP响应包,谎称自己的MAC地址是网关(或通信对端)的MAC地址。目标主机会盲目接收并更新本地的ARP缓存表,建立错误的“IP-MAC”映射关系。这会导致目标的网络流量被全部劫持到攻击者的机器上,进而被用于流量窃听(中间人攻击)、数据篡改或导致目标断网。
(2)ICMP重定向攻击
ICMP重定向攻击是一种基于网络层的路由欺骗技术。攻击者伪装成默认网关,向受害主机发送伪造的ICMP重定向报文,谎称自己是到达特定目的地的最优下一跳。受害主机轻信并修改本地路由表后,会将相关数据包错误地发送给攻击者。这使得攻击者能够轻松截获受害主机的特定网络流量,进而实施中间人窃听或拒绝服务攻击。
(3)SYN Flood攻击
SYN flood 是一种 DoS 攻击形式,攻击者向受害者的 TCP 端口发送许多 SYN 请求,但无意完成三次握手过程。攻击者要么使用欺骗的 IP 地址,要么不继续该过程。通过这种攻击,攻击者可以向受害者的队列灌水,该队列用于半开连接,即已完成 SYN、SYN-ACK 但尚未得到最终 ACK 的连接。当队列满时,受害者就无法再接受任何连接。

(4)TCP RST攻击
TCP RST 攻击可终止两个受害者之间已建立的 TCP 连接。例如,如果两个用户 A 和 B 之间有一个已建立的 telnet 连接(TCP),攻击者可以伪造一个从 A 发送到 B 的 RST 数据包,从而破坏现有连接。要成功实施这种攻击,攻击者需要正确构建 TCP RST 数据包。
(5)TCP会话劫持攻击
TCP 会话劫持的目标是通过注入恶意内容劫持两个受害者之间现有的TCP连接(会话)。如果这一连接是telnet 会话,攻击者能够向会话中注入恶意命令(比如删除某个重要文件),导致受害者执行恶意命令。

2.实践过程
2.1 ARP缓存欺骗攻击
选取kali作为攻击机,SEED和WinXP为靶机。
查看三个机子的ip和MAC地址:



由此可知:
kali:
IP:192.168.200.6
MAC:00:0c:29:56:01:ad
seed:
IP:192.168.200.3
MAC:00:0c:29:56:01:ad
winxp:
IP:192.168.200.5
MAC:00-0C-29-74-89-55
用seed对kali和winXP进行ping的操作:


输入:arp -a查看ARP映射:

可以看到映射正确。
在kali端下载netwox:

下载成功后,在kali端进行ARP缓存欺骗攻击:
输入:netwox 80 -e 00:0c:29:56:01:ad -i 192.168.200.5
将kali的mac地址篡改到winXP的mac地址上。

打开seed,查询arp映射表:

可以发现,192.168.200.5的mac地址改为了00:0c:29:56:01:ad,欺骗成功。
2.2 ICMP重定向攻击
在seed中ping百度,通过wireshark可以看到ICMP包:


在kali中输入:
netwox 86 -f "host 192.168.200.3" -g 192.168.200.6 -i 192.168.200.1
该命令是指seed发送数据包时以192.168.200.1的名义发送ICMP重定向报文,让kali成为路由地址。
wireshark中捕捉到的包如下,可以看到icmp的重定向:

seed中ping百度:

可以看到下一跳指向kali。
2.3 SYN Flood攻击
在winXP中启用telnet:

用kali对winXP进行telnet:

在kali的命令行中输入:
netwox 76 -i 192.168.200.5 -p 23
该命令是对winXP的23号端口进行SYN Flood攻击。

用wireshark捕捉包:

可以看到大量SYN标志的TCP包,目的地址是192.168.200.5,即winXP。
2.4 TCP RST攻击
在seed上用telnet登录winXP:

使用kali进行TCP RST攻击,root输入:
netwox 78 -i 192.168.200.5 --device eth0

在seed中可以看到连接中断:

在wireshark中捕包:

可以看到kali伪造seed对winXP发送了很多RST标志的包。
再次用seed用telnet登录winXP,以失败告终:

2.5 TCP会话劫持攻击
打开ettercap:

点击host中的scan for host对主机进行扫描:

可以点击host list查看扫描结果:

将seed和winXP设置为target1和target2:

打开MITM Menu中的ARP poisoning:

使用seed对winXP用telnet进行登录,然后在kali中选择对应的连接清单connections,可以查看到用户和密码的输入内容:

会话劫持成功。
3.学习中遇到的问题及解决
问题1:根据视频中的方法,在进行TCP RST攻击的时候,输入netwox 78 -i 192.168.200.5没有用。

wireshark捕捉不到带RST标志的TCP包:

解决方案:
查询资料后输入也没用,最后询问学习过该课程的同学,得知:输入netwox 78 -i 192.168.200.5 --device eth0即可。
--device eth0:指定网络接口,即通过名为 eth0 的网卡来发送和接收数据包。
4.学习感想和体会
ARP欺骗是利用无认证的ARP,可篡改IP-MAC映射,实现中间人攻击。
ICMP重定向是伪造路由优化报文,可劫持流量。
SYN Flood是利用半连接队列资源有限,耗尽服务器内存。
TCP RST攻击是伪造重置包,强行中断会话。
TCP会话劫持是嗅探序列号后注入恶意数据。
协议设计之初默认信任,缺乏身份验证与状态校验,导致这些攻击有效。安全必须分层加固,加密与认证是弥补协议盲区的关键。

浙公网安备 33010602011771号