家用路由器被劫持的分析與應對
2019年2月20日,DNSPod發布一則通知,稱監控到有大規模的黑產危害事件發生,導致被危害的用戶在訪問所有網絡服務時DNS解析被調度到江蘇電信或周邊線路。
為何會出現如此現象?
是因為用戶使用了病毒的DNS進行解析,病毒DNS再遞歸給114.114.114.114或者其他公共DNS。此時,公共DNS會認為用戶就來自病毒DNS所在的網段。
如果病毒DNS所在電信網絡,那么公共DNS就會優先輸出電信的CDN,這個時候對聯通和移動的用戶來說,就要跨越運營商的結算邊界,去訪問電信的CDN服務器,因此出現了大量的用戶出現跨網訪問,造成運營商之間出現跨網訪問結算和出口擁堵,導致用戶體驗極差。
緊接著,2019年2月22日,國家互聯網應急中心CNCERT發布通報,證實本次黑客危害路由器事件,主要是針對用戶的DNS進行劫持,導致用戶訪問部分網站時被劫持到涉黃涉賭的網站上。
聳人聽聞的DNS劫持
何為DNS劫持,這恐怕還要從DNS的功能說起。
1. DNS功能:
DNS中文全稱為域名系統(英文:DomainNameSystem,縮寫:DNS)是互聯網的一項服務。它作為將域名和IP地址相互映射的一個分布式數據庫,能夠使人更方便地訪問互聯網。DNS使用TCP和UDP端口53。
說的通俗一些,用戶上網時,沒有人去記憶網站服務器的IP地址,一是IP地址太多,二是根本記不住,而且有些網站服務器還要不斷的更新IP地址。那么為了方便大家上網,我們會把網站的域名和該網站服務器的IP地址做關聯,這就是DNS服務器的作用。
當用戶上網時,只需要輸入網址,再由DNS服務器進行查找相應服務器的IP地址,進而訪問互聯網。
說到這,不免讓我們想起生活中的電話簿,通過姓名去查電話號碼與DNS的作用存在異曲同工之妙。
2. DNS劫持:
DNS協議是網絡中最為重要的服務之一,但在黑產盛行的年代,DNS服務也是最容易被黑產利用的工具。
我們在上網過程中都有遇到過網頁莫名跳轉這些情況,打開的目標網站不是原來的內容,反而跳轉到了未知的頁面,即使終端用戶輸入正確的網址也會被指向跳轉至那些惡意網站,或者本來能正常訪問的頁面,突然就打不開了,這就是DNS劫持,亦可稱域名劫持。
出現了這些令人困擾的異常現象,意味著你可能是DNS劫持、投毒的受害者。
DNS劫持(DNS釣魚危害)十分兇猛且不容易被用戶感知,曾導致巴西銀行巴西銀行近1%客戶受到危害而導致賬戶被盜。
黑客利用寬帶路由器的缺陷對用戶DNS進行篡改——用戶只要瀏覽一下黑客所掌控的WEB頁面,其寬帶路由器的DNS就會被黑客篡改,因為該WEB頁面設有特別的惡意代碼,所以可以成功躲過安全軟件檢測,導致大量用戶被DNS釣魚詐騙。
本次CNCERT 400萬+用戶的家用路由器的DNS被劫持,進而造成了非常大的網絡安全。
這次黑產操縱的DNS劫持事件主要目的是為了將用戶的一些正常域名解析到非法網站,通過用戶對非法網站的訪問和點擊從中獲利。
正常DNS訪問的網站
具體表現為:103.85.84.0/24、103.85.85.0/24、45.113.201.0/24三個地址段提供的DNS服務,對190余個類域名的解析進行劫持,最終跳轉到網站非法網站
被劫持到境外非法網站
本次DNS劫持事件涉及面之廣、影響之大,是十分嚴重的事件。那么,拋開此次事件不提,在DNS的歷史上,出現過多次大規模的劫持事件,作為普通用戶來講,我們有哪些方法可以針對DNS劫持做一些預防呢?
首先我們先來看下DNS的網絡拓撲:
如上圖所示,在整個上網的流程中,DNS這環節無疑是脆弱而且不受用戶控制的。DNS劫持由于通常發生在為大家提供上網的網絡運營商的公共DNS服務器,因此普通用戶很難進行處理也無法進行有效預防,因此就造成當訪問的目標網站被劫持的時候會跳轉到其他地址的情況。
要對付運營商的DNS劫持,設置一個可靠的DNS服務器往往就可以解決問題。然而,很多朋友在設置了可靠的DNS服務器后,仍然不能解析到正確的IP地址,例如某個網站的IP地址明明是可以Ping通的,但就是無法訪問。
這部分網站無法訪問的原因是網站域名解析錯誤,而這就存在這幾種可能:
- 黑客危害國外根服務器造成國內服務器域名解析遭到污染;
- 由于數據傳輸過程中網絡節點較多,節點也可能成為危害目標;
- 黑客在危害單個網站的時候,因為節點較多,導致節點污染從而影響了全網。
- 運營商開始普及IPv6地址,而IPv6的地址都是公網IP,無需NAT,所以更容易被黑產利用。
針對IPv6場景多說一點,區別以前IPv4的網絡,IPv6網絡讓所有本來受IPv4的NAT保護的家用路由器暴露在公網上,存在漏洞的家用路由器可以直接被滲透,導致節點污染從而影響了全網。
這就導致了網絡罪犯可以利用路由器的高危漏洞,比如安全研究人員發現的臺灣合勤科技、德國Speedport等公司的路由器產品存在7547端口對外開放的現象,危害者可以通過發送基于TR-069和 TR-064協議的指令利用漏洞,存在漏洞的路由器可能多達數百萬部。
我國正在大規模推進大網IPv6部署,這方面的技術風險需要格外關注。
德國電信向客戶提供的路由器上周末就遭到了危害,多達90萬客戶受到影響,他們需要重啟路由器接收緊急補丁。
物聯網搜索引擎Shodan報告有4100萬設備開放了7547端口,有大約500萬設備暴露了TR-064服務。
而TR-064在設置NTP時間服務時存在命令注入漏洞,危害者通過對7547端口發送特定命令的數據包,執行的命令為“busybox iptables -I INPUT -p tcp –dport 80 -j ACCEPT”,開啟防火墻80端口,使危害者遠程訪問網絡管理界面。
針對DNS劫持,我們還有其他方法:
- 直接使用服務器IP地址,從根本上遏制了DNS劫持;
- 如果服務器IP總是變化,那么我們可以選擇手工設置114.114.114.114或8.8.8.8知名的DNS服務器;
- 雖然設置了知名的DNS服務器,但是被黑客控制了電腦,那么我們可以安裝殺毒軟件防危害;
- 安裝殺毒軟件后,沒有被黑客危害,反而被殺毒軟件劫持了,那么我們選擇卸載軟件或重裝系統;
- 以上均解決不了問題的話,可以聯系專業廠商,如選擇購買Panabit+Panalog服務器進行處理;
如何使用Panalog進行檢查
1. 在DNS統計處進行查詢
可以發現出現被劫持DNS服務器的IP地址,可以判斷在該網絡中可能存在被劫持的用戶。
2. 會話日志處進行篩查
直接選擇“異常分析”選項,直接找到異常的用戶IP和異常的協議名稱 (注意在Panalog上輸入IP地址段時要采用“x.x.x.x-x.x.x.y”的格式)
3. Panabit用戶對自己網絡進行核查
對劫持的DNS重新指到正常DNS服務商(DNSPod)。
具體操作界面如下:
end,此次DNS劫持事件,希望能夠引起大家的足夠重視,只要我們懂得如何正確的使用互聯網,了解掌握預防網絡安全的方法,真正做到未雨綢繆,防患于未然,那么DNS劫持又有什么可擔心的呢。