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

20252802 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数据包进行截获、分析,并在适当时机注入伪造数据。通过预测或获取正确的序列号,攻击者能够冒充通信一方发送恶意内容,实现会话控制权窃取。

二、实践过程
首先准备三台同网段的虚拟机,并测试连通性,
1.ARP缓存欺骗攻击
(1)分别查询记录靶机、攻击机的IP、MAC地址
win2k地址.png
kali地址.png
meta地址.png

结果统计为表格

虚拟机 IP地址 Mac地址
Win2kServer_SP0_target 192.168.200.131 00:0C:29:2B:BE:4C
ubuntu 10.118.194.142 00:0c:29:74:0b:da
MetaSploitable 192.168.200.130 00:0c:29:00:e9:13
WinXP 192.168.200.3 00:0C:29:FE:FA:34
Kali 192.168.200.4 00:0C:29:CB:78:8D

(2)使用靶机 Metasploitable2-Linux通过ping 192.168.200.131 ping Win2k 并反过来ping确保互通,并通过arp -a命令获得Win2kServer_SP0_target未被攻击时的MAC地址,如下图所示:
meta ping w2k.png

w2k ping meta.png

(3)在ubuntu虚拟机中安装netwox工具包。并且修改ARP缓存信息,将win2k的IP地址指向ubuntu的MAC地址进行ARP缓存欺骗。

ubuntu地址.png
win2k上看攻击结果.png
Win2kServer_SP0_target显示IP地址错误
查看Metasploitable_ubuntu上arp表,已经不再是原来的MAC地址了,可以判定已经攻击成功
meta看结果.png

2.ICMP重定向攻击
首先在Kali上Ping百度的网址ping baidu.com

然后在攻击机上输入指令

sudo netwox 86 -f "host 192.168.200.4" -g 10.118.194.142 -i 192.168.200.1

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

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

3 SYN Flood攻击
首先打开Winxp的telnet服务
运行cmd,输入指令services.msc
选中telnet启用
telnet服务.png

Kali向Winxp发起telnet请求检测telnet是否能连接
kali telnet 成功联通wxp.png

在攻击机上运行指令
sudo netwox 76 -i 192.168.200.3 -p 23
Wireshark上面查看结果:
wireshark 确认syn攻击.png
可以看出大量向Winxp23端口的syn请求报文占用资源,此时用Kali再向Winxp发起telnet请求
再次请求,失败.png
可以看出在SYN攻击时Winxp拒绝了telnet服务,关闭了攻击机的SYN攻击指令之后,telnet连接又恢复了正常,攻击成功
2.4 TCP RST攻击
首先Kali向Winxp建立telnet连接,然后攻击机输入指令
sudo netwox 78 -i 192.168.200.3
rst攻击.png
telnet中断.png
可以看出telnet连接中断,攻击成功

2.5 TCP会话劫持攻击
攻击机安装ettercap,输入指令 sudo apt-get install
ettercap-graphical
下载ettercap并扫描主机.png
输入指令
sudo ettercap -G
运行ettercap图形界面
然后开始,软后选择host -> scan for hosts,host -> hosts list,并标记kali和winxp主机
标记kali和winxp.png
在Connections中可以看到建立的telnet连接,可以清晰看到登录的用户名、密码和命令
截获账户密码.png

3.学习中遇到的问题及解决
问题1:Ubuntu 与其他主机不在同一子网,无法直接进行ARP欺骗
解决方案:
统一NAT 8 确保网络可达;

问题2:Wireshark 抓取不到 SYN Flood 数据包
解决方案:
确保 Wireshark 监听的是正确网卡(如 eth0 或 ens33);
过滤条件设置为 tcp.port == 23 && ip.addr == 192.168.200.3;

问题3:Ettercap 无法识别 Telnet 明文密码
解决方案:
确认 Telnet 未加密(默认就是明文);
在 Ettercap 中启用插件:Plugins → Manage plugins → 加载 remote_browser 或 sslstrip;
手动查看“Connections”面板中的 ASCII 流,密码常出现在 login prompt 之后。

4、实践总结
本次实验深入理解了多种经典网络层与传输层协议的安全隐患及其利用方式:
ARP欺骗 揭示了二层网络缺乏身份验证的本质缺陷;
ICMP重定向 展示了路由协议如何被滥用改变数据流向;
SYN Flood 体现了 TCP 状态机在资源管理上的脆弱性;
TCP RST 表明即使连接建立,也可被轻易粗暴打断;
会话劫持 则综合运用了中间人+序列号预测/嗅探技术,实现了最高级别的权限夺取。
通过本次动手实践,不仅掌握了工具使用方法,更深刻认识到“协议设计妥协带来安全风险”的核心思想,为今后从事网络安全防护工作打下坚实基础。

posted @ 2026-04-13 18:45  眠绵雨  阅读(28)  评论(0)    收藏  举报