防止Memcached的DDOS攻击另外一个思路
3月3日,国家互联网应急中心通报了一条消息 关于利用memcached服务器实施反射DDoS攻击的情况通报 通告了 memcached 服务器漏洞被黑客利用的情况,笔者的一台服务器也存在漏洞,因此将漏洞封堵的方法与大家分享一下。
攻击的原理
memcached反射攻击利用了在互联网上暴露的大批量memcached服务器(一种分布式缓存系统)存在的认证和设计缺陷,攻击者通过向memcached服务器IP地址的默认端口11211发送伪造受害者IP地址的特定指令UDP数据包(stats、set/get指令),使memcached服务器向受害者IP地址反射返回比原始数据包大数倍的数据(理论最高可达5万倍,通过持续跟踪观察攻击流量平均放大倍数在100倍左右),从而进行反射攻击。
本来Memcached提供的缓存服务应该只是对内部访问的,因此就设置了所有地址可访问,安全限制上就比较弱,黑客就利用这个特点,专门在互联网上找开放端口的 Memcached...
The web page caching utility was never designed to be internet-accessible and requires no authentication to access. But some administrators - as well as some Linux instances by default - have left TCP or UDP port 11211 open to internet-borne requests.
处置办法
互联网应急中心给出了3条建议:
1、在memcached服务器或者其上联的网络设备上配置防火墙策略,仅允许授权的业务IP地址访问memcached服务器,拦截非法的非法访问。
2、更改memcached服务的监听端口为11211之外的其他大端口,避免针对默认端口的恶意利用。
3、升级到最新的memcached软件版本,配置启用SASL认证等权限控制策略(在编译安装memcached程序时添加-enable-sasl选项,并且在启动memcached服务程序时添加-S参数,启用SASL认证机制以提升memcached的安全性)。
我分析了一下,1 需要单位从整体的网络策略上进行调整,但是系统管理员负责的这部分职责还是要继续落实;2 需要修改端口,势必设计应用端的修改,我觉得算不上是上策;3 需要升级到最新版本,升级后应用是否会有问题还需要测试验证。
经过仔细分析后,发现 memcached 支持一个 -l 参数,允许指定监听的地址,默认是 0.0.0.0 也就是允许所有的地址链接。我们可以通过修改-l参数,绑定本地地址,这样就可以避免被外部攻击了。但是这里有个问题,一般缓存服务器是供前端或其它服务器公共调用的,一般不是本机使用,而且外部使用的设备往往多于1台。在早期的 Memcached 版本(我的环境是1.4.4)中-l参数不支持绑定多个地址。在最新的1.5.6版本中,已经能够支持绑定多个地址,具体形式如下:
$./memcached -l 127.0.0.1:11211,192.168.0.20:11211 -vv -u memcached
这样,就可以避免修改应用,又达到了防治漏洞的目的。
本文为作者原创,如果您觉得本文对您有帮助,请随意打赏,您的支持将鼓励我继续创作。

参考资料:
1、国家互联网应急中心
2、关于利用memcached服务器实施反射DDoS攻击的情况通报
3、CNCERT关于Memcached服务器反射攻击的情况通报 2
防止Memcached的DDOS攻击另外一个思路的更多相关文章
- Linux+DDoS deflate 预防DDoS攻击
使用DDoS脚本防止DDoS攻击 使用DDoS脚本防止DDoS攻击: DDoS概述: 分布式拒绝服务(DDoS:Distributed Denial of Service)攻击,指借助于客户/服务 ...
- 如何防护DDOS攻击策略
DDoS是目前最凶猛.最难防御的网络攻击之一.现实情况是,这个世界级难题还没有完美的.彻底的解决办法,但采取适当的措施以降低攻击带来的影响.减少损失是十分必要的.将DDoS防御作为整体安全策略的重要部 ...
- DDOS 攻击的防范教程--转载自阮一峰的博客
一个多月前,我的个人网站遭受 DDOS 攻击,下线了50多个小时.这篇文章就来谈谈,如何应对这种攻击. 需要说明的是,我对 DDOS 并不精通,从没想过自己会成为攻击目标.攻击发生以后,很多素昧平生的 ...
- DDoS攻击的几种类型
DDoS攻击的几种类型 随着网络攻击的简单化,如今DDoS攻击已经不止出现在大型网站中,就连很多中小型网站甚至是个人网站往往都可能面临着被DDoS攻击的的风险.或许很多站长对DDoS攻击并不是很了 ...
- 抗D十招:十个方法完美解决DDoS攻击防御难题
可以说,DDoS是目前最凶猛.最难防御的网络攻击之一.现实情况是,这个世界级难题还没有完美的.彻底的解决办法,但采取适当的措施以降低攻击带来的影响.减少损失是十分必要的.将DDoS防御作为整体安全策略 ...
- 大数据DDos检测——DDos攻击本质上是时间序列数据,t+1时刻的数据特点和t时刻强相关,因此用HMM或者CRF来做检测是必然! 和一个句子的分词算法CRF没有区别!
DDos攻击本质上是时间序列数据,t+1时刻的数据特点和t时刻强相关,因此用HMM或者CRF来做检测是必然!——和一个句子的分词算法CRF没有区别!注:传统DDos检测直接基于IP数据发送流量来识别, ...
- 小隐隐于野:基于TCP反射DDoS攻击分析
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 作者:腾讯DDoS安全专家.腾讯云游戏安全专家 陈国 0x00 引言 近期,腾讯云防护了一次针对云上某游戏业务的混合DDoS攻击.攻击持续了 ...
- 常见DDoS攻击
导航: 这里将一个案例事项按照流程进行了整合,这样观察起来比较清晰.部分资料来自于Cloudflare 1.DDoS介绍 2.常用DDoS攻击 3.DDoS防护方式以及产品 4.Cloudflare ...
- 华为V-ISA信誉安全体系:对付新型DDoS攻击的利器
华为Anti-DDoS解决方案基于华为颇具传统优势的专业软硬件平台开发,在防护机制中,引入先进的检测机制,提供了业内首创的“V-ISA”信誉安全体系,是业界唯一单机可提供超百G DDoS防御能 ...
随机推荐
- CDM中添加Hive服务时Gateway是什么?
参考这里http://grokbase.com/t/cloudera/scm-users/12aayq5cyh/what-is-gateway-in-cloudera-manager 实际上Gatew ...
- 自主搭建CNN训练时遇到的问题
1.训练太慢 用nimibatch代替fullbatch https://www.cnblogs.com/guoyaohua/p/8724433.html 2.过拟合 最直接的解决过拟合问题的办法是增 ...
- 008.MySQL-Keepalived搭配脚本02
vim /etc/keepalived/check_MySQL.sh #!/bin/sh #isok=$(sed -n '2p' /etc/keepalived/result.txt) isok=$( ...
- 大数据技术之_16_Scala学习_02_变量
第二章 变量2.1 变量是程序的基本组成单位2.2 Scala 变量的介绍2.2.1 概念2.2.2 Scala 变量使用的基本步骤2.3 Scala 变量的基本使用2.4 Scala 变量使用说明2 ...
- JAVA-Exception&Error
JAVA--Exception&Error 在万物皆对象的JAVA中,先让我们看看Exception和Error的地位吧:
- ubuntu18.04初始化配置
目录 ubuntu18.04初始化配置 ifconfig sshd smb other vim 配置 最后 ubuntu18.04初始化配置 虚拟机挂了, 又得重新安装配置一遍, 这里记录了我几乎每次 ...
- 【教程】Tomcat 的catalina.out 日志按照自定义日期格式进行切割
本文简单介绍在使用cronolog对tomcat的日志进行自定义日期格式的切割,方便日志的整理和遇到问题日志的排查! 安装cronolog 安装cronolog的方法网上有很多,这里也简单的介绍一下. ...
- JavaScript中的Map、Set及其遍历
Map Map是一组键值对的结构,具有极快的查找速度. Map的定义. //空map设值key-value var m = new Map(); m.set("XiaoMing", ...
- poj 3071 概率dp
转自:cxlove 题目:有2^n个队,相邻的两两打淘汰赛,,求最后哪个队夺冠的概率最大 dp[i][j]表示第i轮的时候,第j去支队伍赢的概率. 那么dp[i][j]的前提就是i-1轮的时候,j是赢 ...
- KVM源代码阅读--内核版本3.17.4
为了更加深入的学习虚拟化,因此我必须把KVM源代码搞清楚,这是一个必须要挖的坑.我会把自己的一些阅读的代码贴上来,可能会有理解不对的地方,希望和大家一起交流,请多提意见,以便于纠正错误.所用的内核版本 ...