20252811 2025-2026-2 《网络攻防实践》第四周作业

一、实验内容

网络协议在设计时通常优先考虑通信效率和互联互通,往往在认证机制、完整性校验和可信边界等方面存在安全权衡。本次实践涉及的协议安全缺陷主要源于以下几个共同特点:缺乏源头验证机制、过度信任本地网络消息、状态管理机制不完善。

1.1 ARP协议欺骗攻击

ARP协议在局域网中负责IP地址到MAC地址的解析,但其设计缺乏对响应报文的真实性验证。攻击者可主动发送伪造的ARP响应,诱使目标主机更新ARP缓存表,将本应发往合法主机的数据流转发到攻击者控制的设备。这种中间人攻击手段为后续的监听或篡改创造了条件。

1.2 ICMP重定向攻击

ICMP重定向功能原本用于优化本地网络路由路径,但当主机无条件信任接收到的重定向报文时,攻击者便可伪造此类消息,误导受害者修改路由表项。这使得数据包可能被导向非预期路径,甚至经过攻击者主机,破坏了正常的网络通信拓扑。

1.3 SYN泛洪攻击

这是针对TCP协议三次握手过程的资源耗尽型攻击。攻击者大量发送初始SYN请求,却不完成后续握手步骤,导致目标主机维持大量半开连接状态,消耗系统资源。当连接队列被占满时,合法用户将无法建立新连接,从而形成拒绝服务。

1.4 TCP连接重置攻击

由于TCP协议中RST(复位)标志能够直接终止连接,且早期的序列号验证不够严格,攻击者可通过伪造具有适当序列号的RST数据包,强行中断已建立的TCP会话。这种攻击破坏了通信的可用性,且不易被通信双方立即察觉。

1.5 TCP会话劫持攻击

在成功实施中间人攻击或监听网络流量的基础上,攻击者可对传输中的TCP数据包进行截获、分析,并在适当时机注入伪造数据。通过预测或获取正确的序列号,攻击者能够冒充通信一方发送恶意内容,实现会话控制权窃取。


二、实践过程

首先准备三台同网段的虚拟机,并测试连通性,

0.81


1.00


0.60

三台虚拟机分别是Kali,Winxpattacker以及Seedlab-Ubuntu20.04,IP地址与对应的MAC地址如下表所示

虚拟机 IP MAC
Seedlab-Ubuntu 192.168.200.3 00:0c:29:ce:2d:12
Winxp 192.168.200.5 00:0c:29:cf:08:af
Kali 192.168.200.8 00:0c:29:3f:86:36

2.1 ARP缓存欺骗攻击

首先选择Seedlab-Ubuntu20.04作为攻击机(以下简称攻击机),在攻击机上安装netwox

输入如下指令

sudo apt install netwox -y --fix-missing

0.76

安装完成后首先查看Kali的ARP表格,然后在攻击机上输入ARP攻击命令

sudo netwox 80 -e 00:0c:29:ce:2d:12 -i 192.168.200.1


1.89


在Kali虚拟机上可以看出攻击结果


0.97

可以看出ARP攻击后原先的网关MAC变成攻击机MAC,攻击成功


2.2 ICMP重定向攻击

首先在Kali上Ping百度的网址ping baidu.com

然后在攻击机上输入指令

sudo netwox 86 -f "host 192.168.200.8" -g 192.168.200.3 -i 192.168.200.1

这是一个ARP欺骗攻击命令。它以管理员权限运行netwox工具,伪造ARP响应报文,欺骗IP地址为192.168.200.8的主机,使其错误地认为:网关192.168.200.1的MAC地址是攻击者的MAC地址。这样,目标主机发往网关地址的网络流量都会被重定向到攻击者主机,从而实现监听或篡改的中间人攻击。


下图为攻击结果,可以看出第一个包能够收到百度的响应,后面的包都被重定向到了192.168.200.3


1.00


2.3 SYN Flood攻击

首先打开Winxp的telnet服务

运行cmd,输入指令services.msc

选中telnet启用


0.67

Kali向Winxp发起telnet请求检测telnet是否能连接


1.00

在攻击机上运行指令

sudo netwox 76 -i 192.168.200.5 -p 23

Wireshark上面查看结果:


0.60

可以看出大量向Winxp23端口的syn请求报文占用资源,此时用Kali再向Winxp发起telnet请求


1.00

可以看出在SYN攻击时Winxp拒绝了telnet服务,关闭了攻击机的SYN攻击指令之后,telnet连接又恢复了正常,攻击成功


2.4 TCP RST攻击

首先Kali向Winxp建立telnet连接,然后攻击机输入指令

sudo netwox 78 -i 192.168.200.5


1.00

可以看出telnet连接中断,攻击成功


2.5 TCP会话劫持攻击

攻击机安装ettercap

输入指令

sudo apt-get install ettercap-graphical

输入指令

sudo ettercap -G

运行ettercap图形界面

然后开始,软后选择host -> scan for hosts,host -> hosts list


1.00

然后查看主机列表,将Kali记为目标1

1.00

将Winxp记为目标2


1.00

然后Kali向Winxp发起telnet连接,同时在右上角查看connection,选择其中带有账号密码的报文查看


1.00

实验数据表明,在中间人攻击得手的前提下,明文传输协议将导致会话机密性彻底丧失。攻击者不仅能实施全量窃听,更具备注入恶意载荷以操纵交互流程的能力。这从实证角度证明,生产环境必须全面禁用Telnet等明文协议,并强制迁移至SSH等具备端到端加密机制的替代方案。


三、学习中遇到的问题

与实验三相同,由于Kali无法稳定的ping通外部网站,我选择Seedlab-Ubuntu作为攻击机,这样解决了访问外网的问题,其余实验无困难点


四、实验总结

本次实验让我对TCP/IP网络协议在真实攻击场景下的脆弱性有了新的认识。

在ARP与ICMP的实验中,我清晰地看到,网络设备对协议报文的无条件信任构成了巨大的安全盲区。而在SYN Flood与TCP RST攻击尝试中,TCP协议连接管理的精巧设计,恰恰也成为其被利用的关键弱点。最令人警醒的,莫过于TCP会话劫持——当通信以明文进行时,所有指令、密码、数据在攻击者面前如同摊开的书本,一览无余。

整个实践下来,我收获的不仅是对攻击技术的直观认知,更是一种思维方式的转变:安全的起点,是理解不安全的根源。只有真正清楚协议可能被如何利用,我们才能在设计、部署、运维中做出更有针对性的防御——无论是全面启用加密通道,还是在网络架构中植入零信任的基因,或是为关键服务部署纵深防护体系。这已不仅是技术选择,更是现代网络运维必须持有的安全素养。

posted @ 2026-04-12 17:48  dyf12345  阅读(5)  评论(0)    收藏  举报