最近波蘭CERT一篇名為的文章引起我們的注意,原文地址:(https://www.cert.pl/news/8019/langswitch_lang/en),報告中寫到:“很多家用路由器存在未授權的遠程修改配置漏洞導致了這次事件的發生。黑客通過在網上銀行頁面中注入了惡意的javascript代碼欺騙用戶輸入賬號密碼和交易確認碼,最終竊取了用戶銀行里面的錢。”
這個和去年的有什么不同?
修改路由器dns劫持,國內已經有好多了,但是沒聽說過洗錢的。
我只聽說過能夠dns劫持我的HTTP請求,HTTPS也不安全啊?
更多朋友所不知道的是,HTTPS加密請求也能嗅探到?
什么是HTTPS:
HTTPS是以安全為目標的HTTP通道,簡單講是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎是SSL,因此加密的詳細內容就需要SSL。句法類同http:體系,用于安全的HTTP數據傳輸。https:URL表明它使用了HTTPS。這個系統的最初研發由網景公司進行,提供了身份驗證與加密通訊方法,現在它被廣泛用于萬維網上安全敏感的通訊,例如交易支付方面。
之所以大家都認為不能嗅探HTTPS請求的原因是來自對加密SSL層的信任,那么黑客是怎么做到的嗅探HTTPS?
簡單的說黑客為了繞過HTTPS,采用了SSL層剝離的技術,黑客阻止用戶和使用HTTPS請求的網站之間建立SSL連接,使用戶和代理服務器(攻擊者所控服務器)之間使用了未加密的HTTP通信。
攻擊細節
黑客(攻擊者)使用了一款工具來實施攻擊-SSLStrip,他能夠阻止用戶和使用HTTPS請求的網站之間建立SSL層連接,進行中間人劫持(類似于ARP欺騙)。
上面就是使用sslstrip進行嗅探內網某設備的截圖
SSLStrip的工作原理:
進行中間人攻擊來劫持HTTP請求流量。
將出現的HTTPS鏈接全部替換為HTTP,同時記錄所有改變的鏈接。
使用HTTP與受害者機器鏈接。
同時與合法的服務器建立HTTPS。
受害者與合法服務器之間的全部通信請求經過代理(攻擊者服務器)轉發。
完成劫持請求
攻擊的流程原理可用下圖表示:
有關波蘭遭遇大規模DNS劫持用戶網上銀行的事件中,因為使用SSLStrip會提醒用戶連接沒有使用SSL加密,黑客為了迷惑用戶,重寫了URL,在域名前加了“ssl-.”的前綴,當然這個域名是不存在的,只能在黑客的惡意DNS才能解析。
這件事情的源頭是因為ZynOS路由器出現漏洞,導致的大批量DNS劫持,有關ZynOS漏洞利用攻擊代碼已經在Github上有人放出來了,整個流程如下:
1.攻擊者批量劫持用戶DNS
2.重寫URL迷惑用戶
3.使用SSLStrip進行請求劫持
4.完成劫持
波蘭這次事件主要是黑客利用路由漏洞進行了大范圍DNS劫持然后使用sslstrip方法進行嗅探,這次方法要比之前單純的DNS劫持有趣的多,當然危害也大的多。
解決方案
這種攻擊方式馬上會在國內展開攻擊,這種攻擊往往不是基于服務端,特別是SSL Stripping技術,其攻擊手法不是針對相應固件也不是利用固件漏洞,所以大家有必要好好看一下解決方案,真正的把DNS防御杜絕在門外!
檢查DNS是否正常
拿TP-Link舉例,瀏覽器訪問192.168.1.1(一般是這個,除非你改了),輸入賬號密碼登陸(默認賬號密碼在說明書上都有)-> 網絡參數-> WAN口設置-> 高級設置-> 看看里面DNS的IP是否勾選了“手動設置DNS服務器”。
* 如果你沒有人工設置過,但勾選了,那就要警惕是否被黑客篡改了。
* 如果沒勾選,一般情況下沒有問題。
* 檢查DNS IP是否正常:在百度上搜索下里面的DNS IP看看是不是國內的,如果是國外的則需要警惕了!除非是Google的8.8.8.8這個,看看百度的搜索結果有沒有誰討論過這個DNS IP的可疑情況,有些正常DNS IP也會有人討論質疑,這個需要大家自行判斷一下,實在沒把握就設置DNS IP如下:
主DNS服務器:114.114.114.114,備用DNS服務器為:8.8.8.8
關于其他品牌如何修改查看或者修改DNS的話,和上面步驟也差不多,實在找不到的話就百度一下,多方便。
如果發現被攻擊的痕跡,重置路由器是個好辦法,當然下面的步驟是必須的:
修改路由器Web登陸密碼
路由器一般都會有Web管理頁面的,這個管理界面的登陸密碼記得一定要修改!一般情況下默認賬號密碼都是admin,把賬號密碼最好都修改的復雜點兒吧!
上面的步驟都是人工的,我們另外準備了工具(建議結合使用):DNS劫持惡意代碼檢測
開啟計算機防火墻以及安裝殺軟也能有效的防御此類攻擊。當然https還是安全的,只不過登陸相應https網站或者涉及敏感隱私/金錢交易網站時候注意網址左側的證書顏色,綠色黃色紅色分別代表不同級別!