安全基础之各类型病毒手工清除方法
来源:中国安全信息网 更新时间:2012-04-13

             

病毒种类很多,现在给大家介绍下常见类型的手工清除方法:

一、EXE后缀型病毒文件

这类病毒一般是以进程的方式运行,这类病毒一般是比较好被发现的。下边先说下这类病毒,是在哪里启动的。

1.注册表

如果发现计算机有不名的进程和异常情况请在注册表内下列地方进行核实找住可以的程序进行删除:






HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run 
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce 
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce 
HKEY_CURRENT_USER/Software\Microsoft\Windows\CurrentVersion\Run 
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/
Explorer/ShellFolders Startup="C:/windows/start menu/programs/startup

2.系统WIN.INI文件内

在win.ini文件中,“run=”和“load=”是可能加载“木马”程序的途径,必须仔细留心它们。一般情况下,它们的等号后面什么都没有,如果发现后面跟有路径与文件名不是你熟悉的启动文件,你的计算机就可能中上“木马”了。当然你也得看清楚,因为好多“木马”,如“AOL Trojan木马”,它把自身伪装成command.exe文件,如果不注意可能不会发现它不是真正的系统启动件。也许你会问了我是XP系统啊 怎么没有这个呢?不必担心给你个正确的你参考下就知道有没有可疑程序了。下边就是正常的WIN.INI(XP):

; for 16-bit app support
[fonts]
[extensions]
[mci extensions]
[files]
[Mail]
MAPI=1
CMCDLLNAME32=mapi32.dll
CMCDLLNAME=mapi.dll
CMC=1
MAPIX=1
MAPIXVER=1.0.0.1
OLEMessaging=1
[MCI Extensions.BAK]
aif=MPEGVideo
aifc=MPEGVideo
aiff=MPEGVideo
asf=MPEGVideo2
asx=MPEGVideo2
au=MPEGVideo
m1v=MPEGVideo
m3u=MPEGVideo2
mp2=MPEGVideo
mp2v=MPEGVideo
mp3=MPEGVideo2
mpa=MPEGVideo
mpe=MPEGVideo
mpeg=MPEGVideo
mpg=MPEGVideo
mpv2=MPEGVideo
snd=MPEGVideo
wax=MPEGVideo2
wm=MPEGVideo2
wma=MPEGVideo2
wmv=MPEGVideo2
wmx=MPEGVideo2
wvx=MPEGVideo2
wpl=MPEGVideo

3.SYSTEM.INI文件中

在system.ini文件中,在[BOOT]下面有个“shell=文件名”。正确的文件名应该是“explorer.exe”,如果不是“explorer.exe”,而是“shell= explorer.exe 程序名”,那么后面跟着的那个程序就是“木马”程序,就是说你已经中“木马”了。又会有人问了,我是XP系统怎么又不一样呢?给你个正常的XP系统的SYSTEM.INI,请大家可以参考下正常的SYSTEM.INI文件:

; for 16-bit app support
[drivers]
wave=mmdrv.dll
timer=timer.drv
[mci]
[driver32]
[386enh]
woafont=app936.FON
EGA80WOA.FON=EGA80WOA.FON
EGA40WOA.FON=EGA40WOA.FON
CGA80WOA.FON=CGA80WOA.FON
CGA40WOA.FON=CGA40WOA.FON

4.在Config.sys内

这类加载方式比较少见,但是并不是没有。如果上述方法都找不到的话,请来这里也许会有收获的。

5.在Autuexec.bat内

这类加载方式也是比较少见,建议跟Config.sys方法一样。

4和5的加载方式建议大家先必须确定计算机有病毒,并且上边的方法都找不到后,最后来这里进行查找。

总结:这类病毒是比较容易暴露的,建议手动删除时最好进入安全模式下,因为安全模式只运行WINDOWS必备的系统进程,EXE型病毒很容易暴露出来的,下边附上一张WINDOWS安全模式的必须进程表:

 
smss.exe Session Manager 
csrss.exe 子系统服务器进程 
winlogon.exe 管理用户登录 
services.exe 包含很多系统服务 
lsass.exe 管理 IP 安全策略以及启动 ISAKMP/Oakley (IKE) 和 IP 安全驱动程序。(系统服务) 产生
会话密钥以及授予用于交互式客户/服务器验证的服务凭据(ticket)。(系统服务) ->netlogon 
svchost.exe 包含很多系统服务 !!!->eventsystem,(SPOOLSV.EXE 将文件加载到内存中以便迟后打
印。) 
explorer.exe 资源管理器 (internat.exe 托盘区的拼音图标) 
system
System Idle Process 这个进程是不可以从任务管理器中关掉的。这个进程是作为单线程运行在每个处
理器上,并在系统不处理其他线程的时候分派处理器时间
taskmagr.exe 就是任务管理器了
 
二、DLL型后缀病毒
这类病毒大多是后门病毒,这类病毒一般不会把自己暴露在进程中的,所以说特别隐蔽,比较不好发现。启动DLL后门的载体EXE是不可缺少的,也是非常重要的,它被称为:Loader。如果没有Loader,那DLL后门如何启动呢?因此,一个好的DLL后门会尽力保护自己的Loader不被查杀。Loader的方式有很多,可以是为我们的DLL后门而专门编写的一个EXE文件;也可以是系统自带的Rundll32.exe和Svchost.exe,即使停止了Rundll32.exe和Svchost.exeDLL后门的主体还是存在的。现在大家也许对DLL有了个初步的了解了,但是不是后缀是DLL就是病毒哦,也不要因为系统有过多的Rundll32.exe和Svchost.exe进程而担心,因为他们不一定就是病毒,所以说这个病毒比较隐蔽,下边来介绍几种判别办法
1.Svchost.exe的键值是在“HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\Current
Version\Svchost”每个键值表示一个独立的Svchost.exe组。微软还为我们提供了一种察看系统正在运行在Svchost.exe列表中的服务的方法。以Windows XP为例:在“运行”中输入:cmd,然后在命令行模式中输入:tasklist /svc。如果使用的是Windows 2000系统则把前面的“tasklist /svc”命令替换为:“tlist -s”即可。如果你怀疑计算机有可能被病毒感染,Svchost.exe的服务出现异常的话通过搜索 Svchost.exe文件就可以发现异常情况。一般只会找到一个在:“C:\Windows\System32”目录下的Svchost.exe程序。如果你在其他目录下发现Svchost.exe程序的话,那很可能就是中毒了。
2.还有一种确认Svchost.exe是否中毒的方法是在任务管理器中察看进程的执行路径。但是由于在Windows系统自带的任务管理器不能察看进程路径,所以要使用第三方的进程察看工具。比如Windows优化大师中的Windows 进程管理 2.5。这样,可以发现进程到底调用了什么DLL文件.
3.普通后门连接需要打开特定的端口,DLL后门也不例外,不管它怎么隐藏,连接的时候都需要打开端口。我们可以用netstat –an来查看所有TCP/UDP端口的连接,以发现非法连接。大家平时要对自己打开的端口心中有数,并对netstat –an中的state属性有所了解。当然,也可以使用Fport来显示端口对应的进程,这样,系统有什么不明的连接和端口,都可以尽收眼底。
4.最关键的方法,对比法。安装好系统和所有的应用程序之后,备份system32目录下的EXE和DLL文件:打开CMD,来到WINNTsystem32目录下,执行:dir *.exe>exe.txt & dir *.dll>dll.txt,这样,就会把所有的EXE和DLL文件备份到exe.txt和dll.txt文件中;日后,如发现异常,可以使用相同的命令再次备份EXE和DLL文件(这里我们假设是exe0.txt和dll0.txt),并使用:
 
fc exe.txt exe0.txt>exedll.txt & fc dll.txt dll0.txt>exedll.txt
其意思为使用FC命令比较两次的EXE文件和DLL文件,并将比较结果保存到exedll.txt文件中。通过这种方法,我们就可以发现多出来的EXE和DLL文件,并通过文件大小,创建时间来判断是否是DLL后门。

DLL型病毒的清除

1.在确定DLL病毒的文件的话请尝试下边的移除方法:

a. 开始——运行——输入"Regedit" ;

b. 搜索“*.dll” ;

c. 删除搜索到的键值;

d. 重启;

e. 转到C:\Windows\System32\;

f. 删除*.dll;

2.到注册表下列地方寻找DLL的踪迹

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/WindowsNT/Currentversion/Svchost

3.如果上边的地方都找不到的话建议使用优化大势进程显示工具对RUNDLL32.EXE和SVCHOST.EXE里边运行的DLL程序进行核实找到病毒文件对其进行结束,然后在对他进行删除。建议使用第1种方法是非常有效的。

三、$NtUninstallQxxxxxxx$(x代表数字)型病毒

这个属于恶意脚本文件病毒。C盘下生成文件夹:$NtUninstallQxxxxxxx$(x代表数字)冒充微软更新补丁的卸载文件夹,并且在Win2000/XP下拥有系统文件级隐藏属性。下边说下清楚方法:

注册表手动删除启动项,参考:

HKEY_CURRENT_USER\Software\Microsoft\windows\CurrentVersion\Run 
HKEY_CURRENT_USER\Software\Microsoft\windows\CurrentVersion\Run 
删除:regedit -s C:\$NtUninstallQxxxxxxx$\WINSYS.cer 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce 
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce 
删除:Sys32,值为:C:\$NtUninstallQxxxxxxx$\WINSYS.vbs 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 
删除:Sys32,值为:regedit -s C:\$NtUninstallQxxxxxxx$\WINSYS.cer 
删除:internat.exe,值为:internat.exe 

删除整个$NtUninstallQxxxxxxx$ 目录

补充说明

系统文件夹(\WINNT或\Windows)下出现的如$NtUninstallQ823980$ 、$NtUninstallQ814033$ 这类文件夹是Windows Update 或安装微软补丁程序留下的卸载信息,用来卸载已安装的补丁,按补丁的编号如Q823980、Q814033 可以在微软的网站查到相应的说明。请注意与恶意代码建立的文件夹区分。

四、压缩文件杀毒工具对其不能删除

这类病毒大多是在IE临时文件里的,请对临时文件进行清除即可清楚此类病毒,建议定时清理IE临时文件。