U盤免疫技術
簡述:U盤病毒就像幽靈,刪之又來,交叉感染比較嚴重。特別是在公司里,有幾十臺電腦、個人筆記本,同事間經(jīng)常要用U盤傳遞資料,如此以來U盤病毒則肆虐地傳播開來。只要有一臺電腦或者一個U盤上的病毒未清除干凈,它們就會死灰復燃,讓人頭疼。
第一回合:牛刀小試
U盤病毒的大門是Autorun.inf文件,此類病毒的特征是在U盤根目錄生成Autorun.inf文件,連接一個或數(shù)個隱藏的病毒文件,一旦雙擊打開U盤,則首先運行Autorun.inf文件,打開了病毒的大門,然后利用Autorun.inf中的命令打開病毒,就這樣你的電腦就感染了,它已經(jīng)變成了一個U盤病毒的載體,一旦再有干凈的U盤插入你的機子,馬上該U盤就感染了……
針對U盤病毒的特點,很多人不直接雙擊打開U盤,而是點右鍵再點“打開……”,這樣就避免了運行Autorun.inf,病毒就不會運行了。
道高一尺,魔高一丈,第二代U盤病毒產(chǎn)生了,此種病毒在Autorun.inf文件中加入了如下代碼:
shellopen=打開(&O)
shellopenCommand=filename.EXE
shellopenDefault=1
shellexplore=資源管理器(&X)
這種迷惑性較大,右鍵菜單一眼也看不出問題,如果你點“打開”,依然會運行Autorun.inf文件而中招。
第二回合:大動干戈
面對這種危險,一部分人也根據(jù)自己的經(jīng)驗,做出了“免疫”工具。免疫工具的原理很簡單,就是建立同名目錄。
目錄在Windows下是一種特殊的文件,而兩個同一目錄下的文件不能同名。于是,新建一個目錄“autorun.inf"在可移動磁盤的根目錄,可以防止早期未考慮這種情況存在的病毒創(chuàng)建autorun.inf,減少傳播成功的概率。
為了防止目錄被刪除,后來又演變成建立autorun.inf下的非法文件名目錄,有些病毒加入了容錯處理代碼,在生成autorun.inf之前先試圖刪除autorun.inf目錄。在Windows NT Win32子系統(tǒng)下,諸如"filename."這樣的目錄名是允許存在的,但是為了保持和DOS/Win9x的8.3文件系統(tǒng)的兼容性(.后為空非法),直接調用標準Win32 API中的目錄查詢函數(shù)是無法查詢這類目錄中的內容的,會返回錯誤。但是,刪除目錄必須要逐級刪除其下的整個樹形結構,因此必須查詢其下每個子目錄的內容。因此,在“autorun.inf"目錄建一個此類特殊目錄,方法如"MD x:autorun.infyksoft..",可以防止autorun.inf目錄輕易被刪除。類似的還有利用Native API創(chuàng)建使用DOS保留名的目錄(如con、lpt1、prn等)也能達到相似的目的。現(xiàn)在網(wǎng)上流行的U盤病毒免疫程序都是用的這種方法。
md K:\autorun.inf
md K:\autorun.inf\xxxxx..\
道高兩尺,魔高兩丈,U盤病毒升級到了第三代。這種病毒可以輕易的檢測出免疫文件并將其刪除掉,此種病毒只是多加了一行代碼:
rd /s /q K:\autorun.inf
或
RENAME c:\autorun.inf ttdt
然后再創(chuàng)建病毒autorun.inf就可以了,一旦病毒運行就監(jiān)控它autorun.inf,這樣再免疫也白費了......
第三回合:終極對決
如何建立一個病毒不能刪除的具有金剛不壞之身的Autorun.inf免疫文件呢?于是基于更低層的NTFS文件系統(tǒng)權限控制的辦法出現(xiàn)了。將U盤、移動硬盤格式化為NTFS文件系統(tǒng),創(chuàng)建Autorun.inf目錄,設置該目錄對任何用戶都沒有任何權限,病毒不僅無法刪除,甚至無法列出該目錄內容。(但是,該辦法不適合于音樂播放器之類通常不支持NTFS的設備)。詳細步驟如下:
1.開始——運行——cmd,打開命令行窗口;
2.運行convert k: /FS:NTFS(假設U盤是K:盤),將U盤格式轉化為NTFS格式。若轉換不成功,則先對U盤進行磁盤掃描一遍;
3.在U盤根目錄下建立autorun.inf文件夾,點擊右鍵,將其屬性改為只讀、隱藏,然后應用,再點“安全”選項卡,“高級”,在默認的“權限”選項卡中下面兩項的勾去掉。確定。
通過此種方法建立的免疫文件,已經(jīng)具有很強的“抗擊打能力”,現(xiàn)在的U盤病毒基本對其無計可施。
同樣的,可以在硬盤、移動硬盤的各盤的根目錄下建立這樣的免疫文件。
當然,在免疫以前,應該先殺掉系統(tǒng)中存在的U盤病毒,推薦用USBKiller這款軟件,不過新版本已經(jīng)收費了。
為了防止免疫失敗,再加強一步,干脆干掉Windows的自動運行特性,這樣以來Autorun文件就成為一個普通的Windows文件,再也無法啟動病毒了。建議用超級巡警的U盤病毒免疫器來做這一步工作。雙擊運行“U盤病毒免疫器1.4”,勾上“免疫所有本地驅動器”,勾上下面的4個附加功能,點擊“開始免疫”,數(shù)秒后軟件狀態(tài)欄會提示免疫成功,重啟機子即可。
通過以上的USBKiller殺毒、NTFS權限法建免疫文件、“U盤病毒免疫器1.4”法閹割Windows的自動運行特性三個步驟,此時您的電腦與U盤基本上已經(jīng)安全了,當然,僅僅是指截至到今天2007.10.18,
但是,最大的問題不在怎么防止生成這個autorun.inf上,而是系統(tǒng)本身、Explorer的脆弱性。病毒作者很快就會做出更強大的方案。這是我的預想。