为什么都说UDP FLOOD洪水攻击非常难防护

173 阅读13分钟

  据权威数据显示,2023年下半年,全球发生DDoS攻击约 540 万次,同比增长11%,据估计,2022年整年DDoS攻击次数将创纪录地达到1100万次。其中超百G的大流量攻击次数在上半年就达到了2544次,同比增长50%以上,大幅高于整体攻击次数的增长幅度。

  从这些数据中可以看出,随着网络技术的快速发展,DDoS攻击将呈现高频次、高增长、大流量等特点,对网络安全的威胁也会与日俱增,因此做好DDoS攻击的防护工作已是刻不容缓。

242b27069b5219e062fe1851f9d544d2_90.jpg

什么是DDoS攻击

  分布式拒绝服务攻击**(Distributed Denial of Service,简称“DDoS”)是指处于不同位置的多个攻击者同时向一个或数个目标发动攻击,或者一个攻击者控制了位于不同位置的多台机器并利用这些机器对受害者同时实施攻击。由于攻击的发出点分布在不同地方,因此称这类攻击为分布式拒绝服务攻击。

DDoS攻击原理

  单一的DoS攻击一般采用一对一方式,利用网络协议和操作系统的一些缺陷,采用欺骗和伪装的策略来进行网络攻击,使网站服务器充斥大量要求回复的信息,消耗网络带宽或系统资源,导致网络或系统不胜负荷以至于瘫痪而停止提供正常的网络服务。

  与DoS攻击由单台主机发起攻击相比较,分布式拒绝服务攻击(DDoS)是借助数百、甚至数千台被入侵后安装了攻击进程的主机同时发起集团行为,从而快速达到消耗网络资源,造成网络或系统瘫痪的攻击效果。

DDoS攻击常见类型

流量型攻击

攻击原理:通过多个随机源“肉鸡”向攻击目标发送大量的数据包,占用攻击目标网络资源和处理单元,造成攻击目标的网络堵塞或宕机。

流量型DDoS攻击根据攻击方式的不同可以分为IP lood、SYN Flood**以及UDP反射Flood等。

(1)IP lood

以多个随机的源主机地址**向目的主机发送超大量的随机或特定的IP包,造成目标主机不能处理其他正常的IP报文。

(2)SYN Flood

以多个随机的源主机地址向目的主机发送syn包,而在收到目的主机的syn+ ack包后并不回应,目的主机为这些源主机建立大量的连接队列,由于没有收到ack一直维护这些连接队列,造成资源的大量消耗而不能向正常的请求提供服务。

(3)UDP 反射Flood

在短时间内冒充被攻击地址向外部公用的服务器发送大量的UDP请求包,外部服务器收到虛假的UDP请求就会回复大量的回应包给被攻击服务器地址,造成目标主机被保护,服务器不能处理其他正常的交互流量。

00dcdd984c723637fd8dc796162147a7_v2-c53b1db8f75050a55806ab1ad7f94501_1440w_source=172ae18b.jpg

其中UDP攻击,是目前市场上比较讨人厌的一种直接攻击的方式。

UDP适用场景

  UDP协议一般作为流媒体应用、语音交流、视频会议所使用的传输层协议,还有许多基于互联网的电话服务使用的VOIP(基于IP的语音) 也是基于UDP运行的,实时视频和音频流协议旨在处理偶尔丢失的数据包,因此,如果重新传输丢失的数据包,则只会发生质量略有下降,而不是出现较大的延迟。

我们大家都知道的DNS 协议底层也使用了UDP 协议,这些应用或协议之所以选择UDP 主要是因为以下这几点

速度快,采用 UDP 协议时,只要应用进程将数据传给 UDP,UDP 就会将此数据打包进 UDP 报文段并立刻传递给网络层,然而TCP有拥塞控制的功能,它会在发送前判断互联网的拥堵情况,如果互联网极度阻塞,那么就会抑制 TCP 的发送方。使用 UDP 的目的就是希望实时性。

无须建立连接,TCP 在数据传输之前需要经过三次握手的操作,而 UDP 则无须任何准备即可进行数据传输。因此 UDP 没有建立连接的时延。

无连接状态,TCP 需要在端系统中维护连接状态,连接状态包括接收和发送缓存、拥塞控制参数以及序号和确认号的参数,在 UDP 中没有这些参数,也没有发送缓存和接受缓存。因此,某些专门用于某种特定应用的服务器当应用程序运行在 UDP 上,一般能支持更多的活跃用户

分组首部开销小,每个 TCP 报文段都有 20 字节的首部开销,而 UDP 仅仅只有 8 字节的开销。

什么是UDP攻击?

  UDP FLOOD洪水攻击是一种分布式拒绝服务(DDoS)攻击,常常攻击者在短时间内向特定目标发送大量的UDP报文,占用目标主机的带宽,致使目标主机不能处理正常的业务。

1.UDP FLOOD攻击原理

UDP协议是一种无连接的协议,使用UDP协议传输报文之前,客户端和服务器之间不需要建立连接。如果在从客户端到服务器端的传递过程中出现报文的丢失,协议本身也不做任何检测或提示。这种报文处理方式决定了UDP协议资源消耗小、处理速度快,在被广泛应用的同时也为攻击者发动UDP Flood攻击提供了可能。

传统的UDP FLOOD攻击方式如下图示所:

图片

攻击者通过僵尸网络向目标设备发送大量伪造的UDP报文,这种报文一般为大包且速率非常快,通常会造成链路拥塞甚至网络瘫痪。

针对UDP协议的特性,近年来黑客又创造了新的攻击方法,在这种攻击中,攻击者通过利用UDP协议无连接的特性,将请求包的源IP地址篡改为攻击目标的IP地址,使得服务器的响应包被发送到攻击目标,形成反射攻击。同时,由于UDP协议的特性,很多协议在响应包处理时,要远大于请求包,这就形成了所谓的“放大”效果。例如,一个NTP请求包只有90字节的大小,而其回应报文通常为482字节,100个回应报文就是48200字节,放大倍数达到了500倍左右。

2.常见UDP反射放大类型

除了常见的DNSNTPUDP反射放大攻击类型,目前还有其他10多种UDP协议,均可以用于反射放大攻击,如下表所示:

协议端口说明端口理论放大倍数
DNS域名解析协议5328~54
NTP网络时间协议123556.9
SNMP简单网络管理协议1616.3
SSDP简单服务发现协议190030.8
PORTMAP端口映射1117~28
QOTD给连接了的主机发送每日格言17140.3
CHARGEN字符生成服务19358.8
TFTP简单文件传输协议6960
NETBIOSNET BIOS服务1383.8
MEMCACHED缓存服务1121110000~50000
WS_DISCOVERYWEB服务动态发现370270~500
CLDAP无连接轻量级目录访问协议38958~70

3.UDP FLOOD攻击的危害

UDP Flood属于带宽类攻击,攻击者通过僵尸网络向目标服务器发起大量的UDP报文,这种UDP报文通常为大包,且速率非常快,通常会造成以下危害:

  • 消耗网络带宽资源,严重时造成链路拥塞
  • 大量变源变端口的UDP Flood会导致依靠会话转发的网络设备,性能降低甚至会话耗尽,从而导致网络瘫痪。

近几年来,越来越多的攻击者选择使用UDP反射放大攻击。UDP反射放大攻击有两个特点,一是属于UDP协议,二是目的端口号固定。UDP反射放大攻击的原理类似,以常见的NTP(Network Time Protocol)反射放大攻击为例,其有两个关键点:反射和放大。

4.UDP FLOOD攻击为何如此难防护

反射攻击:

在UDP协议中,正常情况下,客户端发送请求包到服务器,服务器返回响应包给客户端,一次交互就已完成,中间没有校验过程。反射攻击正是利用了UDP协议面向无连接、缺少源认证机制的特点,将请求包的源IP地址篡改为攻击目标的IP地址,最终服务器返回的响应包就会被送到攻击目标,形成反射攻击。

放大攻击:

攻击者通常利用互联网的基础架构来进行放大攻击。由于网络中开放的NTP服务器非常多,攻击者会利用僵尸主机同时向NTP服务器发起大量的Monlist请求,1个Monlist请求包可以引发100个响应包。通常1个NTP请求包只有90字节的大小,而1个回应报文通常为482字节,100个回应报文就是48200字节,可以发现回应报文是请求报文的500倍左右,这就形成了四两拨千斤的放大攻击,最终造成链路拥塞甚至网络瘫痪。

image.png

如何防御UDP Flood?

由攻击工具伪造的攻击报文通常都拥有相同的特征字段,比如都包含某一字符串或整个报文内容一致,而对于UDP反射放大攻击中那些由真实网络设备发出的报文,在数据段不具备相同特征,但其目的端口都是固定的,所以不难发现UDP Flood攻击报文都具有一定的特征。确定攻击报文的特征后即可进行过滤,特征过滤也就是常说的指纹过滤。指纹过滤包括静态指纹过滤和动态指纹学习两种方法。

image.png

1  静态指纹过滤

UDP报文的数据段、源IP地址、源端口、目的IP地址、目的端口都可能隐藏着攻击报文的特征。对于已知的攻击特征,可以直接配置到设备的过滤器参数中。配置了静态指纹过滤后会对收到的报文进行特征匹配,对于匹配到攻击特征的报文进行丢弃、限流等下一步操作。

2  动态指纹学习

在攻击特征未知的情况下,可通过动态指纹学习进行攻击防御。对于一些攻击工具发起的UDP Flood攻击,攻击报文通常都拥有相同的特征字段,指纹学习就是对一些有规律的UDP Flood攻击报文进行统计和特征识别,当报文达到告警阈值时则开始进行指纹学习。如果相同的特征频繁出现,就会被学习成指纹,后续命中指纹的报文则被判定为攻击报文,进行丢弃、限流等后续操作。

3 德迅云安全抗D盾

抗D盾是新一代的智能分布式云接入系统,接入节点采用多机房集群部署模式,隐藏真实服务器IP,但是“抗D盾”是比CDN应用范围更广的接入方式,适合任何TCP 端类应用包括(游戏、APP、微端、端类内嵌WEB等)。用户连接状态在各机房之间实时同步,节点间切换过程中用户无感知,保持TCP连接不中断,轻松应对任何网络攻击,做到完全免疫,无视攻击流量

  • DDoS防御:基于SDK接入的分布式防御体系,可精准定位恶意攻击者并主动隔离,具备自动化溯源能力。

  • CC攻击防御:私有化协议二次封装,非链接限速、报文检测机制,0误杀、0漏过。

  • 集成方式:EXE封装、SDK接入,支持Windows、iOS、Android系统,分钟级集成。

  • 网络加速:智能多线节点分布,配合独家研发的隧道填补技术,保证每条线路都是优质网络

  • 防掉线系统:研发新SocKet协议,弥补WinSock链接失败会断开问题,链接失败自动无缝切换

image.png

4 德迅高防服务器

德迅云安全部署的T级别数据中心,具备完善的机房设施,核心骨干网络有效保证高品质的网络环境和丰富的带宽资源。搭载赠送:自主化管理平台、德迅卫士(主机安全防火墙)、WEB云防护(一站式网站安全加速)、1V1专家技术支撑,竭诚为您提供安全、可靠、稳定、高效的服务体验。

  • 自主化管理平台:灵活管理资产,拥有强大的实时可视化监控、一键自主重装等功能,保障业务系统高效运行。

  • 德迅卫士(主机安全防火墙):系统层主机安全软件,为用户远程提供二次验证体系等。一键后台优化服务器权限、威胁组件、威胁端口。

  • WEB云防护(一站式网站安全加速):防SQL注入、XSS跨站,后门隔离保护、WEB SHELL上传、非法HTTP协议请求。

  • 自动调配协议:可做到运营商封死海外,减少海外udp攻击,可做到自由开启udp

image.png

结语

  通过上述方式可以缓解部分UDP反射放大型DDOS攻击,但如果面对大流量洪水攻击时,可能效果并不是很明显。对于像金融、游戏、电商、教育等对安全性要求较高的企业,德迅云安全还是建议通过接入专业的高防服务来保障服务器的稳定运行。在未来的一段时间里,UDP反射放大型DDOS攻击将会更加频繁的出现,DDOS攻击已经从G时代正式进入的T时代,各大互联网企业和网络安全公司将面临更大的网络安全挑战。