20232815 2023-2024-2 《网络攻防实践》实践四报告

20232815 2023-2024-2 《网络攻防实践》实践四报告

1.实践内容

IP假冒攻击: 基于IP源地址欺骗,通过对受信任主机进行拒绝服务,使其无法正常工作,然后以猜测的ISN伪造受信任主机IP的SYN包,发送给目标主机。

ICMP路由重定向攻击: 攻击机伪装成路由器,利用ICMP路由重定向控制数据包路由路径,通过向目标主机发送重定向报文,是自己加入到路由路径中,从而进行嗅探等操作。

ARP欺骗攻击: 前面学习了ARP协议的原理,知道ARP采用广播方式来确认目标 MAC地址,但是没有任何验证,攻击机可以伪造回应,使目标主机的IP-MAC映射表里的记录错误。

TCP RST攻击: TCP重置报文通过修改“reset”标志位(从0改1)以切断一个TCP会话连接,攻击者可以通过滥用TCP重置报文,切断两个主机间的通信

TCP SYN洪泛攻击: 利用TCP三次握手,向目标主机发送大量伪造源地址的SYN连接请求,消耗主机的连接队列资源,使通信网络阻塞。

2.实践过程

在网络攻防实验环境中完成TCP/IP协议栈重点协议的攻击实验,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击、TCP会话劫持攻击。
(1)ARP缓存欺骗攻击
选择Kali作为攻击机,其他两台机器作为正常通信的机器。三个虚拟机的IP地址和Mac地址如下所示。

虚拟机IPMac地址
Kali192.168.200.400:0c:29:a9:cf:5f
Linux MetaSploitable192.168.200.12300:0c:29:52:d1:e7
win2k192.168.200.12400:0c:29:e5:c4:f7

首先使用Linux ping win2k
在这里插入图片描述
输入arp -a查看arp表并记录:
在这里插入图片描述

打开kali对其进行攻击。netwox安装命令为sudo apt-get install netwox,使用一个虚拟的mac地址发送一个数据包,命令为sudo netwox 80 -e 00:0c:29:e5:c4:f6 192.168.200.124,再次通过arp -a命令查看,发现mac地址变为00:0c:29:e5:c4:f6,成功将攻击机伪装成Windows。

(2)ICMP重定向攻击

虚拟机IP
Kali192.168.200.4
SEED192.168.200.5

首先在SEED中输入route -n查看
在这里插入图片描述
使用netwox 86 -f "host 192.168.200.5" -g 192.168.200.4 -i 192.168.200.1命令,这句话的意思是,嗅探网络中来自SEED靶机192.168.200.2的数据包时,以网关192.168.200.1(网关)的名义,向数据包的源地址发送一个ICMP重定向报文,使之使用192.168.200.4作为默认的路由。

使用SEED ping baidu.com,发现已经重定向到192.168.200.4上,则ICMP重定向攻击成功,路由的下一跳地址被修改为了192.168.200.4。
在这里插入图片描述
(3)SYN Flood攻击
设计使用kali攻击SEED靶机的telnet23号端口

先利用Metasploitable_linux对SEED靶机发起telnet访问,即telnet 192.168.1.105,使用SEED的用户名和密码登录,发现可以正常连接,输入exit退出

在这里插入图片描述
Netwox可以使用76工具 Synflood (SYN洪泛)

在kali打开wireshark抓包,并在终端使用netwox 76 -i 192.168.1.105 -p 23命令开始对SEED靶机进行SYN Flood攻击,在wireshark可以看到大量的伪造源IP的SYN包

在这里插入图片描述
再次让Metasploitable_linux对SEED靶机发起telnet访问,就变得很慢很慢,但是还是连接上了(队列没被消耗完)

(4)SYN Rst攻击
Netwox可以使用78工具 Reset every TCP packet (重置每个TCP包)
TCP RST攻击与TCP SYN Flood攻击相似,但是比后者要狠,会导致通信直接断开

还是打开kali的wireshark抓包,使用netwox 78 -i 192.168.1.105命令,这次Metasploitable_linux和SEED靶机彻底失联了…
在这里插入图片描述
在这里插入图片描述
(5)TCP会话劫持攻击

打开kali的wireshark抓包,Metasploitable_linux对SEED靶机发起telnet访问建立通信,并输入ls

可以在wireshark使用tcp.port==23筛选出通信双方之间的数据包,找到ls相关数据包,“l”和“s”是分开发送的,并且一个数据包发送,一个数据包确认
直接找到最后的一个包

在这里插入图片描述
在这里插入图片描述
点击 TransmissionControl Protocol 查看其中的源端口,目的端口,SEQ 和 ACK 信息
在这里插入图片描述
因为我们要伪造发下一个包,所以直接采用 next SEQ 作为下一个包的 ACK ,采用 ACK 作为下一个包的 SEQ,攻击机使用 netwox 40伪装成Metasploitable_linux给SEED靶机发一个TCP包

Netwox可以使用40工具 Spoof Ip4Tcp packet (伪造Ip4Tcp包)

攻击机命令如下

sudo netwox 40 --ip4-dontfrag --ip4-offsetfrag 0 --ip4-ttl 64 --ip4-protocol 6 --ip4-src 192.168.1.108 --ip4-dst 192.168.1.105 --tcp-src 44476 --tcp-dst 23 --tcp-seqnum 3926719700 --tcp-acknum 384897573 --tcp-ack --tcp-psh --tcp-window 64 --tcp-data "68656C6C6F776F726C64"
参数说明:

–ip4-src和–ip4-dst就是源地址和目的地址

–tcp-src 40593 就是wireshark中的

–tcp-seqnum序列号CLT_SEQ值

–tcp-acknum确认号SVR_ACK

–tcp-data是伪造的数据

可以在data部分看到自己设定的数据
在这里插入图片描述
发送成功后,Metasploitable_linux就会失去连接,但是它还是会一直与SEED虚拟机联系,单方面发送TCP ACK。同时SEED靶机会把攻击机当作Metasploitable_linux,这样攻击机就实现了会话劫持。

在这里插入图片描述

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

  • 问题1:kali安装netwox时,找不到这个包,安装失败
  • 问题1解决方案:先使用sudo apt-get update命令更新一下,再使用sudo apt-get install netwox命令就可以成功下载了
  • 问题2:2个机器之间无法ping通
  • 问题2解决方案:改用直连模式。

4.实践总结

实践四学习了以网络层、传输层基于不同协议缺陷的攻击原理与方法,视频比较简单,但操作过程还是会有很多问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值