揭秘百度網站被伊朗網軍攻擊全過程
2010年1月12日晨7時起,網絡上開始陸續(xù)出現(xiàn)百度出現(xiàn)無法訪問的情況反饋, 12時左右基本恢復正常;18時許百度發(fā)布官方版本公告;對事故原因說明為:“因www.baidu.com的域名在美國域名注冊商處被非法篡改,導致全球多處用戶不能正常訪問百度?!?
事件概述· 發(fā)生時間
2010年1月12日晨7時起,網絡上開始陸續(xù)出現(xiàn)百度出現(xiàn)無法訪問的情況反饋, 12時左右基本恢復正常;18時許百度發(fā)布官方版本公告;對事故原因說明為:“因www.baidu.com的域名在美國域名注冊商處被非法篡改,導致全球多處用戶不能正常訪問百度?!?/P>
· 相關現(xiàn)象
(1)在整個事件期間百度頂級域名baidu.com即旗下全部二級域名訪問都出現(xiàn)異常,在較長的時間全部被解析到位于荷蘭的IP地址188.95.49.6。但通過IP入口(如http://202.108.22.5/),其他頂級域下的域名入口如baidu.hk等可以正常訪問。
在訪問百度過程中先后出現(xiàn)過不同現(xiàn)象:
跳轉至伊朗網軍(IRANIAN CYBER ARMY)頁面;
跳轉至雅虎錯誤頁面;
不能正常訪問等。
跳轉到雅虎錯誤頁面:
(2)在此期間查詢baidu whois信息可以發(fā)現(xiàn)異常,并有被不止一次修改的跡象。
· 事件的初步定性
安天CERT在今早九時對事件作出定性,此事件為通過whois信息篡改實施的DNS劫持類攻擊,并將有關初始分析報告和結論向關聯(lián)CERT機構進行了提交。
#p#
DNS原理及域名的管理· 什么是DNS
網絡節(jié)點能夠被尋址訪問的原因,是由于網絡節(jié)點擁有一個獨立身份證,這是由網卡物理地址、IP地址和網絡端口組成的一個地址體系。對于以TCP/IP為基礎協(xié)議的Internet來說,必須找到訪問對象的IP地址,才能進行訪問,但由于IP地址難于記憶,也不夠靈活,Internet規(guī)則的制定者發(fā)明了一套域名體系與其對應,這就是DNS(域名解析服務)的基礎體系。這時用戶無需記憶大量的IP地址數(shù)字(如202.108.22.5),而能通過域名訪問豐富多彩的互聯(lián)網內容(如www.baidu.com),這給用戶帶來了極大的方便,但也產生了相關的安全隱患。
· 國際域名的業(yè)務體系
域名體系管理是由ICANN組織進行的,其下有多家頂級域名注冊商,而注冊商下又可能有多級代理商。
· DNS解析的基本原理
DNS服務的工作原理:
上圖是用戶訪問一個域名后,通過本地DNS服務器發(fā)出遞歸查詢請求的流程圖,然而大多數(shù)DNS服務器都是可以處理遞歸查詢,通過詢問其他服務器和提供響應給發(fā)出請求的用戶,進而利用遞歸式DNS來為客戶端提供域名解析的答案。以下為它的執(zhí)行流程:
- 一個用戶在瀏覽器中輸入www.antiy.com。首先計算機詢問它的本地DNS服務器,以確定www.antiy.com的IP地址。
- 本地的DNS服務器首先在它的本地表(或緩存)中進行查找“www.antiy.com”,如果找到那么將其返回客戶端,如果沒有發(fā)現(xiàn),那么DNS服務器發(fā)送一個查詢給根服務器,來查詢“www.antiy.com”的IP地址。
- 根服務器收到信息后會回應“www.antiy.com”頂級域(TLD)服務器的地址。
- 然后由本地的DNS服務器聯(lián)系頂級域名(TLD)服務器來確定“www.antiy.com”的IP地址。
- 頂級域(TLD)服務器會回應針對“www.antiy.com”的名稱的服務器地址。
- 本地DNS服務器聯(lián)系得到的“www.antiy.com”的名稱服務器來確定它的IP地址。
- 本地DNS服務器發(fā)送這個響應給最初的用戶:www.antiy.com=222.171.15.743.DNS相關的安全威脅和案例· 利用DNS服務器進行DDOS攻擊
正常的DNS服務器遞歸詢問過程可能被利用成DDOS攻擊的。假設攻擊者已知被攻擊機器的IP地址,然后攻擊者使用該地址作為發(fā)送解析命令的源地址。這樣當使用DNS服務器遞歸查詢后,DNS服務器響應給最初用戶,而這個用戶正是被攻擊者。那么如果攻擊者控制了足夠多的肉雞,反復的進行如上操作,那么被攻擊者就會受到來自于DNS服務器的響應信息DDOS攻擊。下圖為攻擊原理:
- 攻擊者發(fā)送控制信號給肉雞群機器。
- 肉雞群機器針對這個遞歸DNS不斷的執(zhí)行這條記錄的查詢。
- 本地的DNS服務器首先在它的本地表(或緩存)中進行查找“www.antiy.com”,如果找到將其返回客戶端,如果沒有發(fā)現(xiàn),那么DNS服務器發(fā)送一個查詢給根服務器,來查詢“www.antiy.com”的IP地址。
- 根服務器收到訊息(信息)后會回應“www.antiy.com”頂級域(TLD)服務器的地址。
- 然后由本地的DNS服務器聯(lián)系頂級域名(TLD)服務器來確定“www.antiy.com”的IP地址。
- 頂級域(TLD)服務器會回應針對“www.antiy.com”的名稱的服務器地址。
- 本地DNS服務器聯(lián)系得到的“www.antiy.com”的名稱服務器來確定它的IP地址。
- 遞歸DNS獲得了某域名的IP地址后,把所有信息都回復給源地址,而此時的源地址就是被攻擊者的IP地址了。
如果攻擊者擁有著足夠多的肉雞群,那么就可以使被攻擊者的網絡被拖垮至發(fā)生中斷。利用DNS服務器攻擊的重要挑戰(zhàn)是,攻擊者由于沒有直接與被攻擊主機進行通訊,隱匿了自己行蹤,讓受害者難以追查原始的攻擊來。相對比較好的解決辦法就是可取消DNS服務器中允許人人查詢網址的遞回(recursive)功能。
· DNS緩存感染
攻擊者使用DNS請求,將數(shù)據(jù)放入一個具有漏洞的的DNS服務器的緩存當中。這些緩存信息會在客戶進行DNS訪問時返回給用戶,從而把用戶客戶對正常域名的訪問引導到入侵者所設置掛馬、釣魚等頁面上,或者通過偽造的郵件和其他的server服務獲取用戶口令信息,導致客戶遭遇進一步的侵害。
· DNS信息劫持
原則上TCP/IP體系通過序列號等多種方式避免仿冒數(shù)據(jù)的插入,但入侵者如果通過監(jiān)聽客戶端和DNS服務器的對話,就可以猜測服務器響應給客戶端的DNS查詢ID。每個DNS報文包括一個相關聯(lián)的16位ID號,DNS服務器根據(jù)這個ID號獲取請求源位置。攻擊者在DNS服務器之前將虛假的響應交給用戶,從而欺騙客戶端去訪問惡意的網站。假設當提交給某個域名服務器的域名解析請求的數(shù)據(jù)包被截獲,然后按截獲者的意圖將一個虛假的IP地址作為應答信息返回給請求者。這時,原始請求者就會把這個虛假的IP地址作為它所要請求的域名而進行連接,顯然它被欺騙到了別處而根本連接不上自己想要連接的那個域名。
· DNS重定向
攻擊者如果將DNS名稱查詢重定向到惡意DNS服務器。那么被劫持域名的解析就完全至于攻擊者的控制之下。
· ARP欺騙
ARP攻擊就是通過偽造IP地址和MAC地址實現(xiàn)ARP欺騙,能夠在網絡中產生大量的ARP通信量使網絡阻塞,攻擊者只要持續(xù)不斷的發(fā)出偽造的ARP響應包就能更改目標主機ARP緩存中的IP-MAC條目,造成網絡中斷或中間人攻擊。ARP攻擊主要是存在于局域網網絡中,局域網中若有一臺計算機感染ARP木馬,則感染該ARP 木馬的系統(tǒng)將會試圖通過“ARP欺騙”手段截獲所在網絡內其它計算機的通信信息,并因此造成網內其它計算機的通信故障。
ARP欺騙通常是在用戶局網中,造成用戶訪問域名的錯誤指向,但在IDC機房被入侵后,則也可能出現(xiàn)攻擊者采用ARP包壓制正常主機、或者壓制DNS服務器,而李代桃僵,以使訪問導向錯誤指向的情況。
· 本機劫持
在計算機系統(tǒng)被木馬或流氓軟件感染后可能會出現(xiàn)部分域名的訪問異常,如訪問掛馬或者釣魚站點、無法訪問等情況,本機劫持有hosts文件篡改、本機DNS劫持、SPI鏈注入、BHO插件等方式,雖然并非都通過DNS環(huán)節(jié)完成,但都會造成無法按照用戶意愿獲得正確的地址或者內容的后果。
#p#
與DNS相關的一些攻擊案例
事件1:百度遇DDOS攻擊事件
2006年09月12日17點30分,有北京、重慶等地的網友反映百度無法正常使用,出現(xiàn)“請求超時”(Request timed out)的信息。這次攻擊造成了百度搜索服務在全國各地出現(xiàn)了近30分鐘的故障。隨后,百度技術部門的員工們快速反應,將問題解決并恢復百度服務。9月12日晚上11時37分,百度空間發(fā)表了針對不明攻擊事件的聲明?!敖裉煜挛纾俣仍馐苡惺芬詠碜畲笠?guī)模的不明身份黑客攻擊,導致百度搜索服務在全國各地出現(xiàn)了近30分鐘的故障?!?
2006年09月22日,新網對外做出證實DNS服務器遭到大規(guī)模黑客攻擊,從21日下午4點多開始持續(xù)到凌晨12點。盡管目前服務已經恢復正常,但是技術人員正在追蹤攻擊來源,并分析攻擊技術手段。新網是國內最大域名服務商之一,黑客持續(xù)8小時的攻擊,導致在新網注冊30%的網站無法正常訪問。其中包括天空軟件、艾瑞視點、中國網庫等知名網站。
事件3:暴風影音事件
2009年5月18日晚上22點左右,DNSPod主站及多個DNS服務器遭受超過10G流量的惡意攻擊。耗盡了整個機房約三分之一的帶寬資源,為了不影響機房其他用戶,最終導致DNS服務器被迫離線。該事件關聯(lián)導致了使用DNSPod進行解析的暴風影音程序頻繁的發(fā)生域名重新申請,產生請求風暴,大量積累的不斷訪問申請導致各地電信網絡負擔成倍增加,網絡出現(xiàn)堵塞。于2009年5月19日晚21時左右開始,江蘇、安徽、廣西、海南、甘肅、浙江六省陸續(xù)出現(xiàn)大規(guī)模網絡故障,很多互聯(lián)網用戶出現(xiàn)訪問互聯(lián)網速度變慢或者無法訪問網站等情況。在零點以前,部分地區(qū)運營商將暴風影音服務器IP加入DNS緩存或者禁止其域名解析,網絡情況陸續(xù)開始恢復。
百度攻擊事件分析百度被攻擊前和攻擊后的相關信息對比如下:
被攻擊前被攻擊后
Domain Name: BAIDU.COM
Registrar: REGISTER.COM, INC.
Whois Server: whois.register.com
Referral URL: http://www.register.com
Updated Date: 03-dec-2008
Creation Date: 11-oct-1999
Expiration Date: 11-oct-2014
Domain Name: BAIDU.COM
Registrar: REGISTER.COM, INC.
Whois Server: whois.register.com
Referral URL: http://www.register.com
Updated Date: 12-jan-2010
Creation Date: 11-oct-1999
Expiration Date: 11-oct-2014
百度攻擊事件前baidu.com最后修改的時間是2008年12月3號,到期日期是2014年8月11號。
百度攻擊事件后修改的時間變?yōu)槭?010年的1月12號。
有關涉及到域名解析的whois信息在此過程中曾被進行多次修改,其中可證實的包括。
Name ServerName Server: YNS1.YAHOO.COM
Name Server: YNS2.YAHOO.COM
Name Server: NS2303.HOSTGATOR.COM
Name Server: NS2304.HOSTGATOR.COM
根據(jù)有關whois信息查詢,百度的域名注冊服務商是register.com,是一家頂級域名注冊機構。
百度Whois 信息如下:
對whois.register.com 與www.register.com 的IP獲取如下:
whois.register.com IP: 216.21.239.106
www.register.com IP: 216.21.239.101
兩臺IP服務器位于同一個網段。
通過有關信息可以對有關網絡傳聞作出如下結論
(1)百度域名到期日為2014年10月14日,可以明確排除百度因域名未續(xù)費導致異常的傳聞。
(2)百度域名異常期間,可以驗證其主站及其他2級域名可以按照如下IP規(guī)則進行訪問并獲得正常搜索結果。
內容
異常域名
可以正常訪問的IP地址
百度首頁
www.baidu.com
http://202.108.22.5
百度新聞
news.baidu.com
http://61.135.163.87
百度貼吧
tieba.baidu.com
http://61.135.163.220
百度知道
zhidao.baidu.com
http://61.135.163.85
百度mp3
mp3.baidu.com
http://61.135.163.89
百度圖片
image.baidu.com
http://61.135.163.93
百度視頻
video.baidu.com
http://61.135.163.91
可以排除百度自身信息系統(tǒng)因遭遇故障導致問題的可能。
(3)可以確認百度域名訪問異常的核心原因是百度域名服務商register.com遭到攻擊 ,導致其whois系統(tǒng)向全球DNS體系提供了錯誤的域名解析服務器導致。但攻擊register.com的具體方法尚難推定。初步分析認為www.register.com有一定安全隱患,不能排除是攻擊者入侵入口,并進一步攻擊了whois.register.com的可能性。盡管whois.register.com采用的是SSL的加密交互方式,但SSL的脆弱性在過去1年內已經被很多公開資料所披露。有關攻擊技巧的組合有可能嚴重威脅傳統(tǒng)的域名注冊機構、以及代理機構的安全。
因此我們通過兩個圖示完整解析域名有關機制和百度受到攻擊的過程。
正常情況下的全球DNS體系、baidu和用戶三者的關系圖示
1、百度公司通過域名注冊機構(本事件中為register.com)成功申請域名,并發(fā)布原始Whois信息。Whois信息中包含了域名解析服務器。
2、有關whois信息通過數(shù)據(jù)庫發(fā)布到全球DNS網絡中,baidu.com頂級域名下所有域名會被指向到百度的DNS體系查詢。
3、百度的DNS體系由DNS.baidu.com、NS2.baidu.com、NS3.baidu.com、NS4.baidu.com互為后備組成。
4、相關DNS體系向全球域名網絡提交有關站點的正確IP信息。
5、用戶訪問時,向自身的DNS服務器查詢baidu.com的IP地址,并走正常的緩存和逐級查詢過程,獲取baidu.com的正確IP,訪問baidu的網絡服務。
1、攻擊者入侵register有關站點。
2、攻擊者修改baidu.com有關whois信息,把baidu.com的域名解析服務修改成自身可控的DNS服務器。
3、有關DNS服務器在收到查詢時發(fā)布錯誤的IP地址,指向攻擊者發(fā)布有關內容的服務器。
4、用戶此時通過域名方式無法訪問正常的百度,之恩只能訪到攻擊者預設的內容,
5、百度此時除了協(xié)調register.com修改自己的whois信息外,沒有其他可以使域名正常訪問的方法。
結論與建議本次事件再度揭示了全球DNS體系的脆弱性,并說明互聯(lián)網廠商如果僅有針對自身信息系統(tǒng)的安全預案,不足以快速應對全面而復雜的威脅。
安天從一個安全研究機構自身的角度回溯:在相關歷史案例中whois信息更多與非法獲取域名所有權的有關糾紛相關,但以此為入口對主流互聯(lián)網廠商進行域名劫持攻擊并不是十分常見,過去安全業(yè)界更多的關注根DNS的安全性以及局部的類似DNS緩存感染類的威脅,而對域名業(yè)務體系的安全性關注不夠。而從現(xiàn)有效果來看,這無疑是具有全局威脅、難以響應防范的一種攻擊,因為攻擊點位于域名所有者可以控范圍之外,而由于DNS體系的特點、DNS管理權利的不均衡、地區(qū)時間差、缺少理性溝通機制等諸多因素,都可能導致國內互聯(lián)網站點在自身信息系統(tǒng)完全正常的情況下遭到“滅頂之災”,而鞭長莫及。
從2000年的YAHOO等大型站點遭遇DoS,隨后帶動TFN2K等攻擊工具和方法泛濫等案例來看,每一次“非典型攻擊”都會成為一個惡性的示范樣板,有關事件必然誘使DNS業(yè)務體系成為未來一階段攻擊的重災區(qū)。
因此我們建議:
(1)針對網站運營者:原則上應為自身站點準備兩套域名,且兩個域名應該通過兩個不同的服務商注冊。
(2)大型網站的應急預案應進一步修正有關處理流程,強化對域名服務商的協(xié)調流程。
(3)域名注冊商和代理機構近期可能成為集中攻擊目標,需要加以防范。
(4)國內有關機構應快速建立與境外有關機構的協(xié)調能力,協(xié)助國內企業(yè)實現(xiàn)對有關事件的快速交涉處理。
【編輯推薦】