如何防范vbs腳本病毒
1.如何從樣本中提取(加密)腳本病毒 對于沒有加密的腳本病毒,我們可以直接從病毒樣本中找出來,現(xiàn)在介紹一下如何從病毒樣本中提取加密VBS腳本病毒,這里我們以新歡樂時(shí)光為例。用JediEdit打開folder.htt。我們發(fā)現(xiàn)這個(gè)文件總共才93行,第一行,幾行注釋后,以開始,節(jié)尾。相信每個(gè)人都知道這是個(gè)什么類型的文件吧! 第87行到91行,是如下語句:87:[code]<SCRIPT language=vbscript> 88:ExeString = "Afi FkSeboa)EqiiQbtq)S^pQbtq)AadobaPfdj)>mlibL^gb`p)CPK...;后面省略,很長!89:Execute("Dim KeyArr(3),ThisText"&vbCrLf&"KeyArr(0) = 3"&vbCrLf&"KeyArr(1) = 3"&vbCrLf&"KeyArr(2) = 3"&vbCrLf&"KeyArr(3) = 4"&vbCrLf&"For i=1 To Len(ExeString)"&vbCrLf&"TempNum = Asc(Mid(ExeString,i,1))"&vbCrLf&"If TempNum = 18 Then"&vbCrLf&"TempNum = 34"&vbCrLf&"End If"&vbCrLf&"TempChar = Chr(TempNum + KeyArr(i Mod 4))"&vbCrLf&"If TempChar = Chr(28) Then"&vbCrLf&"TempChar = vbCr"&vbCrLf&"ElseIf TempChar = Chr(29) Then"&vbCrLf&"TempChar = vbLf"&vbCrLf&"End If"&vbCrLf&"ThisText = ThisText & TempChar"&vbCrLf&"Next") 90:Execute(ThisText) 91:<script>[/code] 第87和91行不用解釋了,第88行是一個(gè)字符串的賦值,很明顯這是被加密過的病毒代碼??纯?9行最后的一段代碼ThisText = ThisText & TempChar,再加上下面那一行,我們肯定能夠猜到ThisText里面放的是病毒解密代碼(熟悉vbs的兄弟當(dāng)然也可以分析一下這段解密代碼,too simple!就算完全不看代碼也應(yīng)該可以看得出來的)。第90行是執(zhí)行剛才ThisText中的那段代碼(經(jīng)過解密處理后的代碼)?! ∧敲?,下一步該怎么做呢?很簡單,我們只要在病毒代碼解密之后,將ThisText的內(nèi)容輸出到一個(gè)文本文件就可以解決了。由于上面幾行是vbscript,于是我創(chuàng)建了如下一個(gè).txt文件:首先,copy第88、89兩行到剛才建立的.txt文件,當(dāng)然如果你愿意看看新歡樂時(shí)光的執(zhí)行效果,你也可以在最后輸入第90行。然后在下面一行輸入創(chuàng)建文件和將ThisText寫入文件vbs代碼,整個(gè)文件如下所示: ExeString = "Afi... ’ 第88行代碼 Execute("Dim KeyAr... ’ 第89行代碼 set fso=createobject("scripting.filesystemobject") ’ 創(chuàng)建一個(gè)文件系統(tǒng)對象 set virusfile=fso.createtextfile("resource.log",true) ’ 創(chuàng)建一個(gè)新文件resource.log,用以存放解密后的病毒代碼 virusfile.writeline(ThisText) ’ 將解密后的代碼寫入resource.log OK!就這么簡單,保存文件,將該文件后綴名.txt改為.vbs(.vbe也可以),雙擊,你會發(fā)現(xiàn)該文件目錄下多了一個(gè)文件resource.log,打開這個(gè)文件,怎么樣?是不是“新歡樂時(shí)光”的源代碼啊! 2.vbs腳本病毒的弱點(diǎn) vbs腳本病毒由于其編寫語言為腳本,因而它不會像PE文件那樣方便靈活,它的運(yùn)行是需要條件的(不過這種條件默認(rèn)情況下就具備了)。筆者認(rèn)為,VBS腳本病毒具有如下弱點(diǎn): 1)絕大部分VBS腳本病毒運(yùn)行的時(shí)候需要用到一個(gè)對象:FileSystemObject 2)VBScript代碼是通過Windows Script Host來解釋執(zhí)行的。 3)VBS腳本病毒的運(yùn)行需要其關(guān)聯(lián)程序Wscript.exe的支持。 4)通過網(wǎng)頁傳播的毒需要ActiveX的支持 5)通過Email傳播的病毒需要OE的自動發(fā)送郵件功能支持,但是絕大部分病毒都是以Email為主要傳播方式的?! ?.如何預(yù)防和解除vbs腳本病毒 針對以上提到的VBS腳本病毒的弱點(diǎn),筆者提出如下集中防范措施: 1)禁用文件系統(tǒng)對象FileSystemObject 方法:用regsvr32 scrrun.dll /u這條命令就可以禁止文件系統(tǒng)對象。其中regsvr32是Windows\System下的可執(zhí)行文件?;蛘咧苯硬檎襰crrun.dll文件刪除或者改名。還有一種方法就是在注冊表中HKEY_CLASSES_ROOT\CLSID\下找到一個(gè)主鍵{0D43FE01-F093-11CF-8940-00A0C9054228}的項(xiàng),咔嚓即可?! ?)卸載Windows Scripting Host 在Windows 98中(NT 4.0以上同理),打開[控制面板]→[添加/刪除程序]→[Windows安裝程序]→[附件],取消“Windows Scripting Host”一項(xiàng)。和上面的方法一樣,在注冊表中HKEY_CLASSES_ROOT\CLSID\下找到一個(gè)主鍵{F935DC22-1CF0-11D0-ADB9-00C04FD58A0B}的項(xiàng),咔嚓?! ?)刪除VBS、VBE、JS、JSE文件后綴名與應(yīng)用程序的映射 點(diǎn)擊[我的電腦]→[查看]→[文件夾選項(xiàng)]→[文件類型],然后刪除VBS、VBE、JS、JSE文件后綴名與應(yīng)用程序的映射?! ?)在Windows目錄中,找到WScript.exe,更改名稱或者刪除,如果你覺得以后有機(jī)會用到的話,最好更改名稱好了,當(dāng)然以后也可以重新裝上?! ?)要徹底防治VBS網(wǎng)絡(luò)蠕蟲病毒,還需設(shè)置一下你的瀏覽器。我們首先打開瀏覽器,單擊菜單欄里“Internet 選項(xiàng)”安全選項(xiàng)卡里的[自定義級別]按鈕。把“ActiveX控件及插件”的一切設(shè)為禁用,這樣就不怕了。呵呵,譬如新歡樂時(shí)光的那個(gè)ActiveX組件如果不能運(yùn)行,網(wǎng)絡(luò)傳播這項(xiàng)功能就玩完了?! ?)禁止OE的自動收發(fā)郵件功能 7)由于蠕蟲病毒大多利用文件擴(kuò)展名作文章,所以要防范它就不要隱藏系統(tǒng)中已知文件類型的擴(kuò)展名。Windows默認(rèn)的是“隱藏已知文件類型的擴(kuò)展名稱”,將其修改為顯示所有文件類型的擴(kuò)展名稱?! ?)將系統(tǒng)的網(wǎng)絡(luò)連接的安全級別設(shè)置至少為“中等”,它可以在一定程度上預(yù)防某些有害的Java程序或者某些ActiveX組件對計(jì)算機(jī)的侵害?! ?)呵呵,最后一項(xiàng)不說大家也應(yīng)該知道了,殺毒軟件確實(shí)很必要,盡管有些殺毒軟件挺讓廣大用戶失望,不過,選擇是雙方的哦。在這個(gè)病毒橫飛的網(wǎng)絡(luò),如果您的機(jī)器沒有裝上殺毒軟件我覺得確實(shí)挺不可思議的。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點(diǎn)擊舉報(bào)。