服務(wù)熱線(xiàn)
0564-3214800
作為網(wǎng)頁(yè)掛馬的散布者,其目的是將木馬下載到用戶(hù)本地,并進(jìn)一步執行,當木馬獲得執行之后,就意味著(zhù)會(huì )有更多的木馬被下載,進(jìn)一步被執行,進(jìn)入一個(gè)惡性的循環(huán),從而使用戶(hù)的電腦遭到攻擊和控制。為達到目的首先要將木馬下載到本地。根據上圖的流程,常見(jiàn)的方式有以下幾種:
1.將木馬偽裝為頁(yè)面元素。木馬則會(huì )被瀏覽器自動(dòng)下載到本地。
2.利用腳本運行的漏洞下載木馬
3.利用腳本運行的漏洞釋放隱含在網(wǎng)頁(yè)腳本中的木馬
4.將木馬偽裝為缺失的組件,或和缺失的組件捆綁在一起(例如:flash播放插件)。這樣既達到了下載的目的,下載的組件又會(huì )被瀏覽器自動(dòng)執行。
5.通過(guò)腳本運行調用某些com組件,利用其漏洞下載木馬。
6.在渲染頁(yè)面內容的過(guò)程中利用格式溢出釋放木馬(例如:ani格式溢出漏洞)
7.在渲染頁(yè)面內容的過(guò)程中利用格式溢出下載木馬(例如:flash9.0.115的播放漏洞)
在完成下載之后,執行木馬的方式有以下幾種:
1.利用頁(yè)面元素渲染過(guò)程中的格式溢出執行shellcode進(jìn)一步執行下載的木馬
2.利用腳本運行的漏洞執行木馬
3.偽裝成缺失組件的安裝包被瀏覽器自動(dòng)執行
4.通過(guò)腳本調用com組件利用其漏洞執行木馬。
5.利用頁(yè)面元素渲染過(guò)程中的格式溢出直接執行木馬。
6.利用com組件與外部其他程序通訊,通過(guò)其他程序啟動(dòng)木馬(例如:realplayer10.5存在的播放列表溢出漏洞)
在與網(wǎng)馬斗爭的過(guò)程中,為了躲避殺毒軟件的檢測,一些網(wǎng)馬還具有了以下行為:
1.修改系統時(shí)間,使殺毒軟件失效
2.摘除殺毒軟件的HOOK掛鉤,使殺毒軟件檢測失效
3.修改殺毒軟件病毒庫,使之檢測不到惡意代碼。
4.通過(guò)溢出漏洞不直接執行惡意代碼,而是執行一段調用腳本,以躲避殺毒軟件對父進(jìn)程的檢測。
網(wǎng)頁(yè)掛馬的檢測
傳統的檢測防御方式:
1.特征匹配。將網(wǎng)頁(yè)掛馬的腳本按腳本病毒處理進(jìn)行檢測。但是網(wǎng)頁(yè)腳本變形方、加密方式比起傳統的PE格式病毒更為多樣,檢測起來(lái)也更加困難。
2.主動(dòng)防御。當瀏覽器要做出某些動(dòng)作時(shí),做出提示,例如:下載了某插件的安裝包,會(huì )提示是否運行,比如瀏覽器創(chuàng )建一個(gè)暴風(fēng)影音播放器時(shí),提示是否允許運行。在多數情況下用戶(hù)都會(huì )點(diǎn)擊是,網(wǎng)頁(yè)木馬會(huì )因此得到執行。
3.檢查父進(jìn)程是否為瀏覽器。這種方法可以很容易的被躲過(guò)且會(huì )對很多插件造成誤報。
安天防線(xiàn)的行為分析方式:
1.檢測偽裝文件格式。通過(guò)對文件格式精確的識別,判斷頁(yè)面元素是否為偽裝的惡意代碼。
2.檢查頁(yè)面元素來(lái)源是否為長(cháng)期散布網(wǎng)頁(yè)掛馬的站點(diǎn)。
3.檢測特定函數調用堆棧實(shí)現。
(a)區分用戶(hù)下載文件,瀏覽器自動(dòng)下載文件。
(b)檢測已知緩沖區漏洞。
(c)檢測進(jìn)程創(chuàng )建調用堆棧、調用參數是否和瀏覽器常規一致,以檢測未知漏洞造成的文件執行。
4.對文件執行進(jìn)行監控,檢測文件執行參數等特征。
5.對部分目錄寫(xiě)文件操作進(jìn)行監控。
6.檢測系統時(shí)鐘修改。
7.檢測對系統DLL內存鏡像修改(導入、導出表、函數體內容)。
8.檢查PE文件和CAB包裹的數字簽名。
9.特定文件格式檢測,檢測已知的格式溢出。
通過(guò)對以上幾項的加權處理,可以實(shí)現有效對已知和未知網(wǎng)頁(yè)掛馬的檢測。