天天看點

.CN 根域名被攻擊至癱瘓,誰之過?

2013年8月25日淩晨,.cn域名淩 晨出現大範圍解析故障,經分析.cn的根域授權dns全線故障,導緻大面積.cn域名無法解析。事故造成大量以.cn和.com.cn結尾的域名無法訪 問。直到當日淩晨4點左右,cn根域名伺服器的解析才有部分恢複。此後,經cnnic确認,國家域名解析節點遭受到有史以來規模最大的拒絕服務攻擊,導緻 通路延遲或中斷,部分網站的域名解析受到影響。而距本次事故發生一個月之後,本月24号,cnnic和工信部終于揪出了本次攻擊事件的始作俑者--一名來 自山東青島的黑客。

據調查發現,該黑客本意是要攻擊一個遊戲私服網站,使其癱瘓,後來他為了更快達到這個目的,直接對.cn的根域名服 務器進行了ddos攻擊,發出的攻擊流量堵塞了.cn根伺服器的出口帶寬(據工信部資料:攻擊時峰值流量較平常激增近1000倍,近15g),緻使.cn 根域名伺服器的解析故障,使得大規模的.cn域名無法正常通路。

<a target="_blank"></a>

大家可能會有疑問,看似普通的ddos攻擊其背後究竟隐藏着什麼?一句話:為了利益。本次事故中攻擊者使用的手法(譬如攻擊一些“私服”的網站或主機) 并不罕見,且近些年有愈演愈烈的趨勢。自國内的網際網路事業興起以來,國内有一些常年進行ddos攻擊的組織或個人,脅迫某些“私服”遊戲的營運團隊并收取 “保護費”,如果不合作便采取ddos暴力攻擊,使其無法正常營運。而這些“私服”的營運團隊本身業務就涉及侵權,是以他們在遇到ddos威脅時絕不敢報 警或維權,往往是被迫接受。這種惡性循環的結果就是這些網絡中的惡意脅迫越來越肆無忌憚,這些從事ddos攻擊商業行為的組織或個人也演變成了各式各樣的 “網絡黑幫”,各式黑色産業鍊也層出不窮。由于當今網際網路上ddos攻擊的門檻已經越來越低,雇主可以購買ddos攻擊服務,攻擊可指定時間、指定流量、 指定攻擊效果。總的來說,同行業間的惡意競争是導緻ddos攻擊愈演愈烈的最大原因,同時被攻擊後定位攻擊者所花費的成本較高也是這類事件層出不窮的重要 原因。

一直以來作為網絡基礎設施的dns系統,給我們提供了通路網際網路的便利,使用者隻需記住域名就可以通路到網際網路上的對應主機。當你在浏覽器中輸入一個域名時,dns的解析過程就開始了,一般的dns解析過程如圖1、圖2所示:

.CN 根域名被攻擊至癱瘓,誰之過?

1.png

圖1:dns解析的一般過程(有緩存時)

.CN 根域名被攻擊至癱瘓,誰之過?

2.png

圖2:dns解析的一般過程(無緩存時)

下面來聊一聊現有網際網路上運作的dns系統所可能遭受到的風險。大家應該都了解,根域名伺服器是dns系統中最進階别的域名伺服器,全球一共有13台, 多數分布在美國。首先,dns系統是一個中心化的樹形結構,很容易遭受ddos攻擊,且越靠近中心攻擊效果越為顯著;其次,現有dns系統的疊代查詢方 式,對根域和頂級域解析伺服器依賴非常嚴重;再次,現有網際網路上存在着大量開放式的dns域名伺服器,這些伺服器通常擁有強大的性能和帶寬,利用dns反 射技術的放大效應,可以産生近其帶寬百倍的攻擊流量。是以這些開放式的dns伺服器極其容易成為黑客們青睐的ddos攻擊“殭屍電腦“。這對整個網際網路的基礎 設施都是巨大的安全威脅。

在對現有dns協定的風險評估上,dns協定是很脆弱且不安全的。為什麼說dns協定很脆弱呢?一方面dns 協定是明文協定,協定裡帶的資訊可以很容易的被篡改、僞造,使得dns協定易成為暴露使用者行為的工具;另一方面,若在現有協定傳輸上采用加密手段,現有 dns體系無法承受加密帶來的開銷和技術更新的成本。

正因為dns系統的脆弱性和其協定設計上的缺陷,是以曆史上針對dns的攻擊事件也比較多,影響比較大有2013年針對spamhaus的攻擊事件、2009年5.19斷網、2008年dns緩存投毒,以及2002年全球根域名伺服器被攻擊等等。

從本次.cn根伺服器被ddos攻擊的手法上來看,有兩種可能性,一種可能是黑客使用ddos方法攻擊某個.cn域名,而較大的攻擊流量或海量的查詢請 求卻把該.cn域名上一級根伺服器打挂;第二種可能是黑客直接把ddos攻擊矛頭指向了.cn的根域名伺服器。針對dns系統,常見的ddos攻擊手法 是:

1)傳統ddos攻擊: 流量型(以堵塞網絡帶寬為主要攻擊目的),包括udp洪水攻擊;tcp流量攻擊;資源消耗型(以消耗目标機器可用資源為攻擊目的),包括syn洪水攻擊,ack洪水攻擊,ack反射攻擊,慢速消耗攻擊等;

2)dns特有ddos攻擊:dns反射攻擊(放大效應)、dns查詢攻擊(僵屍主機發起的海量請求)、變域名攻擊:構造随機域名(或畸形域名)的查詢請求,利用僵屍網絡對目标域名或主機進行攻擊(如圖3所示)。

.CN 根域名被攻擊至癱瘓,誰之過?

3.jpg

圖3:dns query洪水攻擊原理

為了最大限度的降低命中dns緩存的可能,一般攻擊者在構造攻擊包時都會随機僞造查詢源ip位址、僞造随機源端口,僞造随機查詢id以及待解析的域名。 從筆者擷取到本次.cn攻擊的資料包來看(見下圖4),攻擊者就是把經過特殊構造的海量的随機域名的查詢請求直接發給了.cn的根伺服器,也就是上文中提 到的變域名攻擊方式。不過,筆者認為其中可能還混合有其他一些諸如udp洪水、dns放大和dns僵屍查詢等ddos攻擊,最終的目的就是讓被攻擊網絡的 鍊路帶寬超出服務的帶寬,讓目标機或叢集處理能力超出極限,進而達到dns解析不能提供正常服務的狀态。

.CN 根域名被攻擊至癱瘓,誰之過?

4.png

圖4:.cn的攻擊資料包(部分)

在筆者看來,本次針對.cn根伺服器的攻擊為我們再一次敲響了網際網路基礎設施安全性的警鐘,建議主管部門加強對基礎設施的保障力度,以避免此類事故重演。

從筆者的日常工作中也能夠發現不同針對dns基礎系統的攻擊手法,譬如今年3月份針對國際公司spamhaus的300g超大流量的ddos攻擊,攻擊 者主要采取的手法就是dns反射攻擊,這種攻擊技術的特點就是利用網際網路上開放的dns遞歸伺服器作為攻擊源,利用“反彈”手法攻擊目标機器。攻擊原理如 圖5所示:

.CN 根域名被攻擊至癱瘓,誰之過?

5.png

圖5:dns反射攻擊的原理

在dns反射攻擊手法中,假設dns請求封包的資料部分長度約為40位元組,而響應封包資料部分的長度可能會達到4000位元組,這意味着利用此手法能夠産 生約100倍的放大效應。是以,對于.cn遇襲事件,攻擊者隻需要控制一個能夠産生150m流量的僵屍網絡就能夠進行如上規模(15g)的ddos攻擊。 據不完全統計,國内外總計有超過250w台開放dns伺服器可以充當這種“殭屍電腦”,開放的dns伺服器簡直是網際網路上無處不在的定時炸彈。

我們dns系統的運維人員在日常部署時要盡量做到dns應用的負載均衡,提升dns伺服器的處理性能,盡量将解析節點分散,能夠做到按不同的idc或城 市實作備援和容災機制,通過這些手段可以有效的減輕大流量ddos攻擊發生時所帶來的危害。但是如上文所言,針對于如此不堪一擊的dns系統,我們未來還 能夠從哪些方面出發去應對一般規模或是超大規模的ddos攻擊呢?筆者認為有如下一些解決方案可以值得嘗試。

第一,在你的主機遭受ddos攻擊時,最簡單的是在本機做政策,譬如iptables等,或是事先将主機kernel加強以應對随時可能出現的風險,但是這種方法不能解決ddos的根本問題,且非常不靈活。

第二,若通過對流量和攻擊封包分析已知ddos攻擊類型,那麼也可以通過配置一些政策來減輕攻擊帶來的危害。譬如對dns反射攻擊的防護,首先若被攻擊 的伺服器并未提供dns業務,那麼可以通過設定通路控制政策直接阻斷所有的dns請求/回應;如果被攻擊的伺服器是dns相關伺服器,那麼最有效的方法是 配置dns伺服器,隻響應合法區域的查詢。不過這種方法需要一定的專業知識,需要運維人員介入,同樣是不靈活的。

第三,提供充足的帶寬 和性能很強的dns伺服器,也就是俗稱的“堆機器,拼資源”,不過這種方法也如同飲鸩止渴,期望“魔高一尺,道高一丈”是不太現實的。不過建議管理人員還 是需要對dns伺服器的上聯鍊路的負載情況及時做好監控,避免因鍊路擁塞導緻丢包的情況出現,同時還是需要在實體帶寬上投入一定的資源以防止上聯鍊路擁 塞。

第四,在網際網路的核心路由入口側部署專業的ddos流量檢測裝置和ddos流量清洗裝置,通過ddos檢測裝置與清洗裝置之間進行 的政策關聯,及時對惡意的攻擊行為進行發現、清洗、阻斷,這也是當下較為為業界所認可的防護方案。通過dns協定的自身特點,依托intel、 tilera和cavium等高效的硬體平台,開發專門針對ddos流量清洗的系統。這裡可以建構專用的dns防護算法,如dns query flood防護算法、dns反射攻擊防護等,用于從根本上過濾掉攻擊流量。

但對于大量的中小網站、企業而言,花費重金購買防護資源是不 現實的,不過現在随着網際網路雲技術的發展,很多大型網際網路公司都提供了雲主機服務,如騰訊雲,阿裡雲等,并且免費提供專業的ddos檢測、清洗防護功能, 如果廣大業務營運者擔心自己的業務或主機會遭受到ddos攻擊,選擇現有的雲服務也不失為一種有效的解決方案。

除了上述提到的幾種解決 方案,還有一些業界比較成熟的方案值得我們借鑒。比如cloudflare公司采用的anycast技術,該技術基于ip路由原理實作了自動流量負載均 衡,在發生ddos攻擊時,這種技術能夠有效的将攻擊流量分流到不同區域的防護節點,進行流量清洗。該方案已經成功的在使用者環境中部署。

最後,随着網絡上ddos攻擊規模的不斷擴大,ddos工具的自動化,資源充足和帶寬充裕,黑客發起ddos攻擊成本越來越低,而針對ddos的攻防對 抗,又是一個博弈對抗的過程。在非技術層面上,事先需要制定好應急預案和應對措施,如業務的自身調整、與營運商的溝通和應急措施同步。當ddos攻擊發生 時,需要多個部門間快速的響應,實施應急方案和及時同步處理結果。同時,建議從立法上,對這類攻擊進行嚴懲,提升攻擊違法的成本。

 原文釋出時間為:2013-10-07

本文來自雲栖社群合作夥伴“linux中國”

繼續閱讀