網頁木馬

tion tern tern

簡要介紹

網頁木馬就是表面上偽裝成普通的網頁檔案或是將惡意的代碼直接插入到正常的網頁檔案中,當有人訪問時,網頁木馬就會利用對方系統或者瀏覽器的漏洞自動將配置好的木馬的服務端下載到訪問者的電腦上來自動執行。
網頁掛馬的實質是利用漏洞向用戶傳播木馬下載器,當我們更清楚了這點就能做到有效的防範。
網頁木馬就是網頁惡意軟體威脅的罪魁禍首,和大家印象中的不同,準確的說,網頁木馬並不是木馬程式,而應該稱為網頁木馬“種植器”,也即一種通過攻擊瀏覽器或瀏覽器外掛程式(目標通常是IE瀏覽器和ActiveX程式)的漏洞,向目標用戶機器植入木馬、病毒、密碼盜取等惡意程式的手段
首先明確,網頁木馬實際上是一個HTML網頁,與其它網頁不同的是該網頁是黑客精心製作的,用戶一旦訪問了該網頁就會中木馬。為什麼說是黑客精心製作的呢?因為嵌入在這個網頁中的腳本恰如其分地利用了IE瀏覽器的漏洞,讓IE在後台自動下載黑客放置在網路上的木馬並運行(安裝)這個木馬,也就是說,這個網頁能下載木馬到本地並運行(安裝)下載到本地電腦上的木馬,整個過程都在後台運行,用戶一旦打開這個網頁,下載過程和運行(安裝)過程就自動開始。
有朋友會說,打開一個網頁,IE瀏覽器真的能自動下載程式和運行程式嗎?如果IE真的能肆無忌憚地任意下載和運行程式,那天下還不大亂。實際上,為了安全,IE瀏覽器是禁止自動下載程式特別是運行程式的,但是,IE瀏覽器存在著一些已知和未知的漏洞,網頁木馬就是利用這些漏洞獲得許可權來下載程式和運行程式的。下面我舉IE瀏覽器早期的一個漏洞來分別說明這兩個問題。

網頁木馬的防範策略

網頁木馬的防範只靠防毒軟體防火牆是遠遠不夠的,因為一旦黑客使用了反彈連線埠的個人版木馬(個人反彙編的一些防毒軟體無法識別的木馬),那么防毒軟體和防火牆就無可奈何,所以,網頁木馬的防範要從它的原理入手,從根子上進行防範。

及時安裝安全補丁

改名或卸載(反註冊)最不安全的ActiveXObject(IE外掛程式)
在系統中有些ActiveXObject會運行EXE程式,比如本文中“自動運行程式”代碼中的Shell.application控制項,這些控制項一旦在網頁中獲得了執行許可權,那么它就會變為木馬運行的“溫床”,所以把這些控制項改名或卸載能徹底防範利用這些控制項的網頁木馬。但是ActiveXObject是為了套用而出現的,而不是為了攻擊而出現的,所有的控制項都有它的用處,所以在改名或卸載一個控制項之前,你必須確認這個控制項是你不需要的,或者即使卸載了也不關大體的。 卸載(反註冊)ActiveXObject過程如下:
第一步:在“開始”選單上單擊“運行”,輸入“CMD”命令打開命令提示符視窗。
第二步:在命令提示符下輸入“regsvr32.exe shell32.dll /u/s”,然後回車就能將Shell.application控制項卸載。
如果日後我們希望繼續使用這個控制項的話,可以在命令提示符視窗中輸入“regsvr32.exe shell32.dll /i/s”命令將它們重新安裝(註冊)。在上述命令中:“regsvr32.exe”是註冊或反註冊OLE對象或控制項的命令,[/u]是反註冊參數,[/s]是寂靜模式參數,[/I]為安裝參數。

改名ActiveXObject

需要說明的是,改名一個控制項時,控制項的名稱和CLSID(Class ID)都要改,並且要改徹底。下面仍以Shell.application為例來介紹方法。
第一步:打開註冊表編輯器,查找“Shell.application”。用這個方法能找到兩個註冊表項:“{13709620-C279-11CE-A49E-444553540000}”和“Shell.application”。
第二步:把{13709620-C279-11CE-A49E-444553540000}改為{13709620-C279-11CE-A49E-444553540001},注意,不要和系統中的其它CLSID重複。
第三步:把“Shell.application”改名為“Shell.application_xxx”。以後用到這個控制項的時候你使用這個名稱就可以正常調用此控制項了。

提高IE的安全級別

有些網馬只要調高IE的安全級別,或者禁用腳本,該網頁木馬就不起作用了。從木馬的攻擊原理我們可以看出,網頁木馬是利用IE腳本和ActiveX控制項上的一些漏洞下載和運行木馬的,只要我們禁用了腳本和ActiveX控制項,就可以防止木馬的下載和運行。
小提示:禁用腳本和ActiveX控制項會使一些網頁的功能和效果失去作用,所以是否禁用,你要根據自己對安全的需要來定。
第一步:在IE瀏覽器的選單欄上選擇“工具→Internet選項”打開“Internet選項”對話框。
第二步:在“安全”選項卡上,在Internet和本地Internet區域,分別把滑塊移動到最高,或者點擊“自定義級別”,在打開的對話框上禁用腳本,禁用ActiveX控制項。

攻擊原理

網頁病毒是利用網頁來進行破壞的病毒,它存在於網頁之中,其實是使用一些SCRIPT語言編寫的一些惡意代碼利用IE的漏洞來實現病毒植入。當用戶登錄某些含有網頁病毒的網站時,網頁病毒便被悄悄激活,這些病毒一旦激活,可以利用系統的一些資源進行破壞。輕則修改用戶的註冊表,使用戶的首頁、瀏覽器標題改變,重則可以關閉系統的很多功能,裝上木馬,染上病毒,使用戶無法正常使用計算機系統,嚴重者則可以將用戶的系統進行格式化。而這種網頁病毒容易編寫和修改,使用戶防不勝防。
目前的網頁病毒都是利用JS.ActiveX、WSH共同合作來實現對客戶端計算機,進行本地的寫操作,如改寫你的註冊表,在你的本地計算機硬碟上添加、刪除、更改資料夾或檔案等操作。而這一功能卻恰恰使網頁病毒、網頁木馬有了可乘之機。而在我們分析網頁病毒前,先叫我們知道促使病毒形成的罪魁禍首:Windows 腳本宿主 和Microsoft Internet Explorer漏洞利用
Windows 腳本宿主,Internet Explorer漏洞以及相關WSH,是“Windows Scripting Host”的縮略形式,其通用的中文譯名為“Windows 腳本宿主”。對於這個較為抽象的名詞,我們可以先作這樣一個籠統的理解:它是內嵌於 Windows 作業系統中的腳本語言工作環境。Windows Scripting Host 這個概念最早出現於 Windows 98 作業系統。大家一定還記得 MS-Dos 下的批處理命令,它曾有效地簡化了我們的工作、帶給我們方便,這一點就有點類似於如今大行其道的腳本語言。但就算我們把批處理命令看成是一種腳本語言,那它也是 98 版之前的 Windows 作業系統所唯一支持的“腳本語言”。而此後隨著各種真正的腳本語言不斷出現,批處理命令顯然就很是力不從心了。面臨這一危機,微軟在研發 Windows 98 時,為了實現多類腳本檔案在 Windows 界面或 Dos 命令提示符下的直接運行,就在系統內植入了一個基於 32 位 Windows 平台、並獨立於語言的腳本運行環境,並將其命名為“Windows Scripting Host”。WSH 架構於 ActiveX 之上,通過充當 ActiveX 的腳本引擎控制器,WSH 為 Windows 用戶充分利用威力強大的腳本指令語言掃清了障礙。WSH也有它的不足之處,任何事物都有兩面性,WSH 也不例外。應該說,WSH 的優點在於它使我們可以充分利用腳本來實現計算機工作的自動化;但不可否認,也正是它的這一特點,使我們的系統又有了新的安全隱患。許多計算機病毒製造者正在熱衷於用腳本語言來編制病毒,並利用 WSH 的支持功能,讓這些隱藏著病毒的腳本在網路中廣為傳播。藉助WSH的這一缺陷,通過JAVASCRIPT,VBSCRIPT,ACTIVEX等網頁腳本語言,就形成了現在的“網頁危機”。
促使這一問題發生的還有問題多多Internet Explorer 的自身漏洞。比如:“錯誤的MIME Multipurpose Internet Mail Extentions,多用途的網際郵件擴充協定頭”,“Microsoft Internet Explorer瀏覽器彈出視窗Object類型驗證漏洞”。而以下介紹的幾個組件存在的問題或漏洞或是在安全問題上的過濾不嚴密問題,卻又造成了“網頁危機”的另外一個重要因素。
Java語言可以編寫兩種類型的程式:應用程式(Application)和小應用程式(Applet)。應用程式是可以獨立運行的程式,而Applet不能獨立運行,需要嵌入HTML檔案,遵循一套約定,在支持Java的瀏覽器(如:Netscape Navigator 2.02版本以上,HotJava,Microsoft Internet Explorer 3.0版本以上)運行,是Java一個重要的套用分支,也是當時Java最令人感興趣的地方(它一改網頁呆板的界面),就是在WWW網頁(Home Page / Pages)設計中加入動畫、影像、音樂等,而要達到這些效果使用最多的是Java Applet和Java Script (這是一種Java的命令語言)。
JavaScript是一種基於對象(Object)和事件驅動(Event Driven)並具有安全性能的腳本語言。使用它的目的是與HTML超文本標記語言、與Web客戶互動作用。從而可以開發客戶端的應用程式等。它是通過嵌入或檔案引用在標準的HTML語言中實現的。它的出現彌補了HTML語言的缺陷,它是Java與HTML折衷的選擇,具有基於對象、簡單、安全、動態、跨平台性等特性。
l ActiveX是Microsoft提出的一組使用COM(Component Object Model,部件對象模型)使得軟體部件在網路環境中進行互動的技術。它與具體的程式語言無關。作為針對Internet套用開發的技術,ActiveX被廣泛套用於WEB伺服器以及客戶端的各個方面。同時,ActiveX技術也被用於方便地創建普通的桌面應用程式。在Applet中可以使用ActiveX技術,如直接嵌入ActiveX控制,或者以ActiveX技術為橋樑,將其它開發商提供的多種語言的程式對象集成到Java中。與Java的位元組碼技術相比,ActiveX提供了“代碼簽名”(Code Signing)技術保證其安全性。

網頁病毒的攻擊方式

既然是網頁病毒,那么很簡單的說,它就是一個網頁,甚至於製作者會使這個特殊網頁與其他一般的網頁別無他樣,但在這個網頁運行與本地時,它所執行的操作就不僅僅是下載後再讀出,伴隨著前者的操作背後,還有這病毒原體軟體的下載,或是木馬的下載,然後執行,悄悄地修改你的註冊表,等等…那么,這類網頁都有什麼特徵呢?
誘惑的網頁名稱,以及利用瀏覽者的無知
不得不承認,很多惡意網頁或是站點的製作者,他們對瀏覽者的心理分析是下工夫的,對域名的選擇和利用絕對是很到位的。很多上網的男性網民大都對MM照片感興趣,這就是他們利用的一個渠道。如你看到了一個域名:www.l*****.com,或是http://plmm.*****.net等等. 你會動心去看么。如果不會,再看這個域名:/Article/UploadFiles/200603/20060301160330179.gif 這個地址你會去看么?很顯然,咋一看,圖片!一張可能是MM的圖片,又有懂點安全知識的人說了,放心它不可能是BMP圖片木馬,你用這個地址打開一定是張.GIF格式的圖片。好,你可以去嘗試一下。再看另外一個域名,很顯然是經過構造的。/Article/UploadFiles/200603/20060301160331961.gif 你還能“火眼金睛”嗎?不知道結果是什麼,那你就放心的去點擊它看看。
利用瀏覽者的好奇心
對什麼都要好奇這可不是個好習慣。有些東西不是你想看就可以去看的。
無意識的瀏覽者

相關詞條

相關搜尋

熱門詞條

聯絡我們