一种更具破坏力的DDoS放大攻击新模式

news2024/11/26 14:28:23

近日,内容分发网络(CDN)运营商Akamai表示,一种使网站快速瘫痪的DDoS放大攻击新方法正在被不法分子所利用。这种方法是通过控制数量巨大的中间设备(middlebox,主要是指配置不当的服务器),可以将大量垃圾数据快速放大到之前无法想象的规模。

这些中间设备大多未遵循传输控制协议规范——在建立连接之前,这种规范需要三方握手,这个握手过程包括客户端发送SYN数据包、服务器发送SYN+ACK响应以及客户端发送用于确认的ACK数据包。

由于ACK确认数据包必须来自合法用户,而不是欺骗目标IP地址的攻击者,这种握手机制会阻止基于TCP的应用程序被用作放大器。但是考虑到需要处理非对称路由,这类中间设备有意放弃了这一要求。这就使得攻击者可以通过放大手法提高攻击力,实施更具破坏力的DDoS攻击活动。

隐藏的武器库

去年8月,马里兰大学和科罗拉多大学博尔德分校的研究人员发表的研究结果表明,攻击者有能力利用这数十万个中间设备发动最严重的分布式拒绝服务(DDoS)攻击。攻击者使用DDoS向网站发送流量或超出服务器处理能力的垃圾数据,从而使其拒绝向合法用户提供服务。DDoS类似以前的这种恶作剧——将更多电话转到电话线不够处理的比萨店。

为了尽量加大损害并节省资源,DDoS攻击者常常通过放大手法提高攻击力。放大攻击的原理是,欺骗目标的IP地址,并向用于解析域名、同步计算机时钟或加快数据库缓存的配置不当的服务器发送数量较少的数据。由于服务器自动发送的响应比请求大几十倍、几百倍甚至几千倍,所以这种自动响应让受骗的目标不堪重负。

研究人员表示,他们发现的至少10万个中间设备超过了DNS服务器的放大倍数(约54倍)和网络时间协议服务器的放大倍数(约556倍)。他们发现使用memcached来放大流量的数百台服务器,会产生比上述配置不当的服务器更高的倍数放大流量。memcached用于加速网站的数据库缓存系统,可以将流量增加惊人的51000倍。

研究人员当时表示,他们没有证据表明中间设备DDoS放大攻击在外面被大肆使用,但预计这一天早晚会到来。近日,Akamai研究人员表示,他们已检测到多起DDoS攻击就采用这种方式来使用中间设备,其攻击峰值流量达到11Gbps,每秒150万个数据包。虽然与最大规模的DDoS相比是小巫见大巫,但两个研究团队都预测:随着DDoS攻击者开始优化攻击,并找到更多可以被滥用的中间设备,攻击规模会变得更大。

去年8月发表研究论文的首席研究员Kevin Bock表示,DDoS攻击者有强烈的动机来重现其团队理论上推测的攻击。在Akamai的检测中发现,一个中间设备收到了带33字节有效载荷的SYN数据包,返回了2156字节的回复。也就是说,放大倍数是65,但这种放大攻击手法大有潜力可挖。

Akamai研究人员表示:

TCP容量耗尽攻击以前需要攻击者访问大量机器和大量带宽,通常需要功能非常强大的机器,拥有高带宽连接和源头欺骗功能或僵尸网络。这是由于在此之前,TCP协议方面没有受到严重的放大攻击;少量放大是有可能,但被认为几乎忽略不计,至少与针对UDP的放大攻击相比不值一提。

如果想把SYN洪水攻击与容量耗尽攻击结合起来,就需要1:1的攻击带宽量,通常向受害者发送填充的SYN数据包这种流量。中间设备攻击放大的出现颠覆了长期以来对TCP攻击的这番认识。现在,从容量耗尽攻击的角度来看,攻击者在一些情况下只需要1/75的带宽量,攻击者就能免费获得SYN、ACK或PSH+ACK洪水流量。

攻击从未停歇

Akamai遇到的另一个中间设备由于未知原因使用自己的多个SYN数据包来响应SYN数据包。遵循TCP规范的服务器不应该以这种方式响应。更糟糕的是,该中间设备完全忽略了受害者发送的RST数据包,这些数据包本该终止连接。

另外令人担忧的是,Bock的研究团队发现,一些中间设备在收到含有RST的任何其他数据包时做出响应。这会造成无休止的数据包风暴。Akamai还附上一段演示,展示了攻击者攻击基于TCP服务的特定端口时出现的破坏。

Akamai解释,这些发送到TCP应用程序/服务的SYN数据包会导致该应用程序试图用多个SYN+ACK数据包进行响应,并保持TCP会话开放,等待三方握手的其余过程。由于每个TCP会话都处于这种半开放状态,系统会消耗套接字,反过来会消耗资源,最终资源完全耗尽。

遗憾的是,普通的最终用户无法阻止DDoS放大手法被利用。同时,在许多情况下,中间设备运营方重新配置其设备是不可能的。网络防御者必须改变其过滤和响应数据包的方式。

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

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

相关文章

thinkphp6 入门(8)-- Session

开启Session Session功能默认是没有开启的(API应用通常不需要使用Session) think\middleware\SessionInit// 添加引用 use think\facade\Session; 赋值 Session::set(name, thinkphp);取值 // 如果值不存在,返回null Session::get(name)…

【Java学习之道】JavaFx 框架与组件介绍

引言 如果你曾经尝试过使用Java编写一个漂亮的窗口应用程序,那么你一定知道JavaFX这个强大的工具。JavaFX是Java 8中引入的一个GUI开发框架,它提供了丰富的组件和功能,使得我们可以轻松地创建出功能强大、界面美观的桌面应用程序。无论你是想…

linux命令执行的结果如何快速传递给下一个管道?xargs完虐

xargs xargs是给命令传递参数的过滤器,他的作用就是将上一步的输出传递到下一命令的输入上。类似于shell脚本中$? 。这样使用的好处是什么呢?你想想每次想关闭一个进程,你是否需要先查找,然后拿着结果再去执行第二条命令&#x…

【09】基础知识:React组件的生命周期

组件从创建到死亡它会经历一些特定的阶段。 React 组件中包含一系列勾子函数&#xff08;生命周期回调函数 <> 生命周期钩子函数 <> 生命周期函数 <> 生命周期钩子&#xff09;&#xff0c;会在特定的时刻调用。 我们在定义组件时&#xff0c;会在特定的生…

leetcode做题笔记173. 二叉搜索树迭代器

实现一个二叉搜索树迭代器类BSTIterator &#xff0c;表示一个按中序遍历二叉搜索树&#xff08;BST&#xff09;的迭代器&#xff1a; BSTIterator(TreeNode root) 初始化 BSTIterator 类的一个对象。BST 的根节点 root 会作为构造函数的一部分给出。指针应初始化为一个不存在…

排序优化:如何实现一个通用的、高性能的排序函数?

文章来源于极客时间前google工程师−王争专栏。 几乎所有的编程语言都会提供排序函数&#xff0c;比如java中的Collections.sort()。在平时的开发中&#xff0c;我们都是直接使用&#xff0c;这些排序函数是如何实现的&#xff1f;底层都利用了哪种排序算法呢&#xff1f; 问题…

微信小程序入门---超详细教程

一&#xff0c;小程序入门 1.1 什么是小程序&#xff1f; 2017年度百度百科十大热词之一 微信小程序&#xff08;wei xin xiao cheng xu&#xff09;&#xff0c;简称小程序&#xff0c;英文名Mini Program&#xff0c;是一种不需要下载安装即可使用的应用( 张小龙对其的定义…

好的摄影师都会iPhone 8和iOS 11的这三项功能

众所周知&#xff0c;苹果的手机像素一直处于智能手机摄影的前沿&#xff0c;在即将到来的九月&#xff0c;苹果公司准备证明他拥有最好的相机技术。 虽然我们还不知道iPhone 8摄像头的具体细节&#xff0c;如几百万像素、光学变焦是多少&#xff0c;但我们确实知道苹果正在给i…

2023年全球团队协作工具排名推荐,这6款值得关注!

随着远程工作变得越来越普遍&#xff0c;团队协作工具在今天的工作场所变得越来越重要。然而&#xff0c;找到合适的协作工具来满足团队的需求可能是一个挑战。有这么多可用的选项&#xff0c;很难决定哪一个对您的团队最有效。 在本文中&#xff0c;我们将研究团队协作工具的不…

小程序的入门

目录 小程序的简介 好处 安装及使用 小程序的入门案列 小程序的简介 微信小程序是一种轻量级的应用程序&#xff0c;可以在微信平台上运行。它们具有快速、便捷和低成本等特点。通过微信小程序&#xff0c;用户可以在微信内直接使用各种功能&#xff0c;而无需下载和安装额外…

如何降低海康、大华等网络摄像头调用的高延迟问题(一):海康威视网络摄像头的python sdk使用(opencv读取sdk流)

目录 1.python sdk使用 1.海康SDK下载 2.opencv读取sdk流 先说效果&#xff0c;我是用的AI推理的实时流&#xff0c;延迟从高达7秒降到小于1秒 如果觉得这个延迟还不能接受&#xff0c;下一章&#xff0c;给大家介绍点上不得台面的小方法 SDK&#xff08;Software Developme…

“小程序:改变电商行业的新趋势“

目录 引言1. 小程序的简介1.1 什么是小程序&#xff1f;1.2 小程序的优势 2. 小程序之电商演示1.注册微信小程序2.安装开发工具3.创建项目 3. 小程序之入门案例总结 引言 随着移动互联网的迅猛发展&#xff0c;小程序作为一种全新的应用形态&#xff0c;正在逐渐改变着传统电商…

springboot 志同道合交友网站演示

springboot 志同道合交友网站演示 liu1113625581

SpringBoot面试题2:SpringBoot与SpringCloud 区别?SpringBoot和Spring、SpringMVC的区别

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:SpringBoot与SpringCloud 区别? Spring Boot 和 Spring Cloud 是 Spring 生态系统中的两个关键组件,它们有以下区别: 定位:Spring Boot 用于简…

<三>Qt斗地主游戏开发:主界面初始化显示

1. 主界面效果 效果关键点&#xff1a; 1&#xff09;拖动标题栏可实现主界面拖动 2&#xff09;logo图标名称及主界面背景 3&#xff09;最小化及关闭 2.思路分析 1&#xff09;背景图片及logo图标的设定比较简单&#xff0c;通过stylesheet即可实现。通过QWidget的拖动即可实…

Jboss反序列化漏洞

run.bat运行jboss 看下server.xml 端口设置的多少 打开jboss 用jboss反序列工具进行扫描 执行命令&#xff0c;因为存在jboss存在漏洞&#xff0c;所以执行命令得到结果 找一下jboss的目录 dir /s c:\*.jsp 先选一个jboss目录上传试一下 把斜杠改成反斜杠 给这个目录上传一个脚…

01背包问题 : 二维dp数组 + 图文

其实01背包问题&#xff0c;我之前跟着代码随想录的Carl学过&#xff0c;今天我看到另外一种定义dp数组的方式&#xff0c;我觉得思路也不错&#xff0c;所以我又来写一篇&#xff0c;大家再看此篇之后也可以看我的往期文章&#xff0c;非常感谢您的阅读&#xff1a;解决0-1背包…

「网络编程」网络层协议_ IP协议学习_及深入理解

「前言」文章内容是网络层的IP协议讲解。 「归属专栏」网络编程 「主页链接」个人主页 「笔者」枫叶先生(fy) 目录 一、IP协议简介二、IP协议报头三、IP网段划分&#xff08;子网划分&#xff09;四、特殊的IP地址五、IP地址的数量限制六、私有IP地址和公网IP地址七、路由八、分…

Unity实现摄像机向屏幕中间发射射线射击物体

1.创建一个准星放在屏幕中间 外部找个PNG透明图&#xff0c;拖到Unity文件夹&#xff0c;右上角改成精灵sprite2d 2.添加到UI画布 3.写脚本 首先&#xff0c;我们需要引入一些 "工具"&#xff0c;就像我们在玩游戏时要先下载游戏客户端一样。这里的 "工具&quo…

【Python】Python语言基础(中)

第十章 Python的数据类型 基本数据类型 数字 整数 整数就是整数 浮点数 在编程中&#xff0c;小数都称之为浮点数 浮点数的精度问题 print(0.1 0.2) --------------- 0.30000000000000004 ​​1.可以通过round()函数来控制小数点后位数 round(a b)&#xff0c;则表示…