评论对象: 海市蜃楼 | 2007/7/5 13:20:39
评论言论:
一款好的防火墙并不能发现所有病毒;一个好的杀毒软件并不能歼灭所有的带毒程序!遇到这些情况我们该做何处理呢?很简单——手工杀毒。而要论到手工杀毒,就不能不提到系统进程的妙用了。
一款好的防火墙并不能发现所有病毒;一个好的杀毒软件并不能歼灭所有的带毒程序!遇到这些情况我们该做何处理呢?很简单——手工杀毒。而要论到手工杀毒,就不能不提到系统进程的妙用了。
进程、病毒?
书上说:"进程为应用程序的运行实例,是应用程序的一次动态执行。"看似高深,我们可以简单地理解为:它是操作系统当前运行的执行程序。在系统当前运行的执行程序里包括:系统管理计算机个体和完成各种操作所必需的程序;用户开启、执行的额外程序,当然也包括用户不知道,而自动运行的非法程序(它们就有可能是病毒程序)。
危害较大的可执行病毒同样以"进程"形式出现在系统内部(一些病毒可能并不被进程列表显示,如"宏病毒"),那么及时查看并准确杀掉非法进程对于"手工杀毒有起着关键性的作用。
操作系统如何打开进程列表?
要通过进程列表查看系统是否染毒,必须打开当前的执行程序进程列表,Microsoft的每种系统都有相应的打开方法,但能够显示的能力却因(系统)不同,有所差异:
1. Windows 98 /Me系统
打开系统进程的方式很简单,快捷键"Ctrl+Alt+Delete"(如图1),这个窗口大家应该比较熟悉,使用Windows系统的用户都知道用这个方法来关闭程序,不过它同样用于显示系统进程,只是Windows 98系统较初级,对进程的显示局限于名称,且里面所显示的还有打开的文件及目录名,查看时易混淆。Windows Me的进程打开方式和Windows 98相同。
Windows 9x系统打开的进程列表混乱且不完全,显然不便于查看系统的具体进程状况,所以建议使用一些工具程序来为Windows 9x系统显示进程,如"Windows优化大师",在"优化大师"的"系统安全优化"项内打开"进程管理",在图2所示的"Windows 进程管理"窗口内,可以详细查看当前计算机所运行的所有进程,及具体程序所在的位置,这样更方便完成后面要介绍的如何利用进程进行查毒、杀毒。
2. Windows 2000/ XP/2003系统
Windows 2000、Windows XP、Windows 2003打开进程窗口的方式与Windows 9x系统相同,只是三键后打开的是"Windows 任务管理器"窗口,需要选择里面的"进程"项。Windows 2000系统只显示具体进程的全名,占用的内存量;Windows XP、Windows 2003系统相比Windows 2000会显示该进程归属于那个用户下,如操作系统所必须的基础程序,会在后面的"用户名"内显示为"SYSTEM",由用户另外开启的程序则用户名为当前的系统登录用户名。
通过进程发现、处理病毒
在介绍具体的查毒和杀毒前,笔者先回答开篇提出的两个问题。为什么杀毒软件并不能全面的查找和杀掉病毒?首先,病毒防火墙是通过对程序进行反汇编,然后与自己的病毒库进行对比来查找病毒,如果病毒较新,而杀毒软件又未能及时升级便不能识别病毒。其次,杀毒软件在发现病毒后,如果是独立的可执行病毒程序,会选择直接删除的处理方式,而病毒如果被当作进程执行了,杀毒软件就无能为力了,因为它没有功能和权限先停止掉系统的这些进程,被当作进程执行的程序是不能被删除的(这也是大家在删除一个程序时,提示该程序正在被使用不能删除的原因)。所以在使用杀毒软件杀毒时,才会有杀毒完成后,又出现病毒提示的原因。
回到原来话题上!通过进程如何发现和杀掉病毒呢?由前面的知识介绍可知,Windows 9X和Windows 2000系统只能显示进程的名称,这对判断该进程是否是病毒还不够,如果要准确的断定病毒,最好使用前面介绍的"Windows优化大师"来查看进程程序的源路径,如果是"C:\windows\system"下的一些未知的"EXE"那便极有病毒的可能性了。Windows XP和Windows 2003系统,进程后会有"用户名"的显示,病毒是不可能获得"SYSTEM"权限的,所以应注意"用户名"是当前登录用户的进程,一旦发现是病毒,可以立即"杀掉"。这里介绍两个技巧:
1.发现可疑进程后,利用Windows的查找功能,查找该进程所在的具体路径,通过路径可以知道该进程是否合法,譬如由路径"C:\Program Files\3721\assistse.exe"知道该程序是3721的进程,是合法的。
2.在对进程是否病毒拿不定主意时,可以复制该进程的全名,如:"xxx.exe"到googl.com或baidu.com这样的全球搜查引擎上进行搜查,如果是病毒会有相关的介绍网页。
确定了该进程是病毒,首先应该杀掉该进程,对于Windows 9x系统,选中该进程后,点击下面的"结束任务"按钮,Windows 2000、Windows XP、Windows 2003系统则在进程上单击右键在弹出菜单上选择"结束任务"。"杀掉"进程后找到该进程的路径删除掉即可,完成后最好在进行一次杀毒,这样就万无一失了。
一次利用进程杀毒的具体过程是这样的:"通过进程名及路径判断是否病毒——杀掉进程——删除病毒程序",为了让读者更好的判断进程,在这里补充一些Windows的进程资料给大家:
进程名 描述
smss.exe Session KManager
csrss.exe 子系统服务器进程
winlogon.exe 管理用户登录
services.exe 包含很多系统服务
lsass.exe 管理 IP 安全策略以及启动 ISAKMP/Oakley (IKE) 和 IP 安全驱动程序。
svchost.exe Windows 2000/XP 的文件保护系统
SPOOLSV.EXE 将文件加载到内存中以便迟后打印。
explorer.exe 资源管理器
internat.exe 托盘区的拼音图标
mstask.exe 允许程序在指定时间运行。
regsvc.exe 允许远程注册表操作。(系统服务)→remoteregister
tftpd.exe 实现 TFTP Internet 标准。该标准不要求用户名和密码。
llssrv.exe 证书记录服务
ntfrs.exe 在多个服务器间维护文件目录内容的文件同步。
RsSub.exe 控制用来远程储存数据的媒体。
locator.exe 管理 RPC 名称服务数据库。
clipsrv.exe 支持"剪贴簿查看器",以便可以从远程剪贴簿查阅剪贴页面。
msdtc.exe 并列事务,是分布于两个以上的数据库,消息队列,文件系统或其他事务保护资源管理器。
grovel.exe 扫描零备份存储(SIS)卷上的重复文件,并且将重复文件指向一个数据存储点,以节省磁盘空间(只对 NTFS 文件系统有用)。
snmp.exe 包含代理程序可以监视网络设备的活动并且向网络控制台工作站汇报。
以上这些进程都是对计算机运行起至关重要的,千万不要随意"杀掉",否则可能直接影响系统的正常运行。