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