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

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

1.知识点梳理与总结

(1)ARP缓存欺骗攻击

ARP协议用于实现IP地址到MAC地址的映射,但其缺乏认证机制。攻击者可以通过伪造ARP响应报文,使目标主机更新错误的ARP缓存,将数据流量发送到攻击者,从而实现中间人攻击,进而进行数据监听或篡改。

(2)ICMP重定向攻击

ICMP重定向用于通知主机更新路由路径,但同样缺乏安全验证。攻击者可以伪造ICMP重定向报文,诱导目标主机修改路由,将数据转发给攻击者,实现流量劫持。

(3)SYN Flood攻击

SYN Flood是一种典型的拒绝服务攻击,利用TCP三次握手机制中的半连接状态。攻击者发送大量SYN请求但不完成握手,占用服务器资源,使其无法响应正常用户请求。

(4)TCP RST攻击

TCP连接在接收到RST报文时会立即断开。攻击者通过伪造RST报文插入通信过程,可以强制中断正常的TCP连接,影响通信的稳定性。

(5)TCP会话劫持攻击

TCP会话劫持通常结合ARP欺骗实现中间人攻击。攻击者在监听通信的基础上,可以获取明文数据,甚至篡改或注入数据,实现对会话的控制,尤其对未加密协议危害较大。

2.实验过程

(1)ARP缓存欺骗攻击

首先,在Windows主机上查看网络配置并测试连通性,可以看到主机IP为192.168.200.64,并通过ping 192.168.200.67测试与目标主机通信正常,数据包无丢失,说明网络处于正常通信状态。

在seed主机上使用ifconfig命令查看本机网络信息,可以确认攻击机的IP地址处于同一网段,并且网卡处于UP状态,能够正常收发数据。同时通过arp -a命令查看当前ARP缓存表,可以看到局域网中各主机IP与MAC地址的正常映射关系。

在Kali系统中尝试使用netwox工具进行ARP欺骗攻击,使用sudo提升权限重新执行攻击命令,sudo netwox 80 -e 00:0c:29:3c:66:24 -i 192.168.200.64,通过伪造ARP响应,将目标IP192.168.200.64对应的MAC地址篡改为攻击机的MAC地址。

攻击实施后,再次在seed主机上查看ARP缓存表,可以发现同一IP地址192.168.200.64对应的MAC地址发生变化,由原本的真实MAC变为攻击机的MAC地址,说明ARP缓存已经被成功污染。

(2)ICMP重定向攻击

首先,在seed主机上查看当前网络状态,通过执行route -n可以看到默认网关为192.168.200.1,同时执行ping baidu.com测试外网连通性,结果显示能够正常访问,说明网络通信正常。

随后,在Kali攻击机上进行ICMP重定向攻击。执行命令:sudo netwox 86 -f "host 192.168.200.67" -g 192.168.200.65 -i 192.168.200.1该命令构造ICMP重定向报文,其中将新的网关地址伪造为192.168.200.65(kali地址),并发送给目标主机192.168.200.67,从而诱导其修改路由。

攻击实施后,在seed主机上持续执行ping baidu.com,可以观察到返回信息中出现多条“Redirect Host”提示,例如“Redirect Host (New nexthop: 192.168.200.65)”,说明主机已经接收到ICMP重定向报文,并开始将数据转发路径修改为攻击机。

可以确认,目标主机的路由行为已经受到影响,数据包不再直接发送至原网关,而是优先经过攻击机进行转发。

(3)SYN Flood攻击

先在seed主机上对目标主机的23号端口服务进行访问测试。通过执行telnet 192.168.200.132,可以看到能够成功连接到目标主机,并正常进入登录界面,说明目标主机的Telnet服务在攻击前是可以正常访问的。

随后,在Kali攻击机上先使用ifconfig查看本机网络信息,确认攻击机地址为192.168.200.65,网络接口工作正常。之后执行SYN Flood攻击命令:sudo netwox 76 -i 192.168.200.132 -p 23。该命令的作用是针对目标主机192.168.200.132的23号端口持续发送大量TCP SYN报文,从而不断发起半连接请求,消耗目标主机的连接资源。

在攻击过程中,Kali主机上打开Wireshark对网络流量进行抓包分析。抓包结果中可以看到大量发往192.168.200.132:23的TCP报文,信息栏中连续出现[SYN]标志,说明攻击机正在持续向目标主机23号端口发送连接请求,这与SYN Flood攻击的特征相一致。攻击者已经对目标主机的23号端口实施了SYN Flood攻击,该攻击会使目标主机不断为这些未完成握手的连接分配资源,进而影响正常用户的连接请求。

(4)TCP RST攻击

首先,在seed主机上通过执行telnet 192.168.200.132连接目标主机的23号端口,可以看到能够成功进入目标主机的Telnet登录界面,说明此时seed主机与目标主机之间的TCP连接已经正常建立,通信处于正常状态。

随后,在Kali攻击机上先使用ifconfig查看本机网络信息,确认攻击机与目标主机处于同一网络中。之后在Kali攻击机上执行命令:sudo netwox 78 -i 192.168.200.132。该命令用于对目标主机192.168.200.132发起TCP RST攻击,通过伪造TCP重置报文干扰现有TCP连接,使正在进行的会话被异常终止。

攻击实施后,再回到seed主机,可以看到原本已经建立的Telnet会话被中断,终端中出现Connection closed by foreign host.提示。随后再次执行telnet 192.168.200.132,虽然能够发起连接,但连接很快再次被关闭,说明攻击已经对目标主机当前的TCP会话造成了明显影响。

同时,在Kali攻击机上的Wireshark抓包结果中可以看到通信过程中出现了大量带有[RST, ACK]标志的TCP报文,这些报文分别出现在目标主机与seed主机之间的23号端口通信过程中。抓包信息表明攻击者伪造的TCP重置报文已经插入到正常会话中,并导致连接被强制终止。

(5)TCP会话劫持攻击

先在Kali攻击机上启动图形化工具,执行sudo ettercap -G打开Ettercap界面,并选择网卡eth0作为监听接口,开始统一嗅探,使攻击机能够捕获局域网中的通信数据。

随后,在Ettercap中进行主机扫描,选择“Scan for hosts”,扫描完成后可以在主机列表中看到局域网中的多个主机IP及对应MAC地址,例如192.168.200.67192.168.200.64等。接着分别将192.168.200.67加入Target 1,将192.168.200.64加入Target 2,确定攻击目标。

然后在Ettercap中选择“MITM Attack → ARP Poisoning”,勾选“Sniff remote connections”,开始ARP欺骗攻击,使攻击机成为两台主机之间的中间人,从而能够监听双方通信数据。此时可以看到界面下方显示ARP poisoning victims信息,说明欺骗已成功实施。

在seed主机上通过telnet 192.168.200.64连接目标主机,可以正常建立会话并进入命令界面。但在攻击过程中,攻击者不仅可以监听数据,还可以通过Ettercap进行数据注入或连接控制,实现对会话的劫持和干扰。

在攻击过程中,打开Ettercap的“Connections”窗口,可以看到当前网络中的通信连接情况,包括TCP、UDP等协议的数据流。进一步查看“Connection data”,可以直接观察到Telnet通信中的明文数据,例如登录用户名“Administrator”和对应密码信息,这说明攻击者已经成功监听到会话内容。

可以发现攻击机能够实时获取通信双方的数据内容,并可以对连接进行控制,而通信双方对此过程并不知情,说明TCP会话已经被成功劫持。

3.学习中遇到的问题及解决

  • 问题1:前面实验的时候用的都是seed主机和 MetaSploitable主机,然后在最后的一个实验里,扫描主机扫描不出来这个靶机。

  • 问题1解决方案:因为这个靶机和前面几个攻击机不属于同一网段,所以采用其他主机来进行实验。

  • 问题2:在最后一个实验的时候使用telnet进行远程连接的时候连接不上,刚开始考虑的是不是因为前面的时候改动了什么东西导致背后地址对不上,因为刚开始是可以连接上的,但是也不行。

  • 问题2解决方案:最后是在我的Windows主机上,用services.msc找出telnet这个服务,结果发现是不知道为什么禁用了,最后把禁用解除,开启服务就可以正常连接了。

4.学习感悟、思考

这次实验整体做下来,最大的感受是很多协议本身其实“默认信任”,安全性并没有想象中那么强。在做SYN Flood和RST攻击时,也更清楚地理解了TCP三次握手的实际意义。以前只是停留在理论上,这次通过抓包看到大量SYN或者RST报文,对“半连接队列”“连接被强制断开”这些概念有了实际感受。在分析抓包内容的时候,才真正理解这些攻击是怎么发生的,看到明文账号密码被直接抓出来,印象还是比较深的。

实验过程中也遇到了一些问题,比如权限不足、服务没开、不同网段导致通信问题等,这些问题其实都不是理论问题,而是环境和细节问题,但解决这些问题反而让我更熟悉整个实验流程。总体来说,这次实验不算特别难,但比较实在,把很多原本抽象的网络协议和攻击方式具体化了,也让我意识到以后在学习网络安全时,不能只看原理,还要结合实际操作去理解。

posted @ 2026-04-09 12:05  BoBooooo  阅读(1)  评论(0)    收藏  举报