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

近日,内容分发网络(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放大手法被利用。同时,在许多情况下,中间设备运营方重新配置其设备是不可能的。网络防御者必须改变其过滤和响应数据包的方式。
相关文章:
一种更具破坏力的DDoS放大攻击新模式
近日,内容分发网络(CDN)运营商Akamai表示,一种使网站快速瘫痪的DDoS放大攻击新方法正在被不法分子所利用。这种方法是通过控制数量巨大的中间设备(middlebox,主要是指配置不当的服务器)…...
WordPress 常规设置页面调用媒体中心上传图片插入URL(新版可用)
首先,我们需要在主题或插件文件夹中创建一个 JavaScript 文件(如:media-uploader.js),该文件中包含如下代码。 /*** 媒体中心上传 js **/ jQuery(document).ready(function($){var mediaUploader;$(#upload_image_but…...
Elasticsearch实现检索词自动补全(检索词补全,自动纠错,拼音补全,繁简转换) 包含demo
Elasticsearch实现检索词自动补全 自动补全定义映射字段建立索引测试自动补全 自动纠错查询语句查询结果 拼音补全与繁简转换安装 elasticsearch-analysis-pinyin 插件定义索引与映射建立拼音自动补全索引测试拼音自动补全测试繁简转换自动补全 代码实现demo结构demo获取 自动补…...
LaunchView/启动页 的实现
1. 创建启动画板,LaunchScreen.storyboard 添加组件如图: 2. 项目中设置只支持竖屏,添加启动画板,如图: 3. 创建启动画面动画视图,LaunchView.swift import SwiftUI/// 启动视图 struct LaunchView: View {/// 字符串转换为字符串…...
windows安装npm教程
在安装和使用NPM之前,我们需要先了解一下,NPM 是什么,能干啥? 一、NPM介绍 NPM(Node Package Manager)是一个用于管理和共享JavaScript代码包的工具。它是Node.js生态系统的一部分,广泛用于构…...
网络端口验证
网络端口连通性验证 1、背景2、目标3、环境4、部署4.1、准备工作4.2、安装4.3、场景测试 1、背景 在日常运维过程中经常会遇到以下两种场景: 1、程序业务端口的开具及验证 2、业务程序访问异常网络排障 2、目标 1、验证端口的正确开具 2、网络策略的连通性 3、环…...
MongoDB 索引和常用命令
一、基本常用命令 1.1 案例需求 存放文章评论的数据存放到 MongoDB 中,数据结构参考如下,其中数据库为 articledb, 专栏文章评论 comment 字段名称 字段含义 字段类型 备注 _id ID ObjectId或String Mongo的主键的字段 articlei…...
【超详细】win10安装docker
win10安装docker 因为要在win10复现一个CVE漏洞,需要用到docker所以特地自己亲自安装了一下,其实在win10上安装docker与在Linux上面的原理一致,都是将docker安装在虚拟机里,不同的是win10是安装在Hyper-V虚拟机上的,需…...
JVM调优(一)
什么时候会有内存泄漏,怎么排查? 答: 首先内存泄漏是堆中的一些对象不会再被使用了,但是无法被垃圾收集器回收,如果不进行处理,最终会导致抛出 java.lang.OutOfMemoryError 异常。 内存泄露: …...
Parallels Desktop 19中文-- PD19最新安装
Parallels Desktop 19可以让我们在Mac电脑上运行Windows和其他操作系统,而无需重启计算机。这款软件的稳定性较高,能够在Mac上同时运行多个操作系统,如Windows、Linux等,而无需重启电脑。它可以让用户无缝地在不同操作系统之间切换…...
【c++】向webrtc学比较1:AheadOf、IsNewerTimestamp
webrtc源码分析-rtp序列号新旧比较 大神文章分析的非常到位。大神分析:AheadOrAt(a, b)是判断a是否比b新的核心,其原理是这样的:rfc1982规定了序列号递增间隔不能超过取值范围的1/2(这是自己理解的),那么要判断a是否比b新,只要判断b到a的递增是否在1/2即可,递增超过1/2,…...
华为云云耀云服务器L实例评测|企业项目最佳实践之docker部署及应用(七)
华为云云耀云服务器L实例评测|企业项目最佳实践系列: 华为云云耀云服务器L实例评测|企业项目最佳实践之云服务器介绍(一) 华为云云耀云服务器L实例评测|企业项目最佳实践之华为云介绍(二) 华为云云耀云服务器L实例评测࿵…...
MAC上使用Wireshark常见问题
文章目录 介绍正文启动异常-Permission denied解决方法 过滤协议和地址指定源地址和目的地址调整 time format 介绍 简单记录Wireshark在日常使用过程中的遇到的小case。 正文 Wireshark相较于tcpdump使用较为简单,交互也更为友好。 点击Start即可启动抓包 启动…...
在C++中++a和a++有什么区别?
2023年10月16日,周一中午 a和a在语义上的区别 a是先进行运算(增加1),然后返回新值。 a是先返回原值,然后进行运算(增加1)。 a和a在效率上的区别 a直接返回新值,不需要临时变量保存原值。 而a需要先返回原值,然后再进行增加1的操作。这需要使用一个临时变量来保存…...
NewStarCTF2023公开赛道-压缩包们
题目提示是压缩包 用010editor打开,不见PK头,补上50 4B 03 04 14 00 00 00 将文件改成.zip后缀,打开,解压出flag.zip 尝试解压,报错 发现一串base64编码 SSBsaWtlIHNpeC1kaWdpdCBudW1iZXJzIGJlY2F1c2UgdGhleSBhcmUgd…...
oracle数据库增加表空间数据文件
查询数据文件:select * from dba_data_files order by file_name; 增加:alter tablespace 数据库名 add datafile data size 34359721984;...
【08】基础知识:React中收集表单数据(非受控组件和受控组件)
一、概念 非受控组件: 页面中所有输入类的 DOM,现用现取。 给组件绑定 ref 属性,在需要时通过 ref 获取相应值。 受控组件: 页面中所有输入类的 DOM,随着输入,将内容维护到状态 state中,当…...
数据结构之堆排序和前,中,后,层序遍历,链式二叉树
首先我们要知道升序我们要建小堆,降序建大堆,这与我们的大多人直觉相违背。 因为我们大多数人认为应该将堆顶的数据输出,但如果这样就会导致堆顶出堆以后,堆结构会被破坏,显然我们不能这样。 所有我们反其道而行&…...
多线程中ThreadPoolExecutor.map()中传递多个参数
with concurrent.futures.ThreadPoolExecutor(max_threads) as executor:results executor.map(get_captcha_image, ip_addrs, [img_url] * len(ip_addrs)) #要传入多个参数时,每个参数都得是固定相同长度的可迭代对象# 收集结果for result in results:print(resul…...
linux centos7 环境下 no such file or directory
目录 1.问题描述2.主要原因2.1修改后代码2.2修改前代码 总结参考 1.问题描述 预览excel文件时无法找到对应的html文件 2.主要原因 异常原因:代码获取的是系统的tmp文件,但是linux环境环境中心tmp目录是没有权限的,所以不能获取系统的根目录…...
XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建
【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...
comfyui 工作流中 图生视频 如何增加视频的长度到5秒
comfyUI 工作流怎么可以生成更长的视频。除了硬件显存要求之外还有别的方法吗? 在ComfyUI中实现图生视频并延长到5秒,需要结合多个扩展和技巧。以下是完整解决方案: 核心工作流配置(24fps下5秒120帧) #mermaid-svg-yP…...
前端高频面试题2:浏览器/计算机网络
本专栏相关链接 前端高频面试题1:HTML/CSS 前端高频面试题2:浏览器/计算机网络 前端高频面试题3:JavaScript 1.什么是强缓存、协商缓存? 强缓存: 当浏览器请求资源时,首先检查本地缓存是否命中。如果命…...
