20253915 2024-2025-2 《网络攻防实践》实践4报告

1.实践内容

1.1 ARP 缓存欺骗攻击(链路层)

  • 核心原理
    ARP 协议用于 IP 与 MAC 地址的映射,无身份认证机制,攻击者可发送伪造 ARP 响应包,篡改目标主机的 ARP 缓存表,将目标 IP 地址映射为攻击者的 MAC 地址,从而劫持目标主机的网络流量,实现中间人攻击或流量嗅探。
  • 实验操作
    使用netwox/ettercap工具,向目标主机(如 SEEDUbuntu)发送伪造 ARP 响应,冒充靶机 IP(如192.168.200.4)的 MAC 地址为攻击者 Kali 的 MAC 地址,通过arp -a命令验证目标主机 ARP 缓存已被篡改。
  • 危害与防御
    • 危害:流量劫持、中间人攻击(嗅探 / 篡改数据)、网络中断、钓鱼攻击。
    • 防御:静态 ARP 绑定、部署 ARP 防火墙、启用 802.1X 端口认证、使用加密通信协议。

1.2 ICMP 重定向攻击(网络层)

  • 核心原理
    ICMP 重定向报文用于优化路由路径,无认证机制,攻击者可伪造网关身份发送重定向报文,诱导目标主机修改路由表,将对外流量转发至攻击者主机,实现流量劫持与中间人攻击。
  • 实验操作
    使用netwox 86工具,针对目标主机(如 SEEDUbuntu)发送伪造 ICMP 重定向报文,指定重定向网关为攻击者 Kali 的 IP 地址,通过route -n命令验证目标主机路由表已被篡改。
  • 危害与防御
    • 危害:流量劫持、监听目标主机对外通信、中间人攻击。
    • 防御:禁用主机接收 ICMP 重定向报文、防火墙过滤非法 ICMP 报文、部署动态路由认证机制。

1.3 SYN Flood 攻击(传输层,拒绝服务)

  • 核心原理
    利用 TCP 三次握手的缺陷:攻击者发送大量伪造源 IP 的 SYN 报文,目标主机为维护半连接状态消耗资源,最终导致半连接队列耗尽,无法处理正常的连接请求,实现拒绝服务(DoS)。
  • 实验操作
    使用hping3/Metasploit 工具,向目标服务(如 HTTP、SSH)发送海量伪造 SYN 报文,观察目标主机服务响应延迟、连接超时或服务瘫痪。
  • 危害与防御
    • 危害:目标服务不可用、系统资源耗尽、业务中断。
    • 防御:启用 SYN Cookie 机制、优化 TCP 半连接队列参数、防火墙限流清洗、部署云抗 DDoS 服务。

1.4 TCP RST 攻击(传输层,会话中断)

  • 核心原理
    TCP 协议中 RST 报文用于强制关闭连接,无认证机制,攻击者可嗅探目标 TCP 会话的源 / 目的 IP、端口及序列号,伪造 RST 报文发送给目标主机,强制中断合法 TCP 会话。
  • 实验操作
    使用netwox/scapy工具,嗅探目标 TCP 会话(如 Telnet、SSH),构造并发送匹配会话参数的伪造 RST 报文,使目标会话突然中断。
  • 危害与防御
    • 危害:强制断开合法连接、破坏服务可用性、干扰正常通信。
    • 防御:TCP 序列号随机化、使用加密协议(SSH/TLS)、防火墙过滤异常 RST 报文、启用会话完整性校验。

1.5 TCP 会话劫持攻击(会话层 / 应用层)

  • 核心原理
    攻击者嗅探目标 TCP 会话的序列号、确认号及通信参数,伪造 ACK / 数据报文注入会话,冒充合法用户执行操作,实现会话接管或数据篡改。
  • 实验操作
    使用ettercap/sshmitm工具,嗅探目标明文会话(如 Telnet),预测 TCP 序列号,注入恶意命令或数据,接管目标会话并执行未授权操作。
  • 危害与防御
    • 危害:账户劫持、数据篡改、未授权操作、敏感信息泄露。
    • 防御:使用加密协议(SSH/TLS)、会话令牌绑定 IP / 端口、TCP 序列号随机化、启用应用层会话认证。

2.实践过程

2.1 设置IP地址

首先本次实验使用三台机器,kali作为攻击机,其他两台机器作为正常通信的机器(靶机1:SEEDUbuntu,靶机2:Metasploitable_ubuntu)。在开始具体攻击实验前,先将网络适配器都设置成VMnet8(NAT模式)并查看三台虚拟机的IP地址和MAC地址。
攻击机kali
image
两个靶机
image
image

2.1.1 seed的IP和MAC地址

image

2.1.2 Metasploitable_ubuntu的IP地址和MAC地址

如果IP地址还是在VMnet1网段,需要先
dhclient -r eth0
dhclient eth0
重新获取IP地址
image

2.1.3 Kali的IP和MAC地址

image

虚拟机名称 IP地址 MAC地址
Kali Linux 192.168.200.3 00:0c:29:dd:3a:4f
Metasploitable Ubuntu 192.168.200.4 00:0c:29:47:6d:b0
SEED Ubuntu 192.168.200.101 00:0c:29:4a:47:e1

2.2 ARP缓存欺骗攻击

2.2.1 SEEDUbuntu ping Metasploitable_ubuntu

在SEEDUbuntu中输入指令 ping 192.168.200.4 ,即靶机 Metasploitable_ubuntu的IP,得到arp缓存表
image

2.2.2 查看arp缓存表

使用 arp -a 查看arp缓存表,可以从下图中看到靶机Metasploitable_ubuntu的IP地址和MAC地址是对应的
image

2.2.3 ARP缓存欺骗攻击

在 Kali 上用循环命令反复发送欺骗包,持续覆盖真实 ARP 刷新

while true; do
  sudo netwox 33 -d eth0 -a 00:0c:29:dd:3a:4f -b 00:0c:29:4a:47:e1 -e 2 -g 192.168.200.4 -h 00:0c:29:dd:3a:4f -i 192.168.200.101
  sleep 0.5
done

安装工具netwox:
image
运行命令

while true; do
  sudo netwox 33 -d eth0 -a 00:0c:29:dd:3a:4f -b 00:0c:29:4a:47:e1 -e 2 -g 192.168.200.4 -h 00:0c:29:dd:3a:4f -i 192.168.200.101
  sleep 0.5
done

image
在SEEDUbuntu中再次使用 arp -a 查看ARP映射,可以看到欺骗成功
image

2.2.4 抓包结果查看

在Kali上使用Wireshark进行捕获
打开抓包软件
image
选择eth6
image
过滤arp
image
捕获的包如下所示
image

2.3 ICMP重定向攻击

2.3.1 查看IP地址

本次实验需要两台主机(处于同一网段),选择攻击机kali、靶机SEEDUbuntu,查看两台虚拟机的IP地址和MAC地址
image
image

虚拟机名称 IP 地址 MAC 地址
Kali Linux 192.168.200.3 00:0c:29:dd:3a:4f
SEED Ubuntu 192.168.200.101 00:0c:29:4a:47:e1

2.3.1 查看网关

在SEEDUbuntu中输入route -n,查看到网关为192.168.200.1
image

2.3.2 访问外网

在终端 ping baidu.com,SEEDUbuntu可以直接访问外网
image

2.3.3 ICMP重定向

在Kali主机上执行命令 sudo netwox 86 -f "host 192.168.200.101" -g 192.168.200.3 -i 192.168.200.1
sudo:提权执行(ICMP 重定向需要 root 权限);
netwox 86:ICMP 重定向攻击专用模块,用于发送伪造的 ICMP 重定向报文;
-f "host 192.168.200.101":过滤规则,只对 SEEDUbuntu(192.168.200.101)的数据包生效;
-g 192.168.200.3:指定重定向的目标 —— 让 SEEDUbuntu 把流量转发到 Kali(192.168.200.3);
-i 192.168.200.1:伪造网关 IP,让 SEEDUbuntu 误以为是网关(192.168.200.1)发送的重定向指令,增加欺骗可信度。
image
可以看到其访问百度的数据包已经被重定向到Kali,数据包来源为192.168.200.1
image

2.4 SYN Flood攻击

2.4.1 查看IP

Metasploitable_ubuntu的IP地址:192.168.200.4
image

2.4.2 SYN Flood攻击

本步骤选择利用SEEDUbuntu向靶机Metasploitable_ubuntu发起telnet服务访问,用Kali攻击机攻击靶机的telnet服务端口,并用Wireshark查看。

  • 首先使用SEEDUbuntu向Metasploitable_ubuntu发起登陆 ,telnet 192.168.200.4 (Metasploitable_ubuntu的IP地址),输入Metasploitable2-Linux的用户名及密码:msfadmin;
    image
  • 在Kali上利用netwox的76号工具对靶机的23号端口进行SYN Flood攻击 sudo netwox 76 -i 192.168.200.4 -p 23
    image
  • 在Kali中用重新打开终端,利用sudo wireshark抓包,可以看到攻击机向靶机发送了大量的虚假IP发出的SYN连接请求
    image

2.5 TCP RST攻击

本步骤选择利用SEEDUbuntu向靶机Metasploitable_ubuntu发起telnet服务访问,用Kali攻击机对靶机发起TCP RST攻击

  • 首先使用SEEDUbuntu向Metasploitable_ubuntu发起登陆 ,telnet 192.168.200.4 (Metasploitable_ubuntu的IP地址),输入Metasploitable2-Linux的用户名及密码:msfadmin
    image
  • 在Kali上利用netwox的78号工具对靶机进行TCP RST攻击 netwox 78 -i 192.168.200.4
    image
  • 回到刚才SEEDUbuntu的登陆界面,在SEEDUbuntu中再次输入 telnet 192.168.200.4 访问Metasploitable_ubuntu,发现连接被强制关闭
    image

2.6 TCP会话劫持攻击

虚拟机名称 IP地址 MAC地址
Kali Linux 192.168.200.3 00:0c:29:dd:3a:4f
Metasploitable Ubuntu 192.168.200.4 00:0c:29:47:6d:b0
SEED Ubuntu 192.168.200.101 00:0c:29:4a:47:e1

本步骤使用ettercap工具,在kali中输入sudo ettercap -G打开图形化界面进行操作,并点击右上角对号开始
image
进入此页面
image
点击Hosts - Scan for hosts开始扫描
image
image
image
再点击Hosts - Hosts list查看列表
image
将SEEDUbuntu设置为目标1
image
将Metasploitable_ubuntu设置为目标2
image
点击MITM Menu - ARP poisoning,然后点击OK
image
image
image
点击View - Connections查看数据
image
image
image
使用SEEDUbuntu向Metasploitable_ubuntu发起登陆 telnet 192.168.200.4 (Metasploitable_ubuntu的IP地址),输入Metasploitable2-Linux的用户名及密码:msfadmin
image
在Connections中可以看到建立的telnet连接
image
进一步点击后可以看到登录使用的用户名、密码和命令
image

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

  • 问题1:ping不通靶机
  • 问题1解决方案:修改IP地址使其位于一个网段
  • 问题2:发送欺骗包后未生效
  • 问题2解决方案:单次欺骗包效力极短,持续发送欺骗包

4.实践总结

通过本次针对ARP缓存欺骗、ICMP重定向、SYN Flood、TCP RST及TCP会话劫持的系列实验,我完整完成了从链路层到传输层的TCP/IP协议攻击实操,直观验证了各类经典网络攻击的实现流程。在实验中,借助Kali攻击机与SEEDUbuntu、Metasploitable靶机环境,通过netwox等工具构造伪造报文,成功实现ARP缓存篡改、路由重定向、TCP连接阻断与会话劫持等效果,清晰认识到TCP/IP核心协议在设计上缺乏身份验证、报文完整性校验等安全缺陷,是各类攻击能够生效的根本原因。
本次实践让我明确了不同攻击的应用场景与危害差异:ARP与ICMP重定向攻击以流量劫持为核心,是中间人攻击的重要前提;SYN Flood攻击通过消耗系统资源实现拒绝服务,直接破坏服务可用性;TCP RST与会话劫持则针对已建立的连接,分别实现会话强制中断与非法接管。同时我也体会到,攻击的有效性依赖网络拓扑、主机配置与协议报文特征,在实操中需精准匹配IP、MAC、端口及序列号等参数,才能保证攻击效果稳定达成。
综合本次实验操作,我不仅掌握了常见网络攻击的基本方法,更建立起攻防结合的安全思维。在理解攻击原理的基础上,也对应梳理出静态绑定、流量加密、启用SYN Cookie、过滤非法报文等防御思路,深刻认识到网络安全防护需要从协议配置、主机加固、流量管控等多层面协同实施,为后续深入学习网络攻防技术奠定了扎实的实践基础。

posted @ 2026-03-30 16:58  -;  阅读(74)  评论(0)    收藏  举报