nanfenglinyan

 

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

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

1.实践内容

任务:
在网络攻防实验环境中完成TCP/IP协议栈重点协议的攻击实验,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击、TCP会话劫持攻击。

1.1知识点梳理与总结

TCP/IP协议栈重点协议攻击实验,涵盖了多种主流网络攻击方式,主要包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击及TCP会话劫持攻击。此类实验的核心目的,是深入挖掘网络协议自身存在的安全漏洞与潜在威胁,帮助学习者全面掌握网络通信的安全机制,清晰认知网络传输过程中的各类风险。

通过实际操作、观察攻击实施的完整流程,学习者能够直观理解网络协议在设计与实现环节的安全隐患,以及攻击者如何利用这些漏洞破坏网络通信的正常运行、窃取或篡改数据。

结合实验实践,可系统掌握各类攻击的防范方法,具体包括:防范ARP缓存欺骗攻击可采用静态ARP表配置;深入了解ICMP协议的功能与路由选择机制,进而掌握中间人攻击的有效防范策略;明晰拒绝服务攻击(如SYN Flood攻击)的原理,通过防火墙部署、限制SYN请求速率等方式进行防范;深入理解TCP协议的异常处理机制,通过对RST数据包进行严格验证等手段防范TCP RST攻击;掌握TCP会话劫持的攻击原理,借助加密协议应用、数据包完整性验证等措施保障会话安全。

这些实验所收获的知识与技能,对保障网络通信的安全性、稳定性和可靠性具有重要现实意义,能够帮助学习者更好地应对各类网络攻击,有效保护网络系统及用户信息安全。

1.2.实验内容与原理

1.2.1.ARP缓存欺骗攻击

ARP缓存欺骗攻击通过伪造ARP请求,将目标主机的IP地址与攻击者的MAC地址绑定,使目标主机发给其他主机的数据包先经过攻击者,从而实现中间人攻击,可以拦截、篡改或伪造数据。

1.2.2.ICMP重定向攻击

ICMP重定向攻击是攻击者伪造ICMP重定向消息,使目标主机改变其路由选择,将数据包发送到攻击者指定的路由器,从而实现中间人攻击或拒绝服务攻击。

1.2.3.SYN Flood攻击

SYN Flood攻击则是攻击者向目标服务器发送大量的伪造的SYN请求,使服务器的资源被耗尽,无法正常响应合法用户的请求,从而实现拒绝服务攻击。

1.2.4.TCP RST攻击

TCP RST攻击通过发送伪造的RST数据包,使目标主机的TCP连接被错误地关闭,导致通信中断,从而实现拒绝服务攻击。

1.2.5.TCP会话劫持攻击

TCP会话劫持攻击则是攻击者获取目标通信双方的会话信息,如序列号等,插入到通信中,冒充一方进行数据交互,从而实现会话劫持,获取敏感信息或进行恶意操作。

2.实践过程

2.1.准备好kali和SEED的网络配置

  • 查看攻击机kali配置可知的IP为192.168.200.4、MAC为00:0c:29:a2:56:7e。
    image

  • 查看攻击机SEED配置可知的IP为192.168.200.3、MAC为00:0c:29:80:fc:b7。
    image

  • 下面截图表示可以相互ping通
    image
    image

2.2.ARP缓存欺骗攻击

  • 使用ping命令虚拟机查看虚拟机Metasploitable与win2k的连通性,Metasploitable可以ping通win2k,是连通的
    image

  • 输入命令arp -a查看当前的ARP缓存信息,由于刚刚win2k与Metasploitable进行了ping通信,所以Metasploitable中存有win2k的arp缓存信息,输出的MAC地址与win2k的MAC地址相吻合
    image

  • 在kali虚拟机的控制台输入命令apt install netwox安装netwox工具包
    image

  • 在kali虚拟机中使用命令netwox 80 -e 00:0c:29:a2:56:7e(kali的mac地址) 1 -i 192.168.200.131(win2k的ip地址),修改arp缓存信息,将win2k的IP地址指向kali的MAC地址进行ARP缓存欺骗

sudo netwox 80 -e 00:0c:29:a2:56:7e 1 -i 192.168.200.131

netwox 80,执行ARP欺骗
-e 00:0c:29:a2:56:7e,指定发包的MAC地址,即攻击机MAC
image

发现Win2kServer_SP0_target中报检测到IP冲突的错,这是正常的,说明我们的ARP欺骗起了效果
image

  • 在Metasploitable_ubuntu中重新ping 192.168.200.131,之后使用arp -a指令,发现得到的mac地址已经更换为了00:0c:29:a2:56:7e。ARP缓存欺骗攻击成功
    image

2.3 ICMP重定向攻击

  • 打开seed虚拟机终端,输入命令route -n,查看seed虚拟机的网关为192.168.200.1
    image
  • 使用ping命令ping www.baidu.com,可以ping通且对面IP地址为110.242.69.21
    image
  • 在kali的终端中输入命令 netwox 86 -f “host 192.168.200.3”(SEEDIP地址) -g 192.168.200.4(kali攻击机IP地址) -i 192.168.200.1(SEED网关),启动ICMP重定向攻击
    sudo netwox 86 -f “host 192.168.200.3”(SEEDIP地址) -g 192.168.200.4(kali攻击机IP地址) -i 192.168.200.1(SEED网关)
sudo netwox 86 -f "host 192.168.200.3" -g 192.168.200.4 -i 192.168.200.1
  • SEEDUbuntu9_August_2010虚拟机ping百度网站,发现网关地址确实被替换为攻击机IP地址
ping www.baidu.com

image

2.4 SYN Flood攻击

本次实验使用三台机器,kali-linux-2025.4-vmware-amd64作为攻击机,其他两台机器作为正常通信的机器(靶机1:WinXPattacker,靶机2:SEEDUbuntu9_August_2010)。

  • winXPattacker默认禁用telnet。使用win+R快捷键打开输入框,输入services.ms后回车,打开服务列表,发现telnet确实处于禁用状态
    image
  • 将telnet启动模式改为自动并启动
    image
  • 在SEED中远程登陆WinXPattacker,输入以及命令及用户名和密码
telnet 192.168.200.2

image

  • netwox是SEED Ubuntu渗透测试环境默认预装的网络工具集,其中编号76的工具就是专门用于SYN Flood攻击的模块。
    SYN Flood 是最经典的 DoS(拒绝服务)攻击,专门打垮 TCP 服务,让目标主机或服务器彻底无法正常提供服务。SYN Flood 攻击的本质:攻击者疯狂给目标发大量伪造源 IP 的 SYN 包,但永远不回最后一步的 ACK 包。
    输入以下命令:
sudo netwox 76 -i 192.168.200.2 -p 23

netwox 76 = 端口扫描(TCP SYN 半开扫描),调用 TCP 端口探测 功能
-i 192.168.200.2,目标 IP(要扫描谁)
-p 23,目标端口(要扫哪个端口)
执行后会Kali会向 192.168.200.2:23 发送SYN包

  • 使用Wireshark抓包,可看到大量从随机源IP发往靶机 23 端口的SYN包,靶机回RST+ACK拒绝连接服务,符合SYN Flood特征。
    image

2.5 TCP RST攻击

本次实验使用三台机器,kali-linux-2025.4-vmware-amd64作为攻击机,其他两台机器作为正常通信的机器(靶机1:WinXPattacker,靶机2:SEEDUbuntu9_August_2010)。

  • 在SEED中远程登陆WinXPattacker,输入以及命令及用户名和密码
telnet 192.168.200.2

image

  • 在kali中自动嗅探 192.168.200.2 上的所有TCP连接,自动获取正确序列号,自动伪造 RST 包,自动切断连接。输入以下命令:
sudo netwox 78 -i 192.168.200.2

netwox 78,调用ARP查询模块,用于地址探测
-i 192.168.200.2,要查询的目标主机IP:192.168.200.2

image

  • 再次输入telnet 192.168.200.2,发现连接被强制关闭,显示 Connection closed by foreign host。

image

TCP RST 攻击的核心原理是:攻击机在同一局域网内嗅探两台主机间已建立的正常 TCP 连接(如本次 Telnet 连接),获取通信双方的 IP、端口及正确的 TCP 序列号,随后伪造携带 RST 标志位的合法 TCP 重置报文并发送给通信一方或双方;目标主机收到序列号合法的 RST 包后,会依据 TCP 协议规则判定为对端主动终止连接,随即直接释放连接资源,强制中断正常通信,最终导致远程连接被强行关闭。

2.6 TCP会话劫持攻击

  • 在kali中输入指令并点击右上角的对号,选择Hosts--Scan for hosts开始扫描,再点击Hosts-Hosts list查看列表
sudo ettercap -G

ettercap,经典的ARP欺骗 + 中间人攻击(MITM)工具,专门用来:断网、嗅探密码、劫持流量、切断连接
-G表示启动图形化界面(GUI)
image

  • 右键SEED的IP地址192.168.200.3,选择Add to Target 1。右键WinXPattacker的IP地址192.168.200.2,选择Add to Target 2。
    image

  • 点击小地球图标并选择ARP poisoning,选择Sniff remote connections点击ok
    image

  • 在SEED中远程登陆WinXPattacker,输入以及命令及用户名和密码

telnet 192.168.200.2

  • 在Connections中可以看到建立的telnet连接,可以清晰看到登录的用户名、密码和命令
    image

image
image

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

  • 问题1:ARP缓存欺骗攻击时误用指令,导致无法欺骗靶机
    解决方案:通过查阅资料和参考学长学姐博客后使用正确指令sudo netwox 80 -e 00:0c:29:a2:56:7e 1 -i 192.168.200.131,成功完成实验。
  • 问题2:SYN Flood攻击时SEED无法通过telnet指令正常登录WinXPattacker
    解决方案:通过检测后发现是WinXPattacker的telnet服务默认关闭,在服务中进行启动设置即可正常通过telnet远程登录

4. 实践总结

本次实验完整实践了ARP欺骗、SYN Flood拒绝服务攻击、TCP RST攻击和TCP会话劫持等典型局域网攻击操作。在动手过程中,我不仅理解了各类攻击的核心原理,更直观体会到TCP协议、ARP协议存在的安全缺陷,以及序列号、标志位在通信中的关键作用。从命令写错、抓包看不懂,到能独立排查问题、成功实施攻击并分析流量,我逐步熟悉了netwox、ettercap等攻防工具的使用,提升了流量识别、问题定位和实操排错能力,也对网络攻防的基本逻辑和安全风险有了更深刻的认识。

posted on 2026-04-07 10:45  南风~林炎  阅读(24)  评论(0)    收藏  举报

导航