一周海外安全事件回顧(2014.05.19-2014.05.25)
本期回顧,我們只聊一個(gè)事情——UDP反射攻擊。這個(gè)事情在上周被Akamai/Prolexic炒了一把,說黑客盯上SNMP協(xié)議了,用來發(fā)起UDP反射攻擊。借此扯點(diǎn)閑篇,還是蠻有意思的。
SNMP及其UDP反射放大的兄弟們
UDP Flood應(yīng)該是一種比較討厭的DDoS攻擊,現(xiàn)在來說,比較可行的防護(hù)手段不是太多,恐怕限流是最常見的防護(hù)方式了。UDP Flood比較難以防護(hù)的主要原因是UDP自身的通信方式?jīng)Q定的,不維持狀態(tài)使得類似cooikie、驗(yàn)證碼等反向探測(cè)手段難以實(shí)施。
去年曾經(jīng)發(fā)生過300G DDoS的攻擊事件。當(dāng)時(shí)被打的目標(biāo)是Spamhaus,而提供防護(hù)的CloudFlare也一起“屁滾尿流”,最終在全球多個(gè)Tier-1一級(jí)運(yùn)營商的一起努力下才最終化解。打出300G DDoS的就是依靠DNS反射放大攻擊,基于UDP。經(jīng)過DNS解析服務(wù)器放大后,反射出來的數(shù)據(jù)包被放大了很多倍。據(jù)稱,當(dāng)時(shí)的300G流量是由近31000臺(tái)DNS服務(wù)器打出來的。下圖是發(fā)起300G DDoS攻擊的最大嫌疑犯CyberBunker公司的老板,他后來被捕入獄。
其實(shí)Just so so了,和最近一起據(jù)稱近400G的DDoS攻擊相比,差遠(yuǎn)了。400G的DDoS是通過NTP服務(wù)器進(jìn)行的反射放大。沒錯(cuò),也是基于UDP的Flood,也是經(jīng)過反射放大,最終達(dá)到近400G的天量。和31000臺(tái)DNS服務(wù)器相比,推到400G的攻擊流量只用到了約4500臺(tái)NTP服務(wù)器。
4500臺(tái)NTP服務(wù)器 =400G UDP Flood是什么概念? 我們計(jì)算一下,一個(gè)NTP request經(jīng)過MONLIST放大后,差不多反射出來的流量是request數(shù)據(jù)包的206倍。也就是說,1G的NTP request就可以反射200G的攻擊流量。顯然比DNS效率高多了。
下圖是參與400G攻擊的NTP服務(wù)器所在運(yùn)營商的列表:
注:上圖筆者給一些運(yùn)營商打了碼,為什么打碼,自己去猜。
在上周,Akamai/Prolexic又開始炒SNMP Flood。哦,yes,SNMP為什么不可能呢?都是UDP Flood的兄弟嘛。讓人稍感欣慰的是,SNMP Flood不象DNS和NTP反射威脅那么嚴(yán)重,還好還好。
下圖是國外某廠商捕獲的SNMP實(shí)際攻擊數(shù)據(jù)。
上圖是某系統(tǒng)遭到真實(shí)SNMP Flood攻擊的實(shí)際數(shù)據(jù)。為了安全,實(shí)際的IP地址以192.0.2.1來替代。
我們可以看出,117.27.239.158是倒霉蛋,也就是被反的對(duì)象。如果getBulkRequest的數(shù)據(jù)包以87字節(jié)來計(jì)算,設(shè)備反射的SNMP response約為60kB,放大了多少大家自己可以計(jì)算一下。
眾所周知,getBulkRequest是SNMP v2版本新增的。因此,普遍認(rèn)為SNMP 反射放大攻擊是基于SNMP v2的。SNMP v2存在某些安全隱患,這也是推出SNMP v3的一個(gè)重要原因。
我們翻回頭再來說上面那個(gè)“某系統(tǒng)”是什么系統(tǒng)。這個(gè)系統(tǒng)是IOT系統(tǒng),也就是物聯(lián)網(wǎng)系統(tǒng)。具體來說,是一個(gè)視頻會(huì)議系統(tǒng)。該會(huì)議系統(tǒng)是開放的(widely open)。資料沒有查到,個(gè)人猜測(cè),可能是這個(gè)系統(tǒng)沒有對(duì)SNMP訪問的IP進(jìn)行限制,才導(dǎo)致被利用發(fā)起發(fā)射的結(jié)果。
這是一個(gè)非常有趣的事情。一個(gè)物聯(lián)網(wǎng)系統(tǒng)被別人利用發(fā)起DDoS攻擊,更為有趣的是,這個(gè)被利用的物聯(lián)網(wǎng)系統(tǒng)根本就沒有必要開放SNMP服務(wù)。
俗話說,no zuo no die,放在這里再合適不過。當(dāng)然,最終倒霉的是117.27.239.158。話說回來,IOT系統(tǒng)被利用打DDoS,肯定不是這個(gè)系統(tǒng)設(shè)計(jì)的初衷。資源浪費(fèi),弄不好還會(huì)被溯源投訴。
最后,送上一點(diǎn)福利:反射攻擊的歷史。下面的內(nèi)容從網(wǎng)上采集,供大家參考,可能拿來給客戶講故事。但是是否準(zhǔn)確,不能保證:
- SYN/ACK floods始于90年代中期。
- Smurf attack出現(xiàn)于90年底。之后隨著路由器將“no ip unreachables”作為缺省配置而消失。
- DNS 反射/放大攻擊始于2000或2001年,2004年底,2005年出開始流行。
- SNMP 反射/放大攻擊在2006 - 2007出現(xiàn)。
- NTP反射/放大攻擊在2008 - 2009出現(xiàn)。
- CHARGEN反射/放大攻擊在2009 - 2010出現(xiàn)。同一時(shí)期,TFTP反射/放大攻擊也浮出水面。
總是,都不是新鮮玩意兒。但是,防不住還是防不住。