影響計(jì)算機(jī)操作的惡意軟件不會(huì)總在計(jì)算機(jī)中被發(fā)現(xiàn),最近我們?cè)谧约旱募彝ゾW(wǎng)絡(luò)中的多臺(tái)計(jì)算機(jī)上發(fā)現(xiàn)了一個(gè)常規(guī)的操作問(wèn)題,運(yùn)行不同操作系統(tǒng)的不同計(jì)算機(jī)上的各種瀏覽器都會(huì)進(jìn)行間歇性地重定向網(wǎng)頁(yè),它們會(huì)將網(wǎng)絡(luò)重定向到一個(gè)陌生的商戶網(wǎng)站。
特定惡意軟件的特征、用戶的緩存歷史、特定計(jì)算機(jī)上的設(shè)置,以及異常瀏覽器的表現(xiàn)等的影響都會(huì)阻礙故障排除工作。網(wǎng)頁(yè)重定向的問(wèn)題可能要?dú)w因于虛假的域名服務(wù)(DNS)服務(wù)器。
DNS服務(wù)器功能
DNS服務(wù)器被復(fù)制在整個(gè)互聯(lián)網(wǎng)中,并且是基于互聯(lián)網(wǎng)用戶友好型。這些服務(wù)器讓用戶能夠通過(guò)用戶友好型URL地址(如Google.com)來(lái)瀏覽網(wǎng)頁(yè),而不是使用IP地址(74.125.239.37)來(lái)定位包含所需內(nèi)容的服務(wù)器。
這個(gè)惡意軟件事件的轉(zhuǎn)折是:使用不同操作系統(tǒng)(例如Windows 8、iOS7、OS X)的多臺(tái)電腦都會(huì)受到影響,而且并不是所有網(wǎng)站都會(huì)被重定向,有些網(wǎng)站能在一臺(tái)計(jì)算機(jī)上進(jìn)行DNS解析,而在另一臺(tái)計(jì)算機(jī)上則不能。這讓解決本地惡意軟件的故障排除工作變得更加復(fù)雜。為什么這個(gè)問(wèn)題是間歇性,并且網(wǎng)絡(luò)中的所有計(jì)算機(jī)都不一致呢?為什么使用不同操作系統(tǒng)的多臺(tái)計(jì)算機(jī)都會(huì)受到影響?為什么我們的反惡意軟件不能發(fā)現(xiàn)或刪除它?
隔離問(wèn)題
一定的故障排除工作可以讓我們發(fā)現(xiàn)每臺(tái)計(jì)算機(jī)正在使用的DNS服務(wù)器、它是否合法以及它如何分配給計(jì)算機(jī)。當(dāng)我們重組裝這些組件時(shí),我們發(fā)現(xiàn)路由器是唯一的共同組件。我們從來(lái)沒(méi)有親眼見(jiàn)過(guò)或者遇到路由器惡意軟件,這既有趣又有點(diǎn)嚇人。遭到惡意攻擊時(shí),可能我們第一時(shí)間會(huì)想攻擊者獲取了哪些個(gè)人信息?
接下來(lái)我沒(méi)想到的是,他們?nèi)绾文軌驖B透我們的路由器?我們?nèi)绾文軌虬l(fā)現(xiàn)惡意軟件對(duì)路由器進(jìn)行的實(shí)際修改?我們?nèi)绾文軌蚧謴?fù)路由器到原來(lái)的功能?我們能否對(duì)路由器配置作出修改來(lái)防止未來(lái)會(huì)發(fā)生類似的事件?所有的問(wèn)題都會(huì)讓人覺(jué)得恐慌,因此無(wú)論發(fā)生什么樣的損害都必須立即阻止。
在這一點(diǎn)上,我們并沒(méi)有對(duì)于發(fā)生的攻擊想太多,比如他們?nèi)绾芜M(jìn)入網(wǎng)絡(luò)、如何清理惡意軟件的足跡,我們只是想我們多快可以恢復(fù)路由器、更新固件,然后更好地保護(hù)它。
更改DNS設(shè)置的惡意軟件通常會(huì)有一個(gè)計(jì)劃:大多數(shù)惡意軟件會(huì)通過(guò)商家網(wǎng)站的點(diǎn)擊率賺錢。這通常是編寫和散步惡意軟件的攻擊者的動(dòng)力?;ヂ?lián)網(wǎng)充滿了這種類型的欺詐行為,網(wǎng)站已經(jīng)簽訂合約,需要為點(diǎn)擊或查看其網(wǎng)站來(lái)付費(fèi),而不是為制造網(wǎng)絡(luò)流量的目錄列表支付大筆費(fèi)用。
路由器的作用
大多數(shù)路由器都是遠(yuǎn)程配置和管理,因此可以使用密碼來(lái)保護(hù)遠(yuǎn)程登錄。顯然,這是一個(gè)漏洞,如果路由器可以被重新配置,那么,這可能造成路由器故障。大多數(shù)路由器提供的服務(wù)被稱為DHCP(動(dòng)態(tài)主機(jī)配置協(xié)議),DHCP為互聯(lián)網(wǎng)上主機(jī)提供地址和配置參數(shù)。DHCP是基于Client/Server工作模式,DHCP服務(wù)器為需要為主機(jī)分配IP地址和提供主機(jī)配置參數(shù)。這通常由路由器來(lái)執(zhí)行以讓計(jì)算機(jī)網(wǎng)絡(luò)的大量用戶之間共享有限的IP地址。這類似于電話網(wǎng)絡(luò)在大量員工之間共享有限數(shù)量的電話號(hào)碼。更像是高管辦公室內(nèi)安裝的私人電話線,這種IP地址分配可以在單臺(tái)計(jì)算機(jī)上完成,而不需要DHCP的幫助。
此外,DHCP可以配置為提供主級(jí)和次級(jí)DNS表位置(計(jì)算機(jī)將會(huì)試圖轉(zhuǎn)譯google.com為74.125.239.37)到路由器服務(wù)的計(jì)算機(jī)。故障排除工作人員可能開始不會(huì)知道DHCP是否被用在對(duì)象網(wǎng)絡(luò)中的特定計(jì)算機(jī),這可能讓問(wèn)題變得更加復(fù)雜。由于我們確定了連接到路由器的多臺(tái)計(jì)算機(jī)都受到影響,我們將工作重點(diǎn)放在了路由器內(nèi)的DHCP的配置參數(shù)。
無(wú)論計(jì)算機(jī)運(yùn)行的是什么操作系統(tǒng),使用DHCP來(lái)獲取其IP地址或DNS表位置的所有計(jì)算機(jī)都會(huì)同樣受到影響。這種重定向看似不可預(yù)測(cè)的性質(zhì)可能是因?yàn)?,DNS解析被暫時(shí)存儲(chǔ)在用戶機(jī)器的緩存中。某些解析可能在這種漏洞利用之前就被放置在緩存中,因此這些網(wǎng)站將會(huì)得到妥善解決。
事后諸葛亮
在過(guò)去,我們解決網(wǎng)絡(luò)問(wèn)題時(shí),沒(méi)有完全了解問(wèn)題的真正原因、癥狀的詳細(xì)內(nèi)容以及到底做了什么來(lái)解決問(wèn)題。我們采取的步驟包括,恢復(fù)備份、升級(jí)應(yīng)用程序或操作系統(tǒng)或重啟,這可以環(huán)節(jié)問(wèn)題,但無(wú)法確保避免問(wèn)題的再次發(fā)生。
在這種情況下,我們能夠通過(guò)這些惡意軟件的癥狀來(lái)確定問(wèn)題的來(lái)源。某些組件可以從這些癥狀的共同性質(zhì)來(lái)消除,現(xiàn)在看起來(lái)很明顯的是,DHCP分配的DNS服務(wù)器可能是導(dǎo)致這些癥狀的原因。我們希望當(dāng)我們第一次遇到這個(gè)問(wèn)題時(shí)這個(gè)很明顯。