200199134 2019-2020-2 《网络攻防实践》第5周作业

20199134 赵兴波 《网络攻防实践》第5周作业

1.实践内容

1.1 TCP/IP网络协议栈攻击概述

1.1.1 网络安全属性与攻击模式

网络安全属性:机密性、完整性、可用性
网络攻击基本模式:截获、中断、篡改、伪造

1.1.2 TCP/IP 网络协议栈安全缺陷与攻击技术

TCP/IP 网络协议栈的安全缺陷与攻击技术

1.2 网络层协议攻击

1.2.1 IP源地址欺骗

定义:指攻击者伪造具有虚假源地址的IP数据包进行发送,以达到隐藏发送者身份、假冒其他计算机等目的。
原理:IP协议在设计时只使用数据包中的目标地址进行路由转发,而不对源地址进行真实性的验证。
IP源地址欺骗过程如下:

1.2.2 ARP 欺骗

定义:指攻击者在有线以太网或无线网络上发送伪造ARP消息,对特定IP所对应的MAC地址进行假冒欺骗,从而达到恶意目的的攻击技术。
原理:ARP欺骗攻击的根源在于ARP协议在设计时认为局域网内部的所有用户都是可信的,是遵循协议设计规范的,但局域网内可以存在内部攻击者,或者已渗透进入局域网的外部攻击者或恶意代码。
ARP欺骗攻击过程如下:

1.2.3 ICMP 路由重定向攻击

定义:指攻击者伪装成路由器发送虚假的ICMP路由路径控制报文,使得受害主机选择攻击指定的路由路径,从而进行嗅探或假冒攻击的一种技术。
原理:利用ICMP路由重定向报文改变主机路由表,向目标机器发送重定消息,自己则可以伪装成为路由器,使目标机器的数据报发送至攻击机从而加强监听。
ICMP 路由重定向攻击步骤示意图

1.3 传输层协议攻击

1.3.1 TCP RST攻击

定义:指一种假冒干扰TCP通信连接的技术方法。
原理:TCP协议头的标志位中拥有一个“reset”比特位,绝大部分数据包中该标志位都置为0,而一旦该标志位置为1,则接收该数据包的主机将立即断开这个TCP会话连接,不再利用该连接进行数据包发送和接收。
TCP RST 攻击示意图

1.3.2 TCP会话劫持攻击

原理:TCP会话劫持的目标是劫持通信双方已建立的TCP会话连接,假冒其中一方(通常是客户端)的身份,与另一方进行一步通信。
TCP 会话劫持攻击技术过程:

1.3.3 TCP SYN Flood 拒绝服务攻击

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

1.3.4 UDP Flood拒绝服务攻击

原理:通过向目标主机和网络发送大量的UDP数据包,造成目标主机显著的计算负载提升,或者目标网络的网络拥塞,从而使得目标主机和网络陷入不可用的状态,造成拒绝服务攻击。

1.4 TCP/IP网络协议栈攻击防范措施

监测、预防与安全加固
网络安全协议
下一代互联网协议

2.实践过程

题目:在网络攻防实验环境中完成TCP/IP协议栈重点协议的攻击实验,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击、TCP会话劫持攻击。
本次实践需要三台机器,选择Kali作为攻击机,Linux MetaSploitable和SEED Ubuntu分别作为靶机。
IP/MAC地址如下:

机器 IP地址 MAC地址
Kali Linux 192.168.200.2 00:0c:29:e1:31:b8
Linux MetaSploitable 192.168.200.125 00:0c:29:1d:65:90
SEED Ubuntu 192.168.200.4 00:0c:29:df:e0:bb

2.1 ARP欺骗

用SEED Ubuntu ping MetaSploitable,得到arp缓存表,并用arp -a查看arp缓存表,如图所示,MetaSploitable的IP地址和MAC地址是对应的。

在Kali上执行指令netwox 80 -e 00:0c:29:e1:31:b8 -i 192.168.200.125

如图可以看到MetaSploitable的MAC地址与Kail相同,即欺骗成功。

最后取消netwox指令再ping一下就将MAC地址恢复了。

2.2ICMP重定向攻击

在SEEDUbuntu输入route,查询靶机路由为192.168.200.1

在Kali主机上执行命令netwox 86 -f "host 192.168.200.4" -g 192.168.200.2 -i 192.168.200.1

在靶机SEEDUbuntu中输入ping baidu.com,如图,靶机收到ICMP重定向报文

2.3SYN Flood攻击

使用SEED Ubuntu向MetaSploitable发起登陆telnet 192.168.200.125

在Kali上利用netwox的76号工具对靶机的23号端口进行SYN Flood攻击netwox 76 -i 192.168.200.125 -p 23

打开Wireshark查看,可以看到攻击机向靶机发送了大量的虚假ip发出的SYN连接请求,这些虚假的连接请求没有MAC地址,无法溯源攻击者的真实身份。同时我们在SEED Ubuntu上进行访问也发现无法访问了。


2.4TCP RST攻击

使用SEED Ubuntu向MetaSploitable发起登陆telnet 192.168.200.125

在Kali上利用netwox的78号工具对靶机进行TCP RST攻击netwox 78 -i 192.168.200.125

返回SEED Ubuntu的界面,如图,telnet服务器断开连接

2.5TCP会话劫持攻击

在SEEDUbuntu中输入telnet 192.168.200.125,建立连接

在Kali中打开Wireshark进行嗅探,筛选telnet,在SEEDUbuntu中输入ls,在wireshark的数据包中可以找到


筛选telnet,并选择最后一组,打开Transmission Control Protocol查看源端口号等信息

在Kali中输入netwox 40 --ip4-dontfrag --ip4-offsetfrag 0 --ip4-ttl 64 --ip4-protocol 6 --ip4-src 192.168.200.4 --ip4-dst 192.168.200.125 --tcp-src 33836 --tcp-dst 23 --tcp-seqnum 1226 --tcp-acknum 122 --tcp-ack --tcp-psh --tcp-window 64 --tcp-data "68656C6C6F776F726C64" 伪造客户端SEEDUbuntu给服务端MetaSploitable发送TCP包。

打开Wireshark,观察到TCP DUP报文,表示劫持成功

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

  • 问题1:SEED Ubuntu 无法ping通 MetaSploitable,所以得不到arp缓存表

  • 问题1解决方案:重启再来一次就ping通了。

  • 问题2:安装netwox时,又连不上网了

  • 问题2解决方案:根据上周的经验以及老师说的解决办法,开通蜜网网关等,不行就让它休息一会,过会试试可能就好了。

4.实践总结

经过这段时间的实践,感觉自己的动手操作能力有了不小的进步,也学到了不少知识。

posted @ 2020-04-01 16:09  zzxb  阅读(309)  评论(0编辑  收藏  举报