DRDoS(memcache漏洞导致的反射型分布式拒绝服务攻击)
一、DDoS基礎(chǔ)
見博文:DDoS攻擊與防御
二、Memcached 反射DDOS攻擊原理
反射DDOS是發(fā)送大量帶有被害者IP地址的請(qǐng)求給反射服務(wù)器,反射服務(wù)器對(duì)IP地址源做出大量回應(yīng),形成拒絕服務(wù)攻擊。CLOUDFLARE的這張圖很好的解釋了DDOS反射攻擊過程:
 UDP反射放大攻擊需要滿足的基本條件:
攻擊者,需要能偽造IP,并發(fā)送大量偽造IP的請(qǐng)求給反射服務(wù)器。
反射服務(wù)器,上面需要運(yùn)行著容易放大反射攻擊的服務(wù)。
反射服務(wù)器的響應(yīng)包最好遠(yuǎn)遠(yuǎn)大于請(qǐng)求包。
反射服務(wù)器對(duì)應(yīng)的協(xié)議或服務(wù)在互聯(lián)網(wǎng)上有一定的使用量。
而Memcached提供的基于UDP協(xié)議的服務(wù)正好滿足上訴的UDP反射放大攻擊的各種條件
從協(xié)議看,Memcached支持UDP。
Memcached大部分是作為企業(yè)應(yīng)用的組件,往往具有很高的上傳帶寬。
Memcached不需要認(rèn)證就可以隨意交互。
很多用戶編譯安裝時(shí),錯(cuò)誤的監(jiān)聽了0.0.0.0,且未設(shè)置iptables或云安全組,這使得攻擊者可以自由訪問這些服務(wù),從而進(jìn)行UDP反射攻擊。
本次事件中,攻擊者發(fā)送大量帶有被害者IP地址的UDP數(shù)據(jù)包給Memcached服務(wù)器,Memcached服務(wù)器對(duì)偽造的IP地址源做出大量回應(yīng)(Memcached系統(tǒng)支持最大鍵值單數(shù)據(jù)對(duì)1M存儲(chǔ)),形成分布式拒絕服務(wù)攻擊。
本次攻擊的特點(diǎn):
memcache放大倍數(shù)高,最高可以達(dá)到51000倍左右。
可被利用的memcache服務(wù)器(反射服務(wù)器)數(shù)量很多,而且這些服務(wù)器網(wǎng)絡(luò)擁有較高的帶寬資源。
下面這張us-cert的表詳細(xì)的給出了各類反射攻擊的放大倍數(shù):
僅從放大倍數(shù)看,memcached 反射DDOS危害要高于其他類型的反射DDOS。
Memcached DRDOS攻擊流程
收集反射器,掃描端口和服務(wù),獲取不需要認(rèn)證的Memcache。
上傳指定數(shù)據(jù)到遠(yuǎn)程服務(wù)器Memcached上。
攻擊者將自身IP偽造成攻擊的目標(biāo)IP地址,向Memcached反射服務(wù)器發(fā)送請(qǐng)求讀取在Memcached中存儲(chǔ)的數(shù)據(jù)。
Memcached在收到請(qǐng)求后,向偽造的IP回復(fù)放大了幾萬倍的數(shù)據(jù)包,造成反射DDOS攻擊。
3、Memcached反射DDOS防御
3.1 Memcached攻擊流量清洗
運(yùn)營(yíng)商處在邊界配置UDP訪問控制規(guī)則和BGP FlowSpec策略,將源端口為11211的流量進(jìn)行阻斷或限速。
不具備路由權(quán)限的企業(yè)客客戶,可以在抗DDOS設(shè)備上配置防護(hù)策略,同樣可以對(duì)端口為11211的UDP流量進(jìn)行阻斷和限速。
3.2 Memcached系統(tǒng)防護(hù)加固
默認(rèn)情況下Memcached沒有配置任何認(rèn)證鑒權(quán)措施,對(duì)所有網(wǎng)絡(luò)可達(dá)的客戶端可訪問。為了避免Memcached系統(tǒng)被攻擊者利用,各開發(fā)者和memcache管理者,需要對(duì)Memcached服務(wù)進(jìn)行安全檢查,進(jìn)行一些加固。
3.2.1 配置監(jiān)聽地址僅限本地回環(huán)地址
在 memcached的配置文件,或者啟動(dòng)參數(shù)中,使用”-l 127.0.0.1”指定監(jiān)聽的 ip 地址。
 
3.2.2 配置防火墻 ACL 策略
使用 iptables 等手段控制 memcached 的端口ACL策略,示例如下:
僅限來自指定 IP 段的訪問
iptables -t filter -A INPUT -p tcp -s 192.168.1.0/24 --dport 11211 -j ACCEPT屏蔽任何其他 IP 對(duì) Memcached 端口的訪問
iptables -t filter -A INPUT -p tcp --dport 11211 -j DROPMemcached 1.4.3 及之后的版本,如果編譯時(shí)開啟了 –enable-sasl,則可以使用 sasl 配置認(rèn)證。
安裝
yum install cyrus-sasl設(shè)置用于 Memcached 的 SASL 用戶名密碼,運(yùn)行以下命令,指定需要的用戶名,然后輸入兩次密碼即可:
saslpasswd2 -a memcached -c [customized username]3.3 追溯處置措施
這種反射DDOS攻擊源追蹤難點(diǎn)在于準(zhǔn)確定位,在被攻擊端,看到的IP都是真實(shí)的IP,都是被利用的反射放大節(jié)點(diǎn)服務(wù)器。和直接攻擊不一樣,因?yàn)橛蟹瓷涞囊蛩?#xff0c;這時(shí)候看到的真實(shí)攻擊IP不是真正的發(fā)起原始流量的IP。下面結(jié)合以往追溯DDOS攻擊的經(jīng)驗(yàn)給出幾點(diǎn)建議:
反射源上找線索
 通過memcached蜜罐監(jiān)測(cè),看初期的信息采集階段(比如找可用度反射放大源)很可能用的就是自己的IP,各種小動(dòng)作會(huì)露出馬腳,再多個(gè)維度關(guān)聯(lián),有時(shí)也能找出攻擊者。
失陷主機(jī)上找線索
 在一次大流量過后,訪問量高的IP都可以列為可疑目標(biāo),重點(diǎn)排查,尤其要注意篩選ICMP數(shù)據(jù)包,一般情況下攻擊者有個(gè)習(xí)慣:就是在攻擊的過程中和攻擊結(jié)束都會(huì)用本機(jī)ping目標(biāo)服務(wù)器,查看目標(biāo)的存活性。如果運(yùn)氣好,能找出攻擊者。
運(yùn)營(yíng)商配合定位攻擊者
 通過memcached蜜罐的監(jiān)測(cè),根據(jù)以上測(cè)試過程中得出的Memcached DRDOS攻擊的流量特征,和運(yùn)營(yíng)商配合,看哪些子網(wǎng)有非自己段的源IP流量出來,然后再做端的流量監(jiān)測(cè),比如HIDS,即為可以找出可疑IP。
總結(jié)
以上是生活随笔為你收集整理的DRDoS(memcache漏洞导致的反射型分布式拒绝服务攻击)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 忘记电脑启动密码怎么办电脑密码丢失如何打
- 下一篇: 使用Hash碰撞进行DoS攻击
