针对头疼的UDP攻击如何定制有效的防护措施

分布式拒绝服务攻击(Distributed Denial of Service)简称DDoS,亦称为阻断攻击或洪水攻击,是目前互联网最常见的一种攻击形式。DDoS攻击通常通过来自大量受感染的计算机(即僵尸网络)的流量,对目标网站或整个网络进行带宽或资源消耗,使目标无法处理大量数据包,导致服务中断或停止。

UDP是网络通信的标准协议,由于UDP数据包是无链接状态的服务,相对TCP而言,存在更少的错误检查和验证。攻击者可以更小代价的利用UDP 协议特性攻击目标主机,使其无法响应正确请求,甚至会导致线路拥塞。而UDP反射放大攻击,更是近几年最火热,被利用最多的攻击方式。成本之低,放大倍数之高,使各企业闻D色变。

UDP是什么

UDP中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768 是UDP的正式规范。UDP在IP报文的协议号是17。

UDP协议与TCP协议一样用于处理数据包,在OSI模型中,两者都位于传输层,处于IP协议的上一层。UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。UDP用来支持那些需要在计算机之间传输数据的网络应用。包括网络视频会议系统在内的众多的客户/服务器模式的网络应用都需要使用UDP协议。UDP协议从问世至今已经被使用了很多年,虽然其最初的光彩已经被一些类似协议所掩盖,但即使在今天UDP仍然不失为一项非常实用和可行的网络传输层协议。

许多应用只支持UDP,如:多媒体数据流,不产生任何额外的数据,即使知道有破坏的包也不进行重发。当强调传输性能而不是传输的完整性时,如:音频和多媒体应用,UDP是最好的选择。在数据传输时间很短,以至于此前的连接过程成为整个流量主体的情况下,UDP也是一个好的选择。

在选择UDP作为传输协议时必须要谨慎。在网络质量令人十分不满意的环境下,UDP协议数据包丢失会比较严重。但是由于UDP的特性:它不属于连接型协议,因而具有资源消耗小,处理速度快的优点,所以通常音频、视频和普通数据在传送时使用UDP较多,因为它们即使偶尔丢失一两个数据包,也不会对接收结果产生太大影响。比如聊天用的QQ就是使用的UDP协议。

什么是UDP Flood?

UDP泛洪是容量拒绝服务 (DoS) 攻击的一种形式,攻击者以包含用户数据报协议 (UDP) 数据包的 IP 数据包为目标并覆盖主机上的随机端口。在这种类型的攻击中,主机寻找与这些数据报相关联的应用程序。当没有找到时,主机向发送方发送一个“目标不可达”数据包。被这种洪水轰炸的累积影响是系统被淹没,因此对合法流量没有反应。在 UDP泛洪 DDoS攻击中,攻击者也可能选择欺骗数据包的 IP 地址。这可确保返回的 ICMP 数据包无法到达其主机,同时还使攻击完全匿名。

UDP Flood的原理是什么

UDP Flood是日渐猖厥的流量型DoS攻击,原理也很简单。常见的情况是利用大量UDP小包冲击DNS服务器或Radius认证服务器、流媒体视频服务器。100k bps的UDP Flood经常将线路上的骨干设备例如防火墙打瘫,造成整个网段的瘫痪。由于UDP协议是一种无连接的服务,在UDPFLOOD攻击中,攻击者可发送大量伪造源IP地址的小UDP包。但是,由于UDP协议是无连接性的,所以只要开了一个UDP的端口提供相关服务的话,那么就可针对相关的服务进行攻击。

正常应用情况下,UDP包双向流量会基本相等,而且大小和内容都是随机的,变化很大。出现UDP Flood的情况下,针对同一目标IP的UDP包在一侧大量出现,并且内容和大小都比较固定。

传统UDP Flood攻击是一种消耗攻击和被攻击双方资源的带宽类攻击方式。攻击者通过僵尸网络向目标设备发送大量伪造的UDP报文,这种报文一般为大包且速率非常快,通常会造成链路拥塞甚至网络瘫痪的危害。这种攻击方式由于技术含量较低,现在已经越来越少被使用。近几年来,越来越多的攻击者选择使用UDP反射放大攻击。UDP反射放大攻击有两个特点,一是属于UDP协议,二是目的端口号固定。UDP反射放大攻击的原理类似,以常见的NTP(Network Time Protocol)反射放大攻击为例,其有两个关键点:反射和放大。

反射攻击

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

放大攻击

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

UDP泛洪攻击的迹象是什么?

服务器每次接收到新的UDP数据包时,都会使用资源来处理请求。此过程的第一步涉及服务器确定是否有任何程序在指定端口运行。如果该端口上没有程序正在接收数据包,则服务器发出 ICMP 数据包以通知发送方无法到达目的地。当UPD泛洪DDoS攻击来自多台机器时,该攻击被视为分布式拒绝服务(DDoS)威胁。当使用多台机器发起UDP泛洪时,总流量往往会超过连接目标到互联网的链路的容量,从而导致瓶颈。

为什么UDP Flood 攻击很危险?

UDP 是一种无连接和无会话的网络协议。与 TCP 不同,UDP 流量不需要三向握手。因此,它需要较少的开销,非常适合聊天或 VoIP 等不需要检查和重新检查的流量。使 UDP 成为某些类型流量的理想选择的相同属性也使其更容易被利用。无需初始握手以确保合法连接,UDP 通道可用于向任何主机发送大量流量。没有可以限制 UDP泛洪速率的内部保护措施。因此,UDP泛洪 DOS 攻击异常危险,因为它们可以在有限的资源下执行。

如何防御UDP Flood?

由于UDP协议不建立连接,对UDP Flood的防御并不能像SYN Flood一样进行源探测。最初防火墙对UDP Flood的防御方式就是限流,将链路中的UDP报文控制在合理的带宽范围之内,可基于目的IP地址、目的安全区域和会话进行限流。虽然限流可以有效缓解链路带宽的压力,但这种方式可能会丢弃一些正常报文,因此需要新的手段防御UDP Flood。

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

1.静态指纹过滤

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

2.动态指纹学习

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

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

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

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

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

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

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

在未来的一段时间里,UDP反射放大型DDOS攻击将会更加频繁的出现,DDOS攻击已经从G时代正式进入的T时代,各大互联网企业和网络安全公司将面临更大的网络安全挑战。通过上述方式可以缓解UDP反射放大型DDOS攻击,有效提高网络安全的防护能力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/10299.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[机器学习-04] Scikit-Learn机器学习工具包进阶指南:集群化与校准功能实战【2024最新】

🎩 欢迎来到技术探索的奇幻世界👨‍💻 📜 个人主页:一伦明悦-CSDN博客 ✍🏻 作者简介: C软件开发、Python机器学习爱好者 🗣️ 互动与支持:💬评论 &…

抖音橱窗不是电商!别再傻傻搞不清了

大家好,我是电商糖果 今天碰到一位非常有意思的朋友,说是找糖果咨询抖音小店。 但是问的问题,跟抖音小店没有一点关系。 而且还非常执拗,给他解释一遍又一遍,还是坚持自己的想法。 记住抖音橱窗不是电商&#xff0…

vue3 element plus el-date-picker组件在日期上做标识

1.先看效果图,带红点的就是我要做标识的日期 2.直接把代码拿出来就可以用 (1)html部分 <el-date-pickerv-model"startTime"type"datetime"placeholder"选择开始日期"format"YYYY-MM-DD HH:mm"value-format"YYYY-MM-DD HH:mm…

YOLOv8预测流程-原理解析[目标检测理论篇]

接下来是我最想要分享的内容&#xff0c;梳理了YOLOv8预测的整个流程&#xff0c;以及训练的整个流程。 关于YOLOv8的主干网络在YOLOv8网络结构介绍-CSDN博客介绍了&#xff0c;为了更好地介绍本章内容&#xff0c;还是把YOLOv8网络结构图放在这里&#xff0c;方便查看。 1.前言…

1053: 输出利用先序遍历创建的二叉树中的指定结点的度

解法&#xff1a; c语言 #include<iostream> #include<vector> using namespace std; typedef struct tNodes{char val;tNodes* left, * right; }* tNode;void creat(tNode& t) {char ch;cin >> ch;if (ch #) t NULL;else {t new tNodes;t->val …

2024高安全个人密码本程序源码,贴身密码管家-随机密码备忘录二代密码

项目概述&#xff1a; 在这个网络高度发展的时代&#xff0c;每个人都需要上网&#xff0c;而上网就不可避免地需要使用账号和密码。 在众多账号的情况下&#xff0c;你是否还在为复杂难记的密码感到烦恼&#xff1f;现在只需要记录一次&#xff0c; 就可以随时查看你的密码…

AI跟踪报道第41期-新加坡内哥谈技术-本周AI新闻:本周Al新闻: 准备好了吗?事情即将変得瘋狂

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

【matlab基础知识代码】(十八)无约束最优化问题

min下面的x称为优化向量或者是决策变量 匿名函数法 >> f(x)(x(1)^2-2*x(1))*exp(-x(1)^2-x(2)^2-x(1)*x(2)); x0[0; 0]; [x,b,c,d]fminsearch(f,x0), x 0.6111 -0.3056 b -0.6414 c 1 d 包含以下字段的 struct: iterations: 72 funcCount: 137 algor…

STM32:GPIO输入输出

文章目录 1、GPIO介绍1.1 GPIO的基本结构1.1 GPIO的位结构 2、 GPIO工作模式3、GPIO标准外设库接口函数3.1 RCC接口函数3.2 GPIO接口函数3.2.1 GPIO的读取函数3.2.1 GPIO的写入函数 4、GPIO的初始化 1、GPIO介绍 GPIO&#xff08;General Purpose Input Output&#xff09;通用…

软件测试之 接口测试 Postman使用

接口测试 URL HTTP协议 HTTP 请求部分 HTTP响应部分 Postman使用 界面介绍 这里 注意 如果你无法访问 那么 captchaImage这个打错了&#xff0c;给的资料中是错误的地址 https://kdtx-test.itheima.net/api/captchaImage登录接口 科大天下 第一个接口的登录设置 https://kd…

使用map类型的参数在mapper.xml中使用案例

使用map类型的参数在mapper.xml中使用案例 简介&#xff1a;在常见的开发中&#xff0c;对于参数的装载一般使用map类型方式&#xff0c;这样可以避免创建很多参数实体类&#xff0c;不管嵌套多层的数据参数都可以通过map拿取&#xff0c;对于嵌套多层的map&#xff0c;我们需…

云渲染动画300帧需要多久呢?瑞云渲染为你揭秘

在动画制作过程中&#xff0c;渲染的速度非常关键。对于一个项目需要渲染的300帧来说&#xff0c;由于硬件的限制&#xff0c;许多公司的设备可能无法快速完成这项任务。此时&#xff0c;借助云渲染服务的强大计算能力&#xff0c;可以显著减少完成时间&#xff0c;从而提速整个…

【Java基础】初识正则表达式

正则表达式只适用于字符串 匹配matches 实际使用的是String类中定义的方法boolean matches(String regex) public static void piPei( ){String regex"[1][356789]\\d{9}";boolean boo"14838384388".matches(regex);System.out.println(boo); }验证qq号…

构建无服务器数仓(二)Apache DolphinScheduler 集成以及 LOB 粒度资源消费分析

引言 在数据驱动的世界中&#xff0c;企业正在寻求可靠且高性能的解决方案来管理其不断增长的数据需求。本系列博客从一个重视数据安全和合规性的 B2C 金融科技客户的角度来讨论云上云下混合部署的情况下如何利用亚马逊云科技云原生服务、开源社区产品以及第三方工具构建无服务…

18 分页:介绍

目录 简单例子 页表存在哪里 列表中究竟有什么 分页&#xff1a;也很慢 内存追踪 小结 在解决大多数空间管理问题上面&#xff0c;操作系统有两种方法&#xff1a; 第一种就是将空间分割成不同长度的分片&#xff0c;类似于虚拟内存管理中的分段&#xff0c;但是这个方法…

电商平台自动回复脚本制作的流程!

随着电子商务的快速发展&#xff0c;电商平台在日常运营中面临着大量的客户咨询和服务需求&#xff0c;为了提高客户服务效率和质量&#xff0c;许多电商平台采用了自动回复脚本&#xff0c;以快速响应客户问题并提供准确的信息。 本文将详细介绍电商平台自动回复脚本制作的流…

Matten:视频生成与Mamba-Attention

Matten:视频生成与Mamba-Attention 摘要IntroductionRelated WorkMethodology Matten: Video Generation with Mamba-Attention 摘要 在本文中&#xff0c;作者介绍了Matten&#xff0c;一种具有Mamba-Attention架构的尖端潜在扩散模型&#xff0c;用于视频生成。在极小的计算…

带EXCEL附件邮件发送相关代码

1.查看生成的邮件 2.1 非面向对象的方式&#xff08;demo直接copy即可&#xff09; ​ REPORT Z12. DATA: IT_DOCUMENT_DATA TYPE SODOCCHGI1,IT_CONTENT_TEXT TYPE STANDARD TABLE OF SOLISTI1 WITH HEADER LINE,IT_PACKING_LIST TYPE TABLE OF SOPCKLSTI1 WITH HEADER LIN…

docker runc升级1.1.12

上传runc-1.1.12制品至中控机 874e970eaa932a97de9888344ae08f24 runc.arm64 将所有节点的runc文件备份 所有节点(包括master+node) vim host [all] 10.1.0.183 ansible_password=Bigdata@Ksyun123 ansible_user=root ansible_port=22 10.1.0.249 ansible_password=Bigdata…

关于 vs2019 c++ 20规范,STL 库提供的标准分配器 alloctor 及其 traits 及涉及分配器交换的全局函数 _Pocs

(1) 我们写 c 代码&#xff0c;使用 STL 库中的模板&#xff0c;很少自己写对象的分配器。用 STL 中的分配器也够用。研究 STL 中的分配器也可以为咱们自己写分配器提供参考。 咱们会遇到这样的场景&#xff0c;例如交换两个容器对象&#xff1a; list a ,b ; a .swap (b) ; 这…