最近在工作之余,都在看CTF东西,然后和朋友们玩狼人杀玩到昏天黑地,差点忘记要把对畸形报文攻击的研究记录下来,这篇文章的内容是畸形报文攻击中的smurf攻击,land攻击,Fraggle攻击,WinNuke攻击。当然还有其他的teardrop攻击,IP的路由记录选项控制报文等,这里就不写太多,不然篇幅太长。
smurf攻击也称为ICMP放大攻击,这种攻击是利用广播数据包的特性来进行攻击,黑客会模仿受害者主机在网络中发送目的地址是广播地址的ICMP数据包,这里的广播地址是192.168.4.255,那么当网关接收到这个数据包时,会转发给所有当前网络下面的用户,然后所有的用户会向受害者发送ICMP数据包
sumrf攻击会造成该网络的所有主机都对ICMP数据包向受害者进行回复,导致网络阻塞,这种比普通的ping 高出好几个数量级,
更加复杂的Smurf将源地址改为第三方的受害者,最终导致第三方崩溃。类似于攻击的放大器。
LAND攻击方式采用了特别构造的TCP SYN数据包(通常用于开启一个新的连接),使目标机器开启一个源地址与目标地址均为自身IP地址的空连接,持续地自我应答,消耗系统资源直至崩溃。这种攻击方法与SYN洪泛攻击并不相同。
LAND 攻击会使受害者不断的自我应答,消耗系统资源直到崩溃。
攻击者可以向攻击目标所在的网络发送UDP报文,报文的源地址为被攻击主机的地址,目的地址为被攻击主机所在子网的广播地址或子网网络地址,目的端口号为7或19。子网中启用了此功能的每个系统都会向被攻击主机发送回应报文,从而产生大量的流量,占满带宽,导致受害网络的阻塞或受害主机的崩溃
Fraggle攻击类似于sumrf攻击,会占用带宽,造成网络阻塞。
winnuke是利用NetBIOS协议中一个OOB(OutofBand)的漏洞,也就是所谓的带外数据漏洞而进行的,它的原理是通过TCP/IP协议传递一个Urgent紧急数据包到计算机的137、138或139端口,当win95/NT收到这个数据包之后就会瞬间死机或蓝屏,不重新启动计算机就无法继续使用TCP/IP协议来访问网络
低版本的操作系统win95/NT ,收到这种数据包之后,会瞬间死机或蓝屏,必须重新启动计算机。
准备: 一台kali虚拟机(攻击者),一台ubuntu 虚拟机(受害者)
工具: hping3
攻击者:
受害者:
攻击者发送sumrf攻击数据包,将数据包发送到受害者网络中
hping3 --icmp 192.168.146.255 -a 192.168.146.128 --flood
将目的地址设为广播地址
将发送地址设为受害者地址 -a 数据包发送方地址
Ubuntu 抓包分析
从如下抓包可知,攻击者模仿受害者想广播地址发送icmp数据包。受害者自身并没有发送icmp 数据包,
sumrf 攻击发生后,其他的设备对受害者产生icmp reply 回应数据包,当数据包达到一定数量级,将会产生网络阻塞的影响。
kali攻击
land攻击就是利用自我应答的特性,对受害者发送自我应答的数据包
hping3 192.168.146.128 -p 22 -n -S -a 192.168.146.128 --flood
-p 端口 -n 静默模式 -S 发送SYN
这里只需要将数据包的源地址和目的地址是同一个地址即可
Ubuntu 抓包分析,通过wireshark 抓包查看,可以看到自己给自己一直发送tcp syn数据包。
kali 攻击
Fraggle攻击利用udp端口中7,19不常用的特性,另一方仿造受害者向广播地址发送udp报文。
hping3 192.168.146.255 -a 192.168.146.128 -s 7 -p 19 --flood
-s 目标端口
-p 发送端口
Ubuntu 抓包分析,通过wireshark查看,是不是发现和sumrf攻击都很类似,只不过一个是udp协议包,一个是icmp协议的包,并且都是向广播地址。
kali攻击
通过这个攻击,可以充分利用Urgent紧急协议数据包发送到计算即的137端口。
hping3 -p 137 -U 192.168.146.128
1.利用防火墙对不同的攻击进行过滤,利用防火墙相关的规则,对相关的数据包进行阻截。
2.也可以利用snort IPS 对这几种攻击进行阻断
LAND攻击snort检测规则
Fraggle攻击snort检测规则
WinNuke攻击snort检测规则
本文讲述了四种畸形报文攻击(smurf攻击、land攻击、fraggle攻击、winnuke攻击), 每种攻击都有各自的特色,针对这些攻击,再学习一些协议的过程中,可以帮助大家了解这些攻击的特性。
种一棵树最好的时间是十年前和现在,愿不负韶华