20212937 曾俊铭 《TCP/IP网络协议攻击》

20212937 曾俊铭 2021-2022-2 《网络攻防实践》第六周实验报告

1.实践内容

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

  • ARP欺骗
    原理:
    攻击者在有线以太网或是无线网络上发送伪造的ARP消息,对特定IP所对应MAC地址进行欺骗,使局域网内主机记录的MAC-IP地址映射表中被攻击者的条目的MAC地址修改为攻击者指定的MAC地址,这样局域网内发送给被攻击者的数据包就会发送给修改后的MAC地址主机。

  • ICMP重定向攻击
    原理:
    攻击者伪装成路由器(IP地址欺骗:冒充为网关)发送虚假的ICMP重定向路由路径控制报文,使得受害主机选择攻击者指定的路径,从而实现嗅探或假冒攻击。这里存在一个现象:再转发的过程中,攻击节点协议栈可能会向被攻击者发送ICMP重定向报文,说明直接发送给真实的网关比发送给攻击机少一跳,这个报文将会是欺骗路径更改至原路径。

  • TCP RST攻击
    原理:
    TCP RST攻击可以终止两个被攻击主机之间的TCP连接。

  • TCP SYN Flood:又称为SYN洪泛攻击
    原理:
    它利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目标主机的连接队列资源,从而不能够为正常用户提供服务

  • TCP会话劫持:
    原理:
    劫持通信双方已建立的TCP会话连接,假冒其中一方的身份与另一方进行进一步通信。通常一些网络服务会建立在TCP会话之后进行应用层的身份认证,客户端在通过身份认证之后,就可以通过TCP会话连接对服务器索取资源。且期间不用再次进行身份认证。而TCP会话劫持为 攻击者提供了一种绕过应用层身份认证的技术途径,因此得到较高水平攻击者的青睐。

2.实践过程

选取kali作为攻击机,MetaSploitable_ubuntu和SEED_Ubuntu作为靶机
将三个虚拟机改为桥接模式,分别查看其IP地址和MAC地址

kali:
ip: 192.168.1.118
MAC: 00:0c:29:a6:61:35
image

MetaSploitable_ubuntu:
ip: 192.168.1.120
MAC: 00:0c:29:74:48:95
image

SEED_Ubuntu:
ip: 192.168.1.119
MAC: 00:0c:29:ea:0d:b6
image

  • ARP缓存欺骗
    用SEED_Ubuntu虚拟机ping MetaSploitable_ubuntu虚拟机
    image

查看ARP缓存表
image

在kali虚拟机上执行netwox 80 -e 00:0c:29:a6:61:35 -i 192.168.1.120 (80是指netwox的80号工具,第一个为攻击机Kali的MAC地址,第二个为MetaSploitable_ubuntu的IP地址,执行后就在局域网内广播这条命令。)
image

在SEED_Ubuntu虚拟机中利用命令再次查看arp缓存表,可以发现这时192.168.1.120对应的IP地址应该改为了KALI的MAC地址
image

进行验证,需要Kali虚拟机能够监听SEED_Ubuntu和MetaSploitable_ubuntu的通信,为了能够监听,我们需要将MetaSploitable_ubuntu中的arp缓存表中SEED_Ubuntu虚拟机IP地址对应的MAC地址改为Kali虚拟机的MAC地址,因此执行命令netwox 80 -e 00:0c:29:a6:61:35 -i 192.168.1.119
在MetaSploitable_ubuntu中查看arp缓存表
image

在Kali虚拟机中打开wireshark,并在SEED_Ubuntu虚拟机中利用命令ping 192.168.1.120

利用ip.src192.168.1.120 or ip.dst192.168.1.120在wireshark中过滤数据包,从图中可以看到,在kali上抓到了SEED_Ubuntu虚拟机ping MetaSploitable_ubuntu虚拟机的ICMP数据包等
image

-ICMP重定向攻击
打开SEEDubuntu,查看网关地址:
image

ping www.baidu.com 测试连通性:

使用netwox的86号工具进行ICMP重定向攻击,在Kali攻击机上执行命令netwox 86 -f "host 192.168.1.119" -g 192.168.1.118 -i 192.168.1.1,这个命令是当嗅探到SEED的数据包时,以192.168.1.1的名义发送ICMP重定向报文,使Kali成为其默认路由
image

ping baidu.com 数据包发现已经被重定向到192.168.1.1
image

- SYN Flood攻击

在SEEDUbuntu终端中输入telnet 192.168.1.120,对靶机Metasploitable_Ubuntu进行远程登录
image

在kali输入netwox 76 -i 192.168.1.119 -p 23
该攻击是TCP里面的SYN Flooding,Dos攻击。
利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目标主机的连接队列资源,从而不能够为正常用户提供服务
image

在攻击机kali中打开wireshark,发现大量TCP SYN数据包,表明了SYN flood攻击

登录靶机telnet 192.168.1.119,发现已失去和主机的联系
image

- TCP RST攻击
在SEEDUbuntu终端中输入telnet 192.168.1.120,对靶机Metasploitable_Ubuntu进行远程登录
image

在kali中输入netwox 78 -i 192.168.1.120,对靶机Metasploitable_Ubuntu进行TCP RST攻击,
TCP重置报文会直接关闭一个TCP会话连接
image

在SEEDUbuntu终端中输入telnet 192.168.1.120,连接已经关必,攻击成功

- TCP会话劫持攻击
在kali中可以使用sudo ettercap -G命令,打开ettercap图形化界面进行操作
image

打开Ettercap Menu->Hosts->Host List

点击 hosts list,将靶机Metasploitable_Ubuntu设为target1,SEEDUbuntu设为target2
image
image

选择MITM menu中的 ARP poisoning 进行ARP欺骗

在kali的Ettercap中选择Ettercap Menu菜单栏上选择View-Connections
接着用SEEDubuntu登录Metasploitable_Ubuntu,telnet 192.168.1.120
image

打开Ettercap菜单选择view,选择connections

打开后能够看到靶机使用的用户名、密码等信息
image
image
image

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

  • 问题1:在TCP SYN flood中,泛洪攻击导致kali直接崩了,无法抓包分析
  • 问题1解决方案:重新启动kali,在攻击开始很短时间内暂停抓包
  • 问题2:ICNP重定向中,kali成为默认路由的命令系统检测无效
  • 问题2解决方案:通过PING靶机,发现因为SYN Flood导致死机,我重新开机没有连上网,重新联网就解决了

4.实践总结

本次实验简单介绍了TCP/IP协议栈重点协议的攻击实验,大病初愈,这次实验有一点赶,但还好赶上了。无论是从攻击机到靶机还是靶机到靶机,连通性,保密性都是实验中最常遇见的问题,TCP SYN flood这类破坏性大不隐蔽的攻击方式对于用户来说比ICMP 重定向,arp欺骗等好一些,至少可以快速找到原因。网络安全是门很复杂的学科,这只是皮毛而已,继续加油吧。

posted on 2022-04-10 18:53  曾俊铭  阅读(203)  评论(0编辑  收藏  举报

导航