5
昨日(3月1日)凌晨1點15分,知名代碼托管網站 GitHub 遭遇了有史以來最嚴重的DDoS網絡攻擊,峰值流量達到了前所未有的1.35Tbps。消息一出,全世界的程序員立馬炸了鍋,知道我們這里有多少牛人么,連我們都敢黑?!

作為開源代碼庫以及版本控制系統,Github 擁有上百萬的開發者用戶,被坊間稱為程序員的“另類”社交網絡、 全球最大的黑客聚集地。
但即使社區牛人再多,它也未逃DDoS攻擊魔掌,據外媒 bleepingcomputer透露,攻擊者是利用前不久公開的 Memcached 漏洞執行攻擊,能成倍的放大攻擊效果,被稱為DRDoS反射攻擊。
那么,與傳統的DDoS 相比,何為DRDoS反射攻擊?Github 目前情況如何?如再有黑客利用Memcached 漏洞進行攻擊,應該怎么防?
大家都知道,DDoS 攻擊的特點就是利用如潮水般的流量同時涌入網站,不過本次攻擊不同之處在于采用了更厲害的放大技術,目的是能對主機服務器產生更嚴重的影響。
其實,Memcache 本身是一套分布式的高速緩存系統,目前被許多網站使用以提升網站的訪問速度,尤其對于一些大型的、需要頻繁訪問數據庫的網站效果顯著。
其實早有安全團隊在去年年中就針對Memcache 放大的攻擊技術發布了預警。
之所以被稱作放大的DDoS攻擊,是因為攻擊者利用 Memcached 協議,發送大量帶有被害者IP地址的 UDP 數據包給主機,然后放大,主機對偽造的IP地址源做回應,形成分布式拒絕服務攻擊,從而形成DRDoS反射。

對這次事件和相關技術進行了持續監控的360安全團隊0Kee Team李豐沛介紹,之所以Memcached 被黑客盯上,有兩個原因。
一是因為當被用作反射點時,它的放大倍數超高,可超過5萬倍。對比其他常見 DDoS 的反射點,放大比率通常只有 10 到 100 倍之前。
比如,一個203字節的傳入Memcached 請求會導致大約 100 兆字節的響應。
如果說之前傳統的 DDoS攻擊是小米加步槍,這次針對 Memcache 的 DRDoS 攻擊則是飛機加大炮。
二是,Memcached 服務器往往是企業用來做數據服務的,所以服務器的資源好,有比較大的帶寬。如果單臺服務器能打出1Gbps攻擊帶寬的話,只要 1000 臺服務器就能打出 1Tbps 的攻擊帶寬了。而11月份統計的數據線網中受影響的設備可能有 6 萬臺。
其實,為了安全起見,Memcache 應該是不能暴露在互聯網中的。此類服務器沒有認證協議,連接到互聯網中意味著任何人都可以查詢它們。
在此前的研究報告中,360的0Kee 團隊預估 Memcached 服務器可能會被濫用以發起約 2Tbps 的DDoS攻擊,也就是說,這次針對 GitHub 的攻擊也許只用了六七成的功力。
據雷峰網了解,GitHub在得到 Akamai 的幫助后,在不到10分鐘的時間內化解了這次危機。GitHub 也證實,網站上用戶數據的機密性和完整性沒有受到影響。
恩,程序員哥哥們的頭發沒有白掉,代碼還在。

雷峰網了解到,目前在外開放的 Memcache 存儲系統數量級在十萬左右,都可能會受到此類攻擊影響。而且預計會出現更多利用 Memcached 進行 DRDoS 的事件,如果本次攻擊效果被其他DDoS團隊所效仿,將會帶來后果更嚴重的攻擊。
李豐沛告訴雷峰網(公眾號:雷峰網),暴露在互聯網中歸根結底是用戶和他的供應商的選擇,之后建議大家就不要輕易暴露,即使暴露,也應該加上用戶口令認證或者網絡訪問限制等。
以下是他提出的相關建議。
對于 Memcache 使用者,
1.Memcache的用戶建議將服務放置于可信域內,有外網時不要監聽 0.0.0.0,有特殊需求可以設置acl或者添加安全組。
2.為預防機器?掃描和ssrf等攻擊,修改memcache默認監聽端口。
3.升級到最新版本的memcache,并且使用SASL設置密碼來進行權限控制。
對于網絡層防御,
1.多個ISP已經對UDP11211進行限速。
2.打擊攻擊源:互聯網服務提供商應當禁止在網絡上執行IP欺騙。IP欺騙DRDoS的根本原因。具體措施可以參考BCP38。
3.ISP應允許用戶使用 BGP flowspec 限制入站UDP11211的流量,以減輕大型DRDoS攻擊時的擁堵。
要說,這也不是 GitHub 第一次被黑客盯上了。
早在2015年3月26日,它就遭遇了當時也被稱為“史上最大規模的DDoS攻擊”,而且一直持續到了4月7號,算下來有將近兩周的時間。
GitHub指出,攻擊者的目的是逼迫 Github 移除反審查項目Greatfire。
GitHub官方博客發文指出,攻擊者的目的是逼迫 Github 刪除某些特定內容的頁面。根據第三方的研究稱,此次攻擊采用了HTTP劫持,加密連接不受影響。攻擊者的設備設在國際互聯網和國內互聯網的邊界上,用惡意的代碼替代百度的 js 文件,載入惡意代碼后用戶的瀏覽器將會以每2秒一次的頻率,訪問域名https://github.com/greatfire/和https://github.com/cn-nytimes/。
據悉,攻擊者先后使用了四種DDoS技術攻擊GitHub:
第一波是創造性的劫持百度JS文件利用中國海外用戶的瀏覽器每2秒向托管在GitHub上的兩個反審查項目發出請求,這一手段被GitHub用彈出JS警告alert()防住;
第二輪是跨域<img> 攻擊,被GitHub檢查Referer擋住;
第三波是DDoS攻擊GitHub Pages;
第四波是正在進行中的TCP SYN洪水攻擊,利用TCP協議缺陷發送大量偽造的TCP連接請求,讓GitHub耗盡資源
最后,Github的反制措施是用alert(“WARNING: malicious javascript detected on this domain”)替換了原網頁的內容。
消息來源:bleepingcomputer,360 Memcrashed 預警公告
雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知。