發布補丁
在2011年2月8日發布的安全公告KB967940中,微軟對Windows自動運行功能進行了最新升級,限定 Windows XP、Windows Server 2003、Vista(Vista是到Win7的一個過渡系統)和Windows Server 2008平台上的自動運行功能僅支持CD和DVD媒體。 當用戶使用包含autorun.inf檔案的USB設備、網路共享或其它非CD/DVD媒體時,系統不會執行自動運行。
安裝此次更新後,當插入USB設備時,用戶不會收到程式安裝的提示對話框,用戶需要手動打開資料夾找到安裝檔案,然後雙擊安裝軟體。不過,在連線至計算機時,有些USB的固件會讓系統將其識別為CD,那么本次針對AutoRun的升級就對它們無效了。
自動運行/自動播放功能唯一得以保留的地方是在光碟載體上。
檔案組成1141424541441425241878/*-/8888¥%@¥……56去……%……¥#7686*¥%……
autorun.inf檔案是從Windows 95開始的,最初用在其安裝盤裡,實現自動安裝,以後的各版本都保留了該檔案並且部分內容也可用於其他存儲設備。
其結構有三個部分:[AutoRun] [AutoRun.Alpha] [DeviceInstall]
[AutoRun]適用於Windows95以上系統與32位以上CD-ROM,必選。
[AutoRun.alpha]適用於基於RISC的計算機光碟機,適用系統為Windows NT 4.0,可選。
[DeviceInstall]適用於Windows XP以上系統,可選。
超級巡警會把此檔案當成木馬。
詳解格式
DefaultIcon
含義:指定應用程式的默認圖示。
DefaultIcon=圖示路徑名[,序號]
參數:
圖示檔案名稱:應用程式的默認圖示路徑名,格式可以為.ico、.bmp、.exe、.dll。當檔案格式為.exe和.dll時,有時需要使用序號來指定圖示。
序號:當檔案格式為.exe和.dll時 ,檔案可能包括多餘一個圖示,此時需要使用序號來指定圖示,需要注意的是,序號是從0開始的。
備註:
應用程式的默認圖示將在windows
explorer核心的驅動顯示視窗中 替代設備的默認圖示來顯示。
圖示路徑名的默認目錄是設備根目錄
。
Icon
含義:指定設備顯示圖示。
格式:
Icon=圖示路徑名[,序號]
參數:
圖示檔案名稱:應用程式的默認圖示路徑名 ,格式可以為.ico、.bmp、.exe、.dll。當檔案格式為.exe和.dll時,有時需要使用序號來指定圖示。
序號:當檔案格式為.exe和.dll時,檔案可能包括多餘一個圖示,此時需要使用序號來指定圖示,需要注意的是,序號是從0開始的。
備註:
設備顯示圖示將在windows
explorer核心的驅動顯示視窗中替代設備的默認圖示來顯示。
圖示路徑名的默認目錄是設備根目錄
。
當存在應用程式默認圖示(DefaultIcon)時,本命令無效。
Label
含義:指定設備描述
格式:
Label=描述
參數:
描述:任意文字,可以包括空格。
備註:
設備描述將在windows explorer核心的驅動顯示視窗中替代設備的默認描述卷標來顯示。
在非windows explorer核心的驅動顯示視窗中(例如右擊設備選擇屬性)顯示的仍然是設備的卷標。
Open
含義:指定設備啟用時運行之命令行。
格式:
Open=命令行
(命令行:程式路徑名 [參數])
參數:
命令行:自動運行的命令行,必須是.exe、.com、.bat 檔案,其他格式檔案可以使用start.exe打開或使用ShellExecute命令。
備註:
命令行的起始目錄是設備根目錄和系統的$Path環境變數。
ShellExecute
含義:
指定設備啟用時執行檔案。(作業系統支持未知)
格式:
ShellExecute=執行檔案路徑名 [參數]
參數:
執行檔案路徑名:設備啟用時執行檔案路徑名。可以是任意格式檔案。系統會調用設定的程式執行此檔案。
參數:參數,根據執行檔案作調整
備註:
命令行的起始目錄是設備根目錄和系統的$Path環境變數。
Shell\關鍵字\Command
含義:
定義設備右鍵選單執行命令行。
格式:
Shell\關鍵字\Command=命令行
(命令行:程式路徑名 [參數])
參數:
命令行:自動運行的命令行,必須是.exe、.com、.bat檔案,其他格式檔案可以使用start.exe打開。
備註:
命令行的起始目錄是設備根目錄和系統的$Path環境變數。
Shell\關鍵字
含義:定義設備右鍵選單文本。
格式:
Shell\關鍵字=文本
參數:
關鍵字:用以標記選單,可以使用任何字元表示,包括空格。
文本:在右鍵選單中顯示的文本。可以使用任何字元,不能存在空格。
備註:
在同一Autorun.inf檔案中,不同右鍵選單關鍵字不同,相同右鍵選單關鍵字相同。
右鍵選單文本中可以使用&;設定加速鍵,&&;輸出一個&。
Shell關鍵字Command命令Shell關鍵字兩者缺一不可,順序無所謂。
當不存在Open、ShellExecute與Shell命令時,設備啟用時運行第一個設備右鍵選單指定命令。
Shell
含義:定義設備啟用時運行之設備右鍵命令。
格式:
Shell=關鍵字
參數:
關鍵字:標記過的選單關鍵字
備註:
Shell指定的關鍵字可以在AutoRun.inf檔案的任意部分。
Open、ShellExecute、Shell命令後定義的優先權高。
action
這個命令用來定義程式的名字,比方說:
[autorun]
shellexecute=rundll32 ght
action=打開資料夾
那么在右鍵選單顯示的就是"打開資料夾",而執行的命令就是"rundll32 ght"
注釋
與其他inf檔案一樣,";"之後的內容會被當做注釋,不參與編譯.
鑑別方法
這個病毒有著非常明顯的外部特徵,但是卻又常常容易被忽略。之所以容易忽略,是因為它並不會令電腦變慢,所以很多人就不注意到。但是如果我們在雙擊打開隨身碟時,不是在當前視窗打開,而是在新視窗中打開,那么則有可能中毒了。這時可以在“我的電腦”中右擊盤符,看其最上方的一項命令是什麼,如果為“Auto”,而不是正常的“打開”,那么中毒的可能性則進一步增大;但要確認中毒,還需要我們在地址欄中輸入E:\autorun.inf(E盤需換成實際的盤符),如果打開的檔案中open行後所跟的檔案是sxs.xls.exe這樣的檔案,那么則肯定中毒了。
或者在你的隨身碟中建個空的資料夾,命名為autorun.inf。如果你的隨身碟無法完成重命名,這說明你的隨身碟已中毒,這時,那么建議你先備份重要檔案,再格式化。原理是:大多數病毒是先建立autorun.inf再鍵入內容,病毒在進入C糟時就是通過這個資料夾里內部檔案來為媒介的。
應對策略
簡介
1、 在插入隨身碟時按住鍵盤 Shift 鍵直到系統提示“設備可以使用”,然後打開隨身碟時不要雙擊打開,也不要用右鍵選單的打開選項打開,而要使用資源管理器(打開我的電腦,按下上面的“資料夾”按鈕,或者開始-所有程式-附屬檔案-windows資源管理器)將其打開,或者使用快捷鍵Windows+E打開資源管理器後, 一定通過左側欄的樹形目錄打開可移動設備!(要養成這樣的良好習慣)
2、如果盤內有來路不明的檔案,尤其是 檔案名稱比較誘惑人的檔案,必須多加小心;需要特別提示的是,不要看到圖示是資料夾就理所當然是資料夾,不要看到圖示是記事本就理所當然是記事本, 偽裝圖示是病毒慣用伎倆。
3、要有 顯示檔案擴展名的習慣。方法:打開“我的電腦”,工具--資料夾選項--查看,去掉“隱藏已知檔案類型的擴展名”的勾,建議選擇顯示擴展名同時選上“顯示隱藏檔案”,去掉“不顯示系統檔案”的勾,這樣可以對病毒看得更清楚。有圖示的誘人的病毒檔案基本都是執行檔,顯示檔案擴展名之後,通過檔案名稱後的".exe"即可判斷出一個檔案執行檔,從而不會把偽裝的病毒執行檔誤認為是正常檔案或資料夾。
4、最後不管你用什麼辦法,或者用什麼軟體,插入隨身碟然後用這個方法檢驗你有沒有中Autorun.inf型病毒的風險。
下面這個批處理可以檢驗你插入或打開隨身碟時是否有激活病毒的風險。運行這個批處理,然後按提示操作。注,批處理使用方法:打開開始選單-附屬檔案-記事本,複製批處理內容進去,檔案-另外儲存為-檔案名稱:xxxxxxx.bat,保存類型:所有檔案-保存。然後找到你保存的位置,會出現一個批處理檔案,雙擊運行即可。@echo off&setlocal enabledelayedexpansion
echo 請在隨身碟和電腦沒有病毒的情況下插入一個隨身碟&set /p "d=請輸入隨身碟的盤符(比如輸入H): "
set "d=!d:~0,1!"&set "a=autorun.inf.!random!.tmp"
if exist !d!:\autorun.infattrib.exe-s -h -r !d!:\autorun.inf&ren !d!:\autorun.inf !a!
echo [autorun]&echo open=calc.exe&echo shellexecute=calc.exe&echo shell=explore
echo shell\open\command=calc.exe&echo shell\explore\command=calc.exe>!d!:\autorun.inf
echo 如今刪除並重新插入隨身碟&echo 打開隨身碟,如果出現“計算器”&echo 說明你有中Autorun.inf類型病毒的機會
echo 完成後按任意鍵繼續&pause>nul
del!d!:\autorun.inf&if exist !d!:\!a! ren !d!:\!a! autorun.inf&goto :eof
推薦其他方法
1、推薦一種徹底拒絕Autorun.inf類型病毒的方法.
運行下面這個批處理,就可以保證插入以及打開磁碟時不中病毒(不會占用計算機資源,運行一次即可對當前用戶名生效):
@ECHO off
REG.exe DELETE HKCU\Software\ Microsoft\Windows \CurrentVersion\Explorer \MountPoints2 /f
REG.exe ADD HKCU\Software \ Microsoft\Windows \CurrentVersion\Explorer \MountPoints2
ECHOHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion \Explorer\MountPoints2 []>%temp%\temp.txt
REGINI.exe %temp%\temp.txt
GOTO :eof
如果想再恢復Autorun.inf功能運行這個批處理:
@ECHO off
ECHO HKEY_CURRENT_USER\ Software\Microsoft\Windows\CurrentVersion \Explorer\MountPoints2 [7]>%temp%\temp.txt
REGINI.exe %temp%\temp.txt
REG.exe DELETE HKCU\Software\Micros oft\Windows\CurrentVersion\Explorer \MountPoints2 /f
REG.exe ADD HKCU\Software\Microsoft \Windows\CurrentVersion\Explorer \MountPoints2
GOTO :eof
2、對於偽裝型病毒,可以通過它的可執行屬性判斷出來。
除通過選擇資料夾選項“不隱藏擴展名”外,不喜歡顯示所有為檔案擴展名的用戶還可以通過這種方式將執行檔的特徵--".exe"擴展名顯示出來,這樣病毒偽裝成的檔案或資料夾會多出一個".exe"。
以管理員身份運行下面的批處理:
@ECHO off
REG.exe ADD HKCR\exefile /v AlwaysShowExt /tREG_SZ/f
TASKKILL.exe /imexplorer.exe/f
START %windir%\explorer.exe
GOTO :eof
要恢復不顯示exe擴展名運行這個批處理:
@ECHO off
REG.exe DELETE HKCR\exefile /v AlwaysShowExt /f
TASKKILL.exe /imexplorer.exe/f
START %windir%\explorer.exe
GOTO :eof
簡單預防方法
打開需要免疫的盤符,然後點擊免疫。移動硬碟先連線電腦後,然後打開程式。隨身碟、等其它移動設備如沒有檢測到盤符,可自行手動輸入盤符名稱,然後執行免疫。
我們知道,同一目錄下,兩個相同檔案名稱的檔案是不能共存的。經過免疫後的磁碟,會在磁碟的根目錄下生成一個防刪除、替換並隱藏的Autorun.inf資料夾,並自動設定為唯讀和系統隱藏屬性,以防止病毒藉助Autorun自動運行檔案進行病毒的自動傳播。
步驟如下:
新建一個空文本文檔,並更名為"1.bat"(擴展名改成bat),輸入如下命令:
x:(x表示盤符,如果是h盤,就輸入h:)
md autorun.inf
cd autorun.inf
md con\
(因為con資料夾在DOS中不可直接輸入命令,要加入“\”)
然後打開此檔案,就可免疫。可放到該隨身碟中,但不要放在隨身碟的資料夾中,否則會在這個資料夾里新建一個這樣的免疫資料夾。
當有病毒的移動磁碟插入電腦時,如果您發現系統提示:“無法寫入AUTORUN:訪問被拒絕。請確定磁碟未滿或未被防寫而且未被使用”時,此時病毒寫入電腦失敗。
如果您想刪除磁碟目錄下的此免疫檔案,請重新新建一個空文本文檔,並更名為"2.bat"(擴展名改成bat),輸入如下命令:
x:(x表示盤符,如果是h盤,就輸入h:)
cd autorun.inf
rd con\
cd..
rd autorun.inf
然後打開此檔案,就可解除免疫。可放到該隨身碟中,但不要放在隨身碟的資料夾中,否則無效。
註:在極小數系統下麵點執行後會提示選擇盤符,這不影響使用。
保護方法
運行windows最佳化大師,系統最佳化->;系統安全最佳化->;禁止光碟、u盤等所有磁碟自動運行->;最佳化,也可以使您的系統更安全。
保護隨身碟方法
隨身碟對病毒的傳播要藉助autorun.inf檔案的幫助,病毒首先把自身複製到u盤,然後創建一個autorun.inf,在你雙擊u盤時,會根據autorun.inf中的設定去運行u盤中的病毒,我們只要可以阻止autorun.inf檔案的創建,那么隨身碟上就算有病毒也只能躺著睡大覺了,大家可能也想到這個,但是不管給autorun.inf設定了什麼屬性,病毒都會更改它,我提到的方法就是,在根目錄下,刪除autorun.inf檔案,然後,根目下建立一個資料夾,名字就叫autorun.inf,這樣一來,因為在同一目錄下,病毒就無能為力,創建不了autorun.inf檔案了,以後會不會出新病毒,自動去刪資料夾,然後再建立檔案就不知道了,但至少現階段,這種方法是非常有效的。但是,由於這個資料夾可以被改名,因此許多新的木馬和病毒採用改名後再創建autorun.inf檔案來達到感染隨身碟的目的。不過對於安全意識強的用戶,用這種方法來判斷自己的隨身碟是否遭到感染也未嘗不可。不過這種方法也有缺陷。
事實表明,當前已經有新的病毒能夠有意識地檢測autorun.inf的存在,對於能直接刪除的則刪之,對於“無法刪除”的則用重命名的方式毀之。此時,你可以在autorun.inf資料夾下面,用CMD命令建立畸形資料夾就可以很好的防止autorun.inf被病毒刪除了。
還有一種很早就出現的以檔案名稱誘騙用戶點擊的病毒(如:重要檔案.exe,小說.exe)。對於以上這兩種傳播方式的病毒,僅僅建立autorun.inf資料夾是抵禦不了的。
命令簡介
[AutoRun.alpha]部分的命令與[AutoRun]部分的命令相同,只不過在基於RISC的計算機光碟機中,[AutoRun.alpha]優先權高於[AutoRun]
[DeviceInstall]部分命令及其詳解
DriverPath
含義:定義搜尋驅動程式目錄。
格式:
DriverPath=驅動程式路徑
參數:
驅動程式路徑:驅動程式所在路徑,包括其子路徑。
備註:
Windows XP以上支持。
僅CD-ROM支持
當系統監測到一個新的設備時,會提示用戶尋找設備的驅動程式。當用戶點選此CD-ROM時,當[DeviceInstall]部分存在時,系統會按照DriverPath所標記的路徑出尋找驅動程式。未標記的路徑系統將忽略查找。當[DeviceInstall]部分不存在時,系統將進行完全查找。
如果不希望系統在此CD-ROM中搜尋驅動程式,只加一行[DeviceInstall]不加DriverPath命令即可。
系統識別該檔案過程如下:
系統在插入隨身碟的時候會根據這個AUTORUN.INF檔案在註冊表[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2]下建立一個u盤的關聯項,使雙擊打開指定的程式(如病毒程式)。
Windows 2000/XP下如何刪除autorun.inf資料夾在命令提示符中,輸入rd (資料夾路徑)即可刪除資料夾
如資料夾內有內容可把rd替換為deltree來完成刪除。
========================================================================
清除autorun病毒的批處理檔案代碼
u盤插上
首先新建個文本文檔,在裡面添加以下內容:
@echo on
taskkill /imexplorer.exe/f
rem 結束病毒進程(以u.vbe病毒的進程w.exe為例)
taskkill /im w.exe
start reg add HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\EXplorer\Advanced /v ShowSuperHidden /t REG_DWORD /d 1 /f
start reg import kill.reg
del c:\autorun.* /f /q /as
del %SYSTEMROOT%\system32\autorun.* /f /q /as
del d:\autorun.* /f /q /as
del e:\autorun.* /f /q /as
del f:\autorun.* /f /q /as
del g:\autorun.* /f /q /as
del h:\autorun.* /f /q /as
del i:\autorun.* /f /q /as
del j:\autorun.* /f /q /as
del k:\autorun.* /f /q /as
del l:\autorun.* /f /q /as
startexplorer.exe
=====到這裡為止(這行不用複製)==========================
其次打開我的電腦,在選單欄里選擇“工具-資料夾選項-查看”,將“隱藏已知檔案類型的擴展名”前面的勾去掉-確定-退出視窗。
再次將剛才新建的那個檔案文檔的檔案名稱,由“新建文本文檔.txt”改為“u.vbe病毒消除.bat”。
最後直接雙擊它就能清除這個病毒了。
另外,對於防毒軟體產生的此類資料夾(如超級巡警),可用DOS命令快速乾淨的刪除,方法如下
假設autorun.inf資料夾是在D糟,操作如下:打開“開始”,選擇“運行”,輸入“CMD”,打開命令行視窗,在命令行視窗中輸入以下命令:
rd /s/q d:\autorun.inf (rd 也可以是rmdir,他們是相同的),然後回車即可,注意空格!
/s 表示刪除該目錄(資料夾),包括裡面所有的東西,也包括歧義資料夾,/q 表示不確認就直接刪除。
其他盤照此方法執行即可。