[转]U盘病毒解决方法

      计算机安全 2007-11-11 15:3
U盘病毒解决方法
   最近很多朋友都中了U盘病毒(AUTO病毒),我拿个U盘到同学那里拷点东西都中毒~哎,病毒无处不在啊!
   不过现在很多杀毒软件都能杀掉些比较常见的病毒,没杀毒软件或者杀毒软件被屏蔽的话那么就手动杀掉吧
   我就现在所学的点知识,随便写点~希望对大家有帮助
   一般的U盘病毒都是由2个文件组成:病毒文件(***.EXE)和Autorun.inf 文件   。其中病毒文件就是主文件(现我已知的U盘病毒都为木马程序),而Autorun.inf 文件则是触发病毒文件而建的文件,一般双击盘符都会触发“Autorun.inf”文件,一般Autorun文件格式如下(记事本可打开):
[AutoRun]                                                   
open=***.exe                                              //这句就是激活病毒的语句,打开磁盘根目录下的***。exe病毒
shell\open=打开(&O)                                     //右键打开盘(快捷键O)符时激活病毒
shell\open\Command=***.exe                    //命令打开磁盘根目录下***.exe文件
shell\open\Default=1                                   //打开的默认值为1,打开方式1
shell\explore=资源管理器(&X)                        //用资源管理器打开也会激活病毒
shell\explore\Command=***.exe               //桌面命令打开磁盘根目录下***.exe文件
而“Autorun.inf”里有条“open=***.exe”语句,作用就是激活病毒。不过我在学校机房解决过个病毒,不仅每个分区下有病毒文件和AUTO文件,还在C:\WINDOWS\system32下有相应的病毒存在。
此AUTO病毒被激活时,会在每个分区下建立一个病毒文件和一个AUTO文件,当有外存储设备出现时,比如移动硬盘和U盘,会在其中也建立一个病毒文件和一个AUTO文件。当移动设备到另一台主机上使用时,病毒就复制到另台主机上,从而进行传播。
   这些AUTO病毒通常都是“隐藏”属性的,而且病毒会改些注册表的值,让你无法在“文件夹选项”中选择“显示已经隐藏的文件”。所以你一般情况下都不会发现病毒的存在。
   下面就开始解决那些烦人的病毒吧`~
   首先要把被改掉注册表给改回来,这样才能使病毒显形(2种方法)
   先进入安全模式(或者你在任务管理器中把病毒的进程关掉,前提是你已经知道那个病毒了)
   1)在“开始”中打开“运行”输入“regedit”即可打开注册表
        在其中找到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL    这键,找到CheckedValue    看下属性是否为二进制,若是,则把其中的“0”改成“1”   若值为自符串类型,则把值删掉,自己新建一个 CheckedValue   值为 1

   2)打开记事本,写下以下信息:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL]
"CheckedValue"=dword:00000001

把次保存为“reg”文件,双击即可
   
   然后你进入每个分区下把病毒文件和Autorun文件删除即可,但由于AUTORUN.INF的存在,当双击、右键打开、资源管理器进入都会激活病毒,我试过命令提示符下操作,不过对不太熟悉的朋友也太麻烦了点。于是想出了个简单的办法:打开记事本,然后用记事本打开那几个被感染的分驱(注意:打开的时候,文件类型一定要选择“所有文件”,否则除了文本文件之外你什么都看不到)接着你就可以把那些可恶的病毒删除了。
   不过有些病毒很可恶~当你删除掉病毒文件时,你再进入分区时发现不能正常进入(双击无法进入),那是因为病毒改了磁盘的打开方式,解决方法有2个:
   1)打开“我的电脑”——》“工具”—》“文件夹选项”—》“文件类型”—》找到“(无)驱动器”—》“高级”—》新建      在“操作”中你可以写“open”然后在“用于执行操作的应用程序”中写“explorer.exe”
(注:EXPLORER是我们用的桌面)点确定即可,然后把其设置成默认
   2)打开注册表,找到
   HKEY_CLASSES_ROOT\Drive\shell   
   然后把SHELL下的值删除即可

   最后最好再查找下有没有病毒在其他地方落脚,比如System32文件夹下,有的话就KO掉。
   
   现在有种setuprs1病毒(lsass.exe)会生成一个“autorun..”的文件夹,怎么删都删不掉,解决方法:
   由于这个病毒比较特殊,因为命令提示符被病毒关联了,所以在把以下代码另存为.bat后,双击是不能运行的,请找到你自己电脑上c:\windows\system32\cmd.exe这个文件,把这个文件复制到桌面上,改名为test.exe然后双击test.exe,然后把保存的.bat文件拖到这个黑色窗口中,回车就可以了
@echo off
title Sa
color 0a
echo ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
echo                       病毒说明
echo     该病毒会在C:\windows\ 目录下建立以下文件
echo     cmd.exe.exe,lsass.exe,setuprs1.pif
echo     然后在每个盘建立autorun.inf 和runauto..文件
echo     autorun.inf这个文件用文本编辑器打开后的代码是
echo       [AutoRun]
echo       open=RUNAUT~1\autorun.pif
echo       shell\1=打开(&O)
echo       shell\1\Command=RUNAUT~1\autorun.pif
echo       shell\2\=浏览(&B)
echo       shell\2\Command=RUNAUT~1\autorun.pif
echo       shellexecute=RUNAUT~1\autorun.pif
echo     这个inf文件就是用来再次引发在runauto..目录下的autorun.pif
echo     这个病毒文件的,并且因为当用户用右键打开盘符时看到的第一项是
echo     “打开”,所以用户根本不会怀疑自己的电脑已经中了这个病毒了。
echo     并且这个runauto..的目录是用命令建立的,因为用了“.”这个特殊的
echo     字符,所以在资源管理下,是无法删除这个文件夹的。但是本人已经把
echo     删除这段代码的内容写在这里了,你将能轻易的删除这个文件夹。
echo ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
set /p k=按回车键开始杀毒...
taskkill /fi "services eq kkdc" /f
taskkill /im cmd.exe.exe /f
taskkill /im regedit.exe.exe /f
taskkill /im r.exe /f
sc stop kkdc
net stop kkdc
sc delete kkdc
attrib -s -h -r c:\windows\cmd.exe.exe
attrib -s -h -r c:\windows\lsass.exe
attrib -s -h -r c:\windows\setuprs1.pif
attrib -s -h -r c:\autorun.inf
attrib -s -h -r c:\r.exe
rd c:\runauto...\ /s /q
del c:\windows\cmd.exe.exe /q
del c:\windows\lsass.exe /q
del c:\windows\setuprs1.pif /q
del c:\autorun.inf /q
del c:\windows\r.exe /q
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\cmd.exe" /v Debugger /f
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\msconfig.exe" /v Debugger /f
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\regedit.exe" /v Debugger /f
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\regedt32.exe" /v Debugger /f
reg delete "HKLM\SYSTEM\ControlSet001\Enum\Root\LEGACY_KKDC" /f
reg delete "HKLM\SYSTEM\ControlSet002\Enum\Root\LEGACY_KKDC" /f
reg delete "HKLM\SYSTEM\ControlSet003\Enum\Root\LEGACY_KKDC" /f
reg delete "HKLM\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_KKDC" /f
reg delete "HKLM\SYSTEM\ControlSet001\Services\kkdc" /f
reg delete "HKLM\SYSTEM\ControlSet002\Services\kkdc" /f
reg delete "HKLM\SYSTEM\ControlSet003\Services\kkdc" /f
reg delete "HKLM\SYSTEM\CurrentControlSet\Services\kkdc" /f
reg delete "HKLM\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List" /v C:\WINDOWS\lsass.exe /f
reg delete "HKLM\SYSTEM\ControlSet002\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List" /v C:\WINDOWS\lsass.exe /f
reg delete "HKLM\SYSTEM\ControlSet003\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List" /v C:\WINDOWS\lsass.exe /f
reg delete "HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List" /v C:\WINDOWS\lsass.exe /f
reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL" /v CheckedValue /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL" /v CheckedValue /t reg_dword /d 1 /f
for /D %%d in (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do if exist %%d:\autorun.inf attrib -s -h -r %%d:\autorun.inf
for /D %%d in (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do if exist %%d:\autorun.inf del %%d:\autorun.inf /q
for /D %%d in (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do if exist %%d:\autorun.inf rd %%d:\autorun.inf /s /q
for /D %%d in (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do if exist %%d:\runaut~1 rd %%d:\runauto...\ /s /q
for /D %%d in (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do if exist %%d:\autorun.inf.tmp attrib -s -h -r %%d:\autorun.inf.tmp
for /D %%d in (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do if exist %%d:\autorun.inf.tmp del %%d:\autorun.inf.tmp /q
cls
echo ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
echo        病毒清除完毕,按回车键开始解决分区无法双击打开的问题.
echo ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
set /p test=
cls
@echo    off
title Sa--解决分区无法打开
color 0a
echo 例如:D盘无法打开则输入 d,你也可以
echo 输入d,e,f这样来同时对d,e,f等多个分区操作.
set /p input=[请输入无法打开的分区的盘符]
if /i "%input%"=="c" goto :特殊
for /d %%i in (%input%) do cacls %%i:\autorun.inf /c /e /p everyone:f
for /d %%i in (%input%) do attrib -s -h -r %%i:\autorun.inf
for /d %%i in (%input%) do del %%i:\autorun.inf /q
reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v SVOHOST /f
cls
reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL" /v CheckedValue /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL" /v CheckedValue /t reg_dword /d 1 /f
cls
chkdsk %input%: /f
cls
set /p tmp=操作结束,按回车键退出该程序。
:exit
exit
:特殊
attrib -s -h -r %input%:\autorun.inf
del %input%:\autorun.inf /q
echo 操作成功结束,请重启,然后就可以双击就可以打开了。
echo 如果重启之后,还是无法双击打开的话,说明你的电脑
echo 里还有病毒,请先杀毒。然后再运行该程序。
set /p tmp=操作结束,按回车键退出该程序 

  
写这个病毒的人为了隐藏病毒文件还真是独辟捷径啊......
标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commentauthor}
{commentauthor}
{commenttime}
{commentnum}
{commentcontent}
作者:
{commentrecontent}