新的“HTTP/2 快速重置”零日攻击打破了 DDoS 记录

news2024/9/24 15:23:11

自 8 月份以来,一种名为“HTTP/2 快速重置”的新 DDoS(分布式拒绝服务)技术已被作为零日漏洞积极利用,其规模打破了之前的所有记录。

Amazon Web Services、Cloudflare 和 Google 今天联合发布了有关零日技术的消息,他们报告称,缓解攻击的速度达到每秒 1.55 亿个请求 (Amazon)、2.01 亿个 rps (Cloudflare) 和破纪录的 398 个请求。百万 rps(谷歌)。

谷歌表示,他们能够通过在网络边缘增加更多容量来减轻这些新的攻击。

Cloudflare 说,它所缓解的攻击规模比 2023 年 2 月以来的记录(7100 万 rps)大三倍,而且令人震惊的是,这是使用由 20000 台机器组成的相对较小的僵尸网络实现的。

自 8 月底以来,Cloudflare 已检测并缓解了超过 1000 起“HTTP/2 快速重置”DDoS 攻击,其 rps 超过 1000 万,其中 184 次打破了之前 7100 万 rps 的记录。

随着更多威胁参与者使用更广泛的僵尸网络以及这种新的攻击方法,HTTP/2 快速重置攻击将继续打破更大的记录。

当今的僵尸网络由数十万或数百万台机器组成。

鉴于整个网络通常每秒仅处理 1-30 亿个请求,因此使用这种方法可以将整个网络的请求集中在少数目标上,这并非不可想象。

HTTP/2 快速重置详细信息

这种新颖的攻击利用了一个编号为 CVE-2023-44487 的零日漏洞,该漏洞利用了 HTTP/2 协议中的一个弱点。

简而言之,该攻击方法滥用 HTTP/2 的流取消功能,不断发送和取消请求,压垮目标服务器/应用程序并施加 DoS 状态。

HTTP/2 以参数形式提供保护,限制并发活动流的数量以防止 DoS 攻击;然而,这并不总是有效。

协议开发人员引入了一种更有效的措施,称为“请求取消”,它不会破坏整个连接,但可能会被滥用。

自 8 月底以来,恶意行为者一直在滥用此功能,在服务器上发送一系列 HTTP/2 请求和重置(RST_Stream 帧),要求服务器处理每个请求并执行快速重置,从而压垮其响应新传入请求的能力。

请求流图

谷歌在有关该问题的帖子中解释说:该协议不要求客户端和服务器以任何方式协调取消,客户端可以单方面这样做。

客户端还可以假设,当服务器收到 RST_STREAM 帧时,在处理来自该 TCP 连接的任何其他数据之前,取消将立即生效。

HTTP/2 快速重置逻辑概述

提供商制定缓解措施

Cloudflare 解释说,HTTP/2 代理或负载均衡器特别容易受到快速发送的长字符串重置请求的影响。

该公司的网络在 TLS 代理与其上游对应部分之间的位置不堪重负,因此损坏是在不良请求到达阻止点之前造成的。

就实际影响而言,这些攻击导致 Cloudflare 客户端中的 502 错误报告增加。

Cloudflare 表示,它最终使用了一个旨在处理超容量攻击的系统(称为“IP Jail”)来缓解这些攻击,该互联网公司将该系统扩展到覆盖其整个基础设施。

该系统会“监禁”违规 IP,并在一段时间内禁止它们在任何 Cloudflare 域中使用 HTTP/2,同时影响共享被监禁 IP 的合法用户,但性能会略有下降。

亚马逊表示, 它缓解了数十起此类攻击,但没有提供有关其影响的任何详细信息,并强调其客户服务的可用性得到了维持。

这三家公司都得出结论,客户应对 HTTP/2 快速重置攻击的最佳方法是使用所有可用的 HTTP 洪水防护工具,并通过多方面的缓解措施增强其 DDoS 抵御能力。

不幸的是,由于这种策略滥用了 HTTP/2 协议,因此没有通用的修复方法可以完全阻止攻击者使用这种 DDoS 技术。

相反,在软件中使用该协议的软件开发人员正在实施速率控制,以减轻 HTTP/2 快速重置攻击。

Cloudflare 在另一篇文章中解释说,他们必须将零日秘密保密一个多月,以便安全供应商和利益相关者有时间对威胁做出反应,然后再让更多威胁行为者知道,“猫鼠”游戏开始。

直到现在,一直对信息进行限制,以便让尽可能多的安全供应商有机会做出反应。 

然而,在某些时候,负责任的事情变成了公开披露这样的零日威胁。现在就是那一天。

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

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

相关文章

PHP 自习室空位查询系统mysql数据库web结构apache计算机软件工程网页wamp计算机毕业设计

一、源码特点 PHP 自习室空位查询系统是一套完善的web设计系统,对理解php编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 php 自习室空位查询系统1 代码 https://download.csdn.net/download/qq_41221322/…

聊聊身边的嵌入式:点菜机用着好好的,突然挂了,这口锅应该甩给谁?

周末被老婆challenge了。之所以用这个英文词汇,是因为实在难以找出一个恰当的中文,来表达这个意思。挑战?盘问,质疑?臭骂?好像都不对劲儿。对了,想来想去,只有diao这个词有点儿接近&…

小视频APP源码实战:探寻成功案例与经验分享

在这个数字化时代,小视频APP源码已经成为创业者们追逐成功的热门选择。本文将揭示三个成功案例,为您带来宝贵的经验分享。 案例一:「绝绝子」,小视频APP带来的逆袭奇迹 小视频APP「绝绝子」的成功故事令人瞩目。通过精心策划的内…

[网鼎杯 2018]Comment git泄露 / 恢复 二次注入 .DS_Store bash_history文件查看

首先我们看到账号密码有提示了 我们bp爆破一下 我首先对数字爆破 因为全字符的话太多了 爆出来了哦 所以账号密码也出来了 zhangwei zhangwei666 没有什么用啊 扫一下吧 有git git泄露 那泄露看看 真有 <?php include "mysql.php"; session_start(); if(…

TWDS车辆轮对故障、尺寸动态检测系统

随着我国铁路的建设发展&#xff0c;客运专线网络形成&#xff0c;既有铁路的货运能力得到释放&#xff0c;货物运输向重载方向发展&#xff0c;运输组织呈现长交路、运转周期短、编组固定的特点。 跟踪调查表明重载车辆车轮磨耗较普通车辆更为严重。大秦线c80型车辆在不到1个…

vue3+ts项目02-安装eslint、prettier和sass

创建项目 项目创建 安装eslint yarn add eslint -D生成配置文件 npx eslint --init安装其他插件 yarn add -D eslint-plugin-import eslint-plugin-vue eslint-plugin-node eslint-plugin-prettier eslint-config-prettier eslint-plugin-node babel/eslint-parser vue-e…

前端好文+插件分享(持续更新中...)

CSS 「滚动绽放」实现页面滚动时逐渐展示/隐藏元素https://github.com/vnyoon/web-magic &#xff08;相关CSS动画特效实现&#xff09; 钉钉官网首页的炫酷动效” 被我用css新特性轻松破解啦&#xff5e; 软件开发 1 模型驱动是什么意思&#xff1f;底层原理是什么&#xf…

Linux发布Java项目,使用screen窗口

代码写完正常的打包 登录Linux&#xff0c;使用screen -ls命令查看现有的窗口 将之前的jar备份一个cp 原jar包名 备份后jar包名&#xff0c;再将jar包复制到对应的路径下 使用screen -r -d 窗口名 命令进入到之前启动jar包的窗口&#xff0c;停掉之前的窗口&#xff0c;直接…

无法打开文件“opengl32.lib”

无法打开文件“opengl32.lib” [TOC](无法打开文件“opengl32.lib”) 前言一、找到库链接配置勾选继承input里也要勾选继承 前言 随便找个教程配置结果报错无法打开文件opengl32.lib 分析原因&#xff1a; opengl库和windows自带库一样出问题应该是VS配置有问题 提示&#xff…

前端JavaScript入门到精通,javascript核心进阶ES6语法、API、js高级等基础知识和实战 —— JS进阶(二)

思维导图 构造函数&数据常用函数 一、深入对象 1.1创建对象三种方式 1.2 构造函数 1.3实例成员&静态成员 二、内置构造函数 为什么简单数据类型也有方法? 基本数据类型包装成复杂数据类型 2.1 Object 2.2 Array reduce() 第二个参数&#xff08;初始值&#xff09;不…

rust cfg的使用

前提是一个crate倒入另一个crate。 先看结构 test_lib目录结构 这与另一个crate处于同一个目录,所以另一crate倒入的时候在Cargo.toml中使用如下语句。 test_lib = {path = "../test_lib" }先在test_lib/src/abc/abc.rs中添加没有cfg的两个函数做测试。 pub fn…

Tabby All configured authentication methods failed

文章目录 重要序言错误原因tabby的连接设置 总结 重要序言 Tabby是一款美观耐用的软件&#xff0c;平常一直用来输入密码方法SSH公司服务器&#xff0c;后来为了另外一台服务器加了SSH私钥&#xff0c;之后Tabby SSH连接死活不成功&#xff0c;哎&#xff0c;折腾了好久&#…

【VS Code】推荐一套我非常喜欢的主题和字体样式

话不多说&#xff0c;先上样式&#xff1a; 这里我的主题是 One Dark Pro&#xff0c;也是 VS Code 里面使用非常多的主题之一。直接安装插件即可使用。 我的字体是 JetBrains Mono&#xff0c;虽然使用的是 VS Code&#xff0c;但还是喜欢 webstorm 的字体。我们可以直接去官网…

随着 ChatGPT 凭借 GPT-4V(ision) 获得关注,多模态 AI 不断发展

原创 | 文 BFT机器人 在不断努力让人工智能更像人类的过程中&#xff0c;OpenAI的GPT模型不断突破界限GPT-4现在能够接受文本和图像的提示。 生成式人工智能中的多模态表示模型根据输入生成文本、图像或音频等各种输出的能力。这些模型经过特定数据的训练&#xff0c;学习底层模…

ssm+vue的车辆出租管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频&#xff1a; ssmvue的车辆出租管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;ssm vue前后端分离项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&…

Android系统修改AOSP输入法默认输入语言

Android系统中的Android键盘(AOSP)有个语言设置选项,里面默认的是“使用系统语言”,现在客户要求关闭默认“使用系统语言”,打开美式英语。即默认如下图: 网上很多方法都是设置输入法的Settings.Secure.SELECTED_INPUT_METHOD_SUBTYPE属性为 -921088104。实际测试在Andr…

go 项目打包部署到服务器

1、window打包到Linux 步骤1 依次执行一下命令&#xff0c;就会得到一个exe 文件 步骤2 把打包的文件&#xff0c;放到服务器上&#xff08;可以使用FinalShell工具&#xff09; chmod x main # 执行这个命令&#xff0c;给main 文件添加 执行权限&#xff0c;然后执行 ls &…

【数据结构】队列(Queue)实现详解

&#x1f6a9;纸上得来终觉浅&#xff0c; 绝知此事要躬行。 &#x1f31f;主页&#xff1a;June-Frost &#x1f680;专栏&#xff1a;数据结构 &#x1f525;该文章主要了解实现队列的相关操作。 目录&#xff1a; &#x1f30d; 队列&#x1f52d;概念&#x1f52d;结构&…

有必要买一台内衣裤专洗机吗?家用小洗衣机推荐

随着内衣洗衣机的流行&#xff0c;很多小伙伴在纠结该不该入手一款内衣洗衣机&#xff0c;专门来洗一些贴身衣物&#xff0c;答案是非常有必要的&#xff0c;因为我们现在市面上的大型洗衣机只能做清洁&#xff0c;无法对我们的贴身衣物进行一个高强度的清洁&#xff0c;而小小…

什么是MTU(Maximum Transmission Unit)?

最大传输单元MTU&#xff08;Maximum Transmission Unit&#xff0c;MTU&#xff09;&#xff0c;是指网络能够传输的最大数据包大小&#xff0c;以字节为单位。MTU的大小决定了发送端一次能够发送报文的最大字节数。如果MTU超过了接收端所能够承受的最大值&#xff0c;或者是超…