当前位置: 首页 > news >正文

一种更具破坏力的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,主要是指配置不当的服务器)&#xf…...

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实例评测&#xff5…...

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目录是没有权限的,所以不能获取系统的根目录…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

python/java环境配置

环境变量放一起 python: 1.首先下载Python Python下载地址:Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个,然后自定义,全选 可以把前4个选上 3.环境配置 1)搜高级系统设置 2…...

Docker 运行 Kafka 带 SASL 认证教程

Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

【HTTP三个基础问题】

面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码

目录 一、👨‍🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨‍&#x1f…...

JAVA后端开发——多租户

数据隔离是多租户系统中的核心概念,确保一个租户(在这个系统中可能是一个公司或一个独立的客户)的数据对其他租户是不可见的。在 RuoYi 框架(您当前项目所使用的基础框架)中,这通常是通过在数据表中增加一个…...

深入浅出Diffusion模型:从原理到实践的全方位教程

I. 引言:生成式AI的黎明 – Diffusion模型是什么? 近年来,生成式人工智能(Generative AI)领域取得了爆炸性的进展,模型能够根据简单的文本提示创作出逼真的图像、连贯的文本,乃至更多令人惊叹的…...

【深度学习新浪潮】什么是credit assignment problem?

Credit Assignment Problem(信用分配问题) 是机器学习,尤其是强化学习(RL)中的核心挑战之一,指的是如何将最终的奖励或惩罚准确地分配给导致该结果的各个中间动作或决策。在序列决策任务中,智能体执行一系列动作后获得一个最终奖励,但每个动作对最终结果的贡献程度往往…...