20242931 2024-2025-2 《网络攻防实践》第四周作业
1. 实验内容
1.1 实验要求
在网络攻防实验环境中完成TCP/IP协议栈重点协议的攻击实验,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击、TCP会话劫持攻击。
1.2 知识点梳理与总结
攻击类型 | 攻击原理 | 攻击目标 | 攻击效果 |
---|---|---|---|
ARP缓存欺骗攻击 | 伪造ARP响应报文,将攻击者MAC地址与目标IP绑定,欺骗设备发送数据到攻击者。 | 局域网设备 | 中间人攻击、网络中断 |
ICMP重定向攻击 | 伪造ICMP重定向报文,诱使目标设备将流量重定向到攻击者指定路径。 | 路由器或主机 | 中间人攻击、流量中断 |
SYN Flood攻击 | 发送大量伪造SYN请求,耗尽服务器资源,导致拒绝服务。 | 服务器 | 拒绝服务 |
TCP RST攻击 | 伪造TCP RST报文,中断目标设备的TCP连接。 | TCP连接 | 强制中断通信 |
TCP会话劫持攻击 | 预测或窃取TCP序列号,冒充合法用户接管TCP会话。 | TCP会话 | 窃取数据、未授权操作 |
1.3 实验环境
虚拟机 | IP地址 | MAC地址 |
---|---|---|
Kail | 192.168.200.13 | 00:0c:29:73:f0:73 |
SEEDUbuntu | 192.168.200.4 | 00:0c:29:65:32:8a |
MetaSploitable_ubuntu | 192.168.200.130 | 00:0c:29:55:8c:14 |
Win2k | 192.168.200.131 | 00:0c:29:17:42:33 |
2. 实验过程
2.1 ARP缓存欺骗攻击
-
本次攻击将Kali作为攻击机,Win2k和MetaSploitable_ubuntu作为靶机
-
首先使用MetaSploitable_ubuntu来ping靶机Win2k
- 输入
arp -a
查看arp表,可以观察到映射正确
- 打开Kali进行arp攻击
netwox 80 -e 00:0c:29:73:f0:73 -i 192.168.200.131
# 其中80是netwox的80号工具,00:0c:29:73:f0:73是kali的MAC地址,192.168.200.131是Win2k的IP地址
- 再次通过
arp -a
指令查看arp表,发现MAC地址发生改变,变为攻击机的MAC地址
- 回到Win2k,发现网络中断,这是因为Win2k的IP地址已经和Kali的MAC地址绑定,本来要传输到Win2k的消息都会被Kali截获,符合预期攻击效果,至此,ARP缓存欺骗攻击成功
2.2 ICMP重定向攻击
-
本次攻击选择Kali作为攻击机,SEED作为靶机
-
在SEED中通过指令
route -n
查看路由表
- 在kali中执行以下命令
netwox 86 -f "host 192.168.200.4" -g 192.168.200.13 -i 192.168.200.1
# 当嗅探到SEED(192.168.200.4)数据包时,以192.168.200.1的名义发送ICMP重定向报文,使得Kali(192.168.200.13)成为默认路由地址
- 返回SEED执行
ping baidu.com
,可以看到下一跳ip地址即kali的ip地址
- 打开kali的wireshark,可以发现抓到了重定向ICMP数据包,ICMP重定向攻击成功
2.3 SYN Flood攻击
-
本次攻击利用SEEDUbuntu向靶机Metasploitable_ubuntu建立telent连接,再用Kali攻击靶机的telnet服务端口,并通过Wireshark监听网络
-
首先,在SEED中利用指令
telnet 192.168.200.130
发起登录,并据提示步骤输入用户名及密码
- 接下来,在Kali上输入指令
netwox 76 -i 192.168.200.130 -p 23
发起SYN攻击,返回SEED发现出现卡顿,打开kali的Wireshark可以看到有大量SYN包注入靶机,导致其无法正常提供服务,说明 SYN Flood攻击成功
2.4 TCP RST攻击
- 本次攻击实验环境与2.3一致,首先依旧是利用
telnet 192.168.200.130
发起登录
- 再在Kali上通过指令
netwox 78 -i 192.168.200.130
对靶机发起TCP RST攻击
- 返回SEED发现通信中断
- 打开Wireshark,可以观察到Kali向SEED发送了伪造的RST数据包,导致通信被强制中断,服务不再可用,TCP RST攻击成功
2.5 TCP会话劫持攻击
- 本次攻击依旧选择Kali作为攻击机,SEEDUbuntu和Metasploitable_ubuntu作为靶机,将三者网络均设置为桥接模式,连接到主机所在网络,IP地址发生变化,MAC地址不变,更新后的实验环境如下
虚拟机 | IP地址 | MAC地址 |
---|---|---|
Kail | 192.168.43.223 | 00:0c:29:73:f0:73 |
SEEDUbuntu | 192.168.43.147 | 00:0c:29:65:32:8a |
MetaSploitable_ubuntu | 192.168.43.81 | 00:0c:29:55:8c:14 |
- 在kali中输入
ettercap -G
打开Ettercap图形化界面,点击右上角启动
- 选择Scan for hosts开始扫描
- 再点击Hosts list查看列表
- 发现探测到四个主机地址
- 将SEEDUbuntu添加到Target1
- 将MetaSploitable_ubuntu添加到Target2
- 在MITM menu中选择ARP poisoning,在弹窗中默认选择远程嗅探,点击“OK”
- 打开Views面板,选择Connections,可以看到建立的连接
- 使用SEEDUbuntu向Metasploitable_ubuntu发起telnet登录
- 返回Connections可以看到连接已建立,点击可查看数据详情,说明kali获取会话成功,能够从中捕获账号密码等交流信息
- 本次攻击中,Kali利用ARP欺骗成为中间人,从而通过截获TCP数据包,对SEEDUbuntu和MetaSploitable之间的TCP会话进行劫持,以监听其通信内容,作为第三方参与其中,甚至可以代替某一方主机接管会话,至此,TCP会话劫持攻击成功
3. 学习中遇到的问题及解决
- 问题1:完成前四个攻击后网络不稳定,kali虚拟机可以ping通外网,可以ping通同一局域网内的主机,但无法ping通通过蜜网桥接的MetaSploitable_ubuntu,使用Ettercap嗅探主机时无法识别到MetaSploitable
- 问题1解决方案:将攻击选择的三部主机网络设置为桥接模式,使其分布在同一网段
4. 学习感想和体会
本次实验比起前几周内容完成较为顺利,一些小问题,如插件未安装等,根据提示命令以及之前几次实验的经验很容易就能够解决,再有依然是网络问题,有时网络本来正常畅通,在明明未改变任何配置的前提下却可能突然无法ping通其他主机,导致实验无法继续推进,令人无措,但遇到的次数多了、尝试的解决办法多了,也就没有一开始那么急躁,通过修改网络连接模式、网络配置文件等手段常常能够保证实验继续进行。此外,本周亲自动手实现了五种攻击,对这些攻击原理有了一定的认识,并通过观察攻击效果对原理有了更真切的理解,确实能够在一次次实验中愈加深刻地体会到网络攻防的乐趣,着实是件值得开心的事情。
参考资料
TCP会话劫持攻击实验-CSDN博客
内网渗透之中间人欺骗攻击-ARP攻击_基于arp协议漏洞的中间人攻击-CSDN博客