20222801 2022-2023-2 《网络攻防实践》第4周作业

一.实验内容

TCP/IP协议设计在设计之初便没有对其安全性进行考虑,从而存在着安全设计缺陷与弱点。本次实验内容针对TCP/IP协议栈重点协议的缺陷与不足进行攻击实验,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击、TCP会话劫持攻击。

本次实验使用的主要工具为netwox(这篇博客对该工具的使用有较为详细的描述),作为一款网络工具集,它可以创造任意的TCP、UDP和IP数据报文,以实现网络欺骗,并且可以在 Linux 和 Windows系统中运行。

二.实验过程

1.ARP缓存欺骗攻击

ARP欺骗攻击介绍
ARP欺骗(ARP spoofing),又称ARP毒化(ARP poisoning,网络上多译为ARP病毒)或ARP攻击,是针对以太网地址解析协议(ARP)的一种攻击技术,通过欺骗局域网内访问者PC的网关MAC地址,使访问者PC错以为攻击者更改后的MAC地址是网关的MAC,导致网络不通。此种攻击可让攻击者获取局域网上的数据包甚至可篡改数据包,且可让网络上特定计算机或所有计算机无法正常连线。

ARP欺骗的运作原理是由攻击者发送假的ARP数据包到网上,尤其是送到网关上。其目的是要让送至特定的IP地址的流量被错误送到攻击者所取代的地方。因此攻击者可将这些流量另行转送到真正的网关或是篡改后再转送(中间人攻击)。攻击者亦可将ARP数据包导到不存在的MAC地址以达到阻断服务攻击的效果,本次实验使用netwox工具进行ARP攻击,以实现阻断服务的效果。

首先使用拼命令测试MetaSploitable和Win2KServer之间的连通性,ping 192.168.200.131,结果正常

在这里插入图片描述
使用arp -a查看MetaSploitable当前的ARP表,发现里面仅有一条Win2KServer的IP和MAC记录
在这里插入图片描述

使用Kali的netwox工具进行攻击(可以使用sudo apt-get install netwox进行安装),命令为sudo netwox 80 -e 00:0c:29:d0:c5:66 -i 192.168.200.131(netwox 80可以发出ARP数据包),其中MAC地址00:0c:29:d0:c5:66是伪造不存在的,这样的目的便是让靶机误以为该MAC地址是目标主机的:
在这里插入图片描述
kali进行攻击之后,再次查看MetaSploitable的ARP表,发现192.168.200.131对应的MAC地址已经修改成了00:0c:29:d0:c5:66,此时使用ping命令测试与Win2KServer的连通性,发现已经ping不通了,数据包全部丢失:
在这里插入图片描述
在这里插入图片描述

2.ICMP重定向攻击

攻击介绍
ICMP重定向信息是路由器向主机提供实时的路由信息,当一个主机收到ICMP重定向信息时,它就会根据这个信息来更新自己的路由表。由于缺乏必要的合法性检查,如果想要被攻击的主机修改它的路由表,就可以通过发送ICMP重定向信息给被攻击的主机,让该主机按照要求来修改路由表,本次实验通过netwox工具伪造ICMP重定向数据包,让目标主机重定向到攻击机上。

首先在SEEDUbuntu上ping baidu.com检查连通性,并查看路由信息route -n:

在这里插入图片描述
在Kali上使用netwox的86号工具伪造重定向数据包,命令为sudo netwox 86 -f “host 192.168.200.3” -g 192.168.13.8 -i 192.168.200.1,即嗅探网络中来自主机192.168.200.3的TCP包,一旦出现,就以网关192.168.200.1的名义,向数据包的源地址发送一个ICMP重定向报文,使之使用192.168.200.8(本机)作为默认的路由:
在这里插入图片描述
在SEEDUbuntu上再次ping baidu.com,能够发现已经重定向到192.168.200.8上:
在这里插入图片描述
使用Wireshark抓取产生的数据包也能够看到ICMP重定向数据包:
在这里插入图片描述

3.SYN Flood攻击

攻击介绍
SYN Flood (SYN洪水) 是一种典型的DoS (Denial of Service,拒绝服务) 攻击。效果就是服务器TCP连接资源耗尽,停止响应正常的TCP连接请求。SYN Flood攻击通过伪造大量的不存在的源IP地址TCP连接请求包,让目标主机建立大量无意义连接以消耗资源,造成拒绝服务

本次攻击的目的是通过SYN Flood使MetaSploitable的telnet服务崩溃,首先检查没有攻击的情况下SEEDUbuntu能否进行telnet连接:
在这里插入图片描述

在Kali上使用netwox的76号工具进行SYN Flood,命令为sudo netwox 76 -i 192.168.13.130 -p 23(23号端口是telnet服务端口),开启攻击后,右上角的CPU和内存利用情况也能展示出这种“狂轰滥炸”式攻击:
在这里插入图片描述

在这里插入图片描述
关闭攻击命令后又能够正常进行telnet连接:
在这里插入图片描述
使用Wireshark捕获这个过程产生的数据包可以发现,有大量伪造源IP地址的TCP连接请求数据包发往MetaSploitable的23号端口,导致了拒绝服务:
在这里插入图片描述

4. TCP RST攻击

攻击介绍
TCP RST攻击可以使两个攻击对象之间已经建立的TCP连接终止。例如,用户A和用户日之间已经建立了telnet连接,攻击者可以通过欺骗用户A到用户B的RST报文,破坏用户B到用户A的telnet连接。这种攻击只能针对TCP,对UDP无效。
攻击过程
紧接上个攻击实验,在Kali上使用netwox的78号工具(“Reset every TCP packet”)进行TCP RST攻击,命令为
在这里插入图片描述
之后使用SEEDUbuntu进行telnet连接,发现连接到一半便被关闭了:
在这里插入图片描述
通过Wireshark捕获数据包可以发现,建立连接之后,出现了很多数据包将之前建立的连接断开了,导致了telnet连接关闭:
在这里插入图片描述

5. TCP会话劫持攻击

攻击介绍
TCP会话劫持攻击的目的是通过向会话中注入恶意内容来劫持两个受害者之间已经存在的TCP连接(会话)。如果该连接是telnet会话,攻击者可以在该会话中注入恶意命令,导致被攻击者执行恶意命令
攻击过程
本次攻击使用的工具为ettercap,在kali中可以使用sudo ettercap -G打开图形化界面进行操作(点击右上角的对号):
在这里插入图片描述
打开Ettercap Menu->Hosts->Host List,将SEEDUbuntu和MetaSploitable设置为目标1和目标2,如果目标IP不存在,可以点击Ettercap Menu->Hosts->Scan for hosts进行搜寻,这里需要注意的是三台主机都需要在同一个局域网中,所以需要将MetaSploitable的适配器改为NAT模式:
在这里插入图片描述
在这里插入图片描述
添加为目标ip
在这里插入图片描述
点击Ettercap Menu->View->Connections查看连接,之后使用SEEDUbuntu进行telnet连接:
在这里插入图片描述

之后使用seedubuntu进行telnet连接
在这里插入图片描述
能够在Connections中看到建立的telnet连接,打开后能够看到登录使用的用户名、密码以及命令:
在这里插入图片描述
在这里插入图片描述

三.遇到的问题及解决

1.对192.168.200.4进行telnet时,收到了refused的回复
解决方法:需要开启telnet服务
2.无法将kali调整到vmnet1网段,无法联网
解决方法:除了在虚拟机上选择vmnet1之外,还需要给kali手动分配一个vmnet1的ip地址,这样才能正常联网

四.学习感想及体会

这次实验让自己更加直观地感受到了各种攻击的作用和过程,激发了更深的学习兴趣

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值