千家信息网

如何进行Memcached DRDoS攻击趋势的分析

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,今天就跟大家聊聊有关如何进行Memcached DRDoS攻击趋势的分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、概述基于Memcac
千家信息网最后更新 2025年01月20日如何进行Memcached DRDoS攻击趋势的分析

今天就跟大家聊聊有关如何进行Memcached DRDoS攻击趋势的分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

一、概述

基于Memcached服务的反射攻击,由于其 5万倍的反射比例,从一开始出现就成为DDoS攻击界的"新宠"。 2018年2月28日 , GitHub遭受了1.35T 的Memcached DRDoS攻击。目前基于安全专家以及相关机构的努力,可利用的反射源已经逐步减少。攻击者也逐步更新自己的攻击手段躲避审查,下面主要介绍基于Memcached的DDoS攻击趋势以及一些新的Memcached DRDoS的攻击手法。

二、攻击趋势

从2月25号开始,Memcached DRDoS攻击数量逐渐增多,3月初,Memcached DRDoS攻击只占总体攻击的5%,三月中旬以后,逐渐超过10%,现在稳定在10%-20%之间波动,最近一周增长到30%。

三、放大的魔力

5万倍

CF在2月份发布文章称,检测到发送15字节的包,收到750k字节的包。从而计算出反射倍数是51200倍。

CF提出的5万倍仅仅是按响应数据与请求数据的比例计算得到的,但DDoS攻击消耗的是网络带宽资源,所以真实的放大倍数必须考虑数据包的实际网络数据流长度。

在IEEE 802.3注1中,对以太网数据包有明确的规定:

根据802.3规范,一个数据包在网络上传播,占用的长度范围是84~1542。上述发送15字节,实际网络上数据包占有应为84字节,接收1400字节,实际网络上数据包占有应为1466字节。因为一个完整UDP的包,发送到网络中的报文实际长度会包含协议头,包括14(以太头)+20(IP头)+8(UDP头)+4(FCS)+ 20(帧间隙)= 66字节。

按照CF的检测到的数据重新计算 :

750字节产生的网络流量达到:750*1024/1400*1466 = 804205.7

实际反射倍数则是:804205/84 = 9573.9 倍。

可见计算方法不同,放大倍数差距如此之大,从原来的5万倍变为不到1万倍。但不管怎么样的差距,都不会影响Memcached反射攻击成为DRDoS的TOP 1。

当然事实上,即使如何严谨的计算放大倍数,此类攻击还是有进一步放大的案例。

增大反射倍数

Memcached 的value默认设置的最大长度是1Mbyte。单个get a请求后可实现的反射倍数达到: 1024*1024/1400*1466/84 = 13071.5倍。

虽然直接调大VALUE的值放大倍数还不足2万倍,但通过一些攻击技巧还是能实现反射倍数达到十几万倍。

我们最近捕获到的攻击,就使用了一种技巧实现了这样的放大效果。

上图所述的攻击者在一个请求中,使用了多次查询,通过在一个UDP包中执行多条get指令,Memcached服务器返回大量的多条数据包,由于UDP包本身的长度要占用66字节,通过这样的节省UDP包发送条数的手法,达到比之前单条发送要放大更多倍的效果。

上述攻击实例中,攻击者使用70个Memcached的GET指令拼装到一个UDP包中,发送包总长度844字节(Wireshark没有计算帧间隙和FCS,所以是820+24=844)。

该指令获取的VALUE值的长度达到304800:

实现反射倍数:304800*70/1400*1466/844= 26471.4倍。

理论上这不是最高的放大倍数。

当GET指令的个数增加时,反射比例还会增大,加上优化payload,最终能实现十几万倍的反射效果:

1) 将get VcoOw\r\n 替换为get a\r\n ,在一个UDP包中构造更多的请求指令,考虑MTU 1500,IP头20,UDP头8,Memcache协议头8,则指令个数可达:(1500-20-8-8)/7 = 209.14,安全计算取205个指令。

2) 发送包长: 66+8+7*205=1509字节,

3) 每个value值为1024*1024字节,

则总体反射倍数:1024*1024*205/1400*1466/1509= 149166.2倍!

实际的环境中,反射比例要小的多。一方面,是由于Memcached服务器的性能决定,另一方面UDP存在一定比例的丢包,甚至还有空响应的。

四、放大的意外

在对捕获的攻击数据分析中,有一定比例的返回包只有一个END数据,

这是由于GET 指令的KEY不存在。一个820字节的发送包能产生70个60字节UDP小包。

反射倍数:84*70/844 = 6.97倍。

反射比例超低,但由于路由设备以及服务器对小包处理性能较弱,因而大量的小包也会对网络也会产生较大的影响。

针对部分采样数据的统计,END小包与大包比例如下:

五、反射源分析

对采样的反射源产生的攻击包进行聚类汇总。中国占比最高,美国,俄罗斯紧随其后。

国内分布的状况,杭州的反射源产生的攻击包最多。抑制反射源滥用网络,需要IDC、云平台等积极处理。

抽样分析反射源使用的Memcache版本,1.4.15使用占比最多:

对攻击者使用MemcachedDRDoS的攻击目标进行分析,宿迁地区遭受的攻击最多:

六、攻击手法对比

之前暴出的攻击POC C 版本注2和Python版本注3,其中C版本主要使用了Memcached服务的stats命令(10-20倍)。Python版本使用了Memcached服务的set和get命令

而我们这次捕获到的变种使用了多次指令组合到一个UDP包中发送。

Payload如下:


根据攻击者使用的反射资源,SET设置的key和value参数的相似性进行分类。

攻击者更多采用get XXX 相关的指令实现更大的反射倍数。

团体payload比例
团体1gets Vco0W6%
团体1get Vco0W; get Vco0W; …72%
团体2get djt dht11%
团体3get foo1%
团体4get qtcfg1%
团体5gets a b c d e f… z1%
团体 6stats items3%
团体6stats5%

七、防范

1) 在Memcached服务器或者其上联的网络设备上配置防火墙策略,仅允许授权的业务IP地址访问Memcached服务器,拦截非法的访问。

2) 更改Memcached服务的监听端口为11211之外的其他大端口,避免针对默认端口的恶意利用。

3) 除非特殊必要,不开启Memcached UDP服务,最新版本的Memcached已经默认不开启UDP服务。

4) 升级到最新的Memcached软件版本,配置启用SASL认证等权限控制策略(在编译安装Memcached程序时添加-enable-sasl选项,并且在启动Memcached服务程序时添加-S参数,启用SASL认证机制以提升Memcached的安全性)。

八、结语

UDP协议以其无阻塞、收发快为开发者所喜欢,较TCP更灵活,对一些实时交互的场景更具有优势,相信越来越多的服务会选择UDP协议。而DRDoS攻击正是利用UDP协议这一松散快速响应的特性,一次次的瞄准更大范围的开放服务来实施攻击,让目标防不胜防。

Memcached反射攻击可高达十几万倍的反射能力,不仅对攻击目标造成极大的损害,也会大大增加反射源的负载而影响自有业务运行。黑客无处不在,防御仍需专业,预防则更依赖服务提供者、IDC和云平台等多方面加强安全意识。

看完上述内容,你们对如何进行Memcached DRDoS攻击趋势的分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

攻击 反射 服务 倍数 字节 数据 指令 网络 团体 比例 版本 长度 分析 实际 攻击者 服务器 趋势 安全 小包 更多 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 关于网络安全的小案例分析 服务器为什么要锁车 常见的数据库分类 服务器机箱温度低怎么办 2020年网络安全政策法规 网络安全有哪些方面的应用 服务器磁盘无法卸载 无良奸商合伙黑客攻击服务器 网络安全检查工作怎么弄 电脑软件开发该学习什么课程 数据库怎么检查触发器是否运行 年度数据库 云计算服务器集群包括 建筑行业软件开发公司 杭州 网络技术工作室照片 百度再见网络技术北京有限公司一 闵行区网络技术服务销售方法 华为手机浏览器网络安全证书 社保中心数据库是联网的吗 拉迪尔网络技术有限公司 末日浩劫服务器群组在哪 数据库访问结构博客 山东有实力的浪潮存储服务器零售 网络技术自学简单吗 金融服务企业网络安全 志喜网络技术有限公司 扬州互联网软件开发价钱 嵌入式开发 与软件开发 数据库服务器安全配置 如何做好智慧城市的网络安全建设
0