1月21日,中國發生大規模的網站斷網,涉及數千萬用戶。美國動態網公司發表聲明稱,這是由於中共DNS劫持發生的大規模網站斷網。(AFP/Getty Images)
中共於2002年開始使用DNS劫持技術封鎖網站。動態網絡技術公司(DIT)於2002年10月2日發佈一份報告演示這種技術如何運作。這些年來,我們對於中國如何使用這種DNS劫持技術有了更多的瞭解。2014年1月21日,中國由於DNS劫持發生大規模網站斷網。我們覺得現在是發佈關於這個系統的更多信息的好時候。
甚麼是DNS
DNS是將域名翻譯成IP地址的服務。互聯網上的電腦依靠IP地址找到彼此以互通信息。DNS服務就好像尋號台服務,把人們熟悉的人名翻譯成電話號碼。當用戶使用瀏覽器比如火狐瀏覽器瀏覽網頁時,比如想上大紀元網站http:/ /WWW.epochtimes.com,火狐瀏覽器會與DNS服務器通話,找到大紀元網站WWW.epochtimes.com的IP地址。然後火狐瀏覽器才能上到大紀元網站。
甚麼是DNS劫持
當有DNS劫持發生時,用戶可能會看到錯誤信息,或警告信息,或者上到錯誤的網站。
DNS劫持的過程是這樣的:一台惡意的電腦會監控用戶與DNS服務器之間的對話,然後代表真正的DNS服務器給用戶返回一個錯誤的IP地址。這個過程有點像電影《十一羅漢》中的情節:盜賊控制了賭場的電話系統,當賭場打電話緊急求救時,盜賊接聽了電話,然後派一個盜賊團隊進入了賭場的金庫。
這種攻擊需要攻擊者有能力監控用戶的所有數據流,並需要CPU資源處理這些數據。這種情形在很多針對小公司網絡安全的書籍中都解釋過。但是這種攻擊從未在網絡服務商ISP範圍發生過。ISP的網絡更複雜,沒有一個單一的點可以監控所有的數據流。
在家裏演示DNS劫持
2014年1月21日發生在中國的大規模網站斷網事件大部份已經恢復正常了。但是DNS劫持仍在持續中。我們可以通過被劫持的網站,瞭解一下斷網時的情形。
2002年,DIT列出12個域名被劫持的網站。時至今日,其中7個仍然域名被劫持。這7個網站如下:
WWW.renminbao.com
WWW.bignews.org
WWW.minghui.org
WWW.kanzhongguo.com
WWW.peacehall.com
WWW.epochtimes.com
WWW.tibet.net
如果你可以操作一個位於中國的電腦。在Linux操作系統下,可以打這個指令:
host -t A epochtimes.com.dwlc 8.8.8.1
你會得到一個類似這樣的回答:
epochtimes.com.dwlc has address 203.98.7.65
這個返回的IP地址是錯誤的,原因如下:
1)8.8.8.1 並不是一個DNS服務器。如果你在一台美國的電腦打這個指令,返回的是超時錯誤。
2)epochtimes.com.dwlc 並不是一個有效的域名。DNS服務器應該回答說「找不到」而不是返回一個IP地址。這個回答一定是來自長城防火牆的DNS劫持系統。
在Windows操作系統下做這個測試,可以打這個指令:
nslookup epochtimes.com.dwlc 8.8.8.1
據我們觀察,DNS劫持系統可能會返回過幾個不同的IP地址。這是我們收集到的一些IP地址:
159.106.121.75
203.98.7.65
243.185.187.39
37.61.54.158
46.82.174.68
59.24.3.173
78.16.49.15
8.7.198.45
93.46.8.89
這個列表會慢慢的變化,有時不同的ISP返回不同的IP地址。
以上這個測試暴露了DNS劫持系統的一個漏洞。它會匹配「epochtimes.com」這個字符串。如果找不到「epochtimes.com」,就不會返回假IP地址。如果域名中包括「epochtimes.com」,比如「epochtimes.com.cn」,這個域名也會被劫持。
如果DNS劫持系統的黑名單中有一個空的字符串,所有的域名都會被劫持。這就是2014年1月21日發生的事情。
可以理解,在一個文本文件中,最後加一個空行很難看得出來。
在美國演示DNS劫持
在一台美國的Linux電腦上, 打這個指令:
host -t A epochtimes.com.dwlc 163.com
163.com是中國的一個網站,不是一個DNS服務器。而且,「epochtimes.com.dwlc」這個域名根本不存在。但是,打上面這個指令會收到以下回復:
epochtimes.com.dwlc has address 203.98.7.65
這是因為DNS劫持系統有另外一個缺陷。它不能分辨DNS詢問是進中國還是出中國的。它監控所有進出中國的流量,一旦發現域名與黑名單有匹配,就返回一個錯誤的IP地址。這樣我們就可以在中國以外研究DNS劫持系統。
DNS劫持系統的部署
因為DNS劫持系統所針對的域名都在海外,部署DNS劫持系統最有效的地方是在國際網關,從那裏監控所有進出中國的流量。
根據2013年12月的CNNIC報告,進出中國的流量是3400Gbps,年增長是79.3%。要監控這樣一個迅速增長的流量,DNS劫持系統必須持續升級服務器和加新的CPU。
2014年1月21日,所有的域名都被指向一個自由門的IP地址,只有DNS劫持系統才有充足的資源和地理位置這麼做。沒有黑客有能力部署和控制資源,對3400Gbps的流量進行如此精確操作,來只改變與DNS有關的通信。
21日事件的更多細節
關於這個所有域名都被指向一個IP地址,網上有很多關於這個IP的擁有者的信息。這些混亂的信息是因為IP地址被不同的公司層層轉賣造成的。這個IP地址是DIT用來運行自由門相關服務的。當事件發生時,並沒有網站在這個IP運行。之後,我們試圖在這個IP地址運行網站,但是由於進入中國的數據流被封鎖,網頁在中國看不到。
關於用戶體驗的問題解答
事件結束了,為甚麼很多用戶還是不能正常瀏覽網頁?
這是DNS緩存造成的。中國的DNS服務器儲存了錯誤的結果。在緩存被清之前,用戶還是會被指向錯誤的地址。
我使用Google的海外DNS服務器8.8.8.8。為甚麼也被影響了?
DNS劫持影響所有進出中國的DNS詢問。在中國,你可以在Windows電腦使用這個指令,返回的是錯誤的IP,這不是因為Google的8.8.8.8DNS服務器被黑了。
nslookup epochtimes.com 8.8.8.8
為甚麼 .cn 域名沒有受影響?
因為 .cn 域名在中國國內被解析,這個過程沒有經過位於國際網關的DNS劫持系統。
為甚麼沒有ISP給一個官方的解釋?
中共政府把DNS劫持系統放入每一家ISP的設施裡。中共政府從不承認長城防火牆的存在,更不用說DNS劫持系統了。沒有ISP敢出來確認DNS劫持系統的存在。
【大紀元2014年01月25日訊】(責任編輯:孫芸)
沒有留言:
張貼留言