我的系统每次启动都会有一个svchost.exe的进程占用100%,用杀毒软件查不出毒来
结束svchost.exe这个进程速度恢复正常,但扬声器就没有声音了,不知什么原因?
大家帮帮忙
其实Svchost.exe是Windows XP系统的一个核心进程。Svchost.exe不单单只出现在
Windows XP中,在使用NT内核的Windows系统中都会有Svchost.exe的存在。一般在Windows
2000中Svchost.exe进程的数目为2个,而在Windows XP中Svchost.exe进程的数目就上升到了
4个及4个以上。所以看到系统的进程列表中有几个Svchost.exe不用那么担心。
Svchost.exe到底是做什么用的呢?
首先我们要了解一点那就是Windows系统的中的进程分为:独立进程和共享进程这两种。
由于Windows系统中的服务越来越多,为了节约有限的系统资源微软把很多的系统服务做成了
共享模式。那Svchost.exe在这中间是担任怎样一个角色呢?
Svchost.exe的工作就是作为这些服务的宿主,即由Svchost.exe来启动这些服务。
Svchost.exe只是负责为这些服务提供启动的条件,其自身并不能实现任何服务的功能,也不
能为用户提供任何服务。Svchost.exe通过为这些系统服务调用动态链接库(DLL)的方式来
启动系统服务。
那Svchost.exe是病毒这种说法是任何产生的呢?
因为Svchost.exe可以作为服务的宿主来启动服务,所以病毒、木马的编写者也挖空心思
的要利用Svchost.exe的这个特性来迷惑用户达到入侵、破坏计算机的目的。
如何才能辨别哪些是正常的Svchost.exe进程,而哪些是病毒进程呢?
Svchost.exe的键值是在“HKEY_LOCAL_MACHINE\Software\Microsoft\Windows
NT\CurrentVersion\Svchost”,如图1所示。图1中每个键值表示一个独立的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程序的话,那很可能就是中
毒了。
还有一种确认Svchost.exe是否中毒的方法是在任务管理器中察看进程的执行路径。但是
由于在Windows系统自带的任务管理器不能察看进程路径,所以要使用第三方的进程察看工具
。
上面简单的介绍了Svchost.exe进程的相关情况。总而言之,Svchost.exe是一个系统的
核心进程,并不是病毒进程。但由于Svchost.exe进程的特殊性,所以病毒也会千方百计的入
侵Svchost.exe。通过察看Svchost.exe进程的执行路径可以确认是否中毒。
注:希望广大朋友不要进行非法用途,在这里解密木马捆绑是希望大家了解其原理。
如今网络上病毒肆虐,让电脑用户在应付病毒上花费了不少精力。当你使用杀毒软件查
杀病毒时,是否遇到查出了病毒,但是杀不掉的情况,原因何在?该如何处理呢?以下笔者对
此略作介绍。
◆系统还原文件
_restore文件夹是Windows Me/XP系统特有的系统还原文件夹,隐藏在该文件夹中的病毒
是不能直接清除的。当然这些病毒也不能直接发挥作用。要清除这些病毒,可以关闭Windows
系统的“系统还原”功能,清理系统还原点,或者直接删除_restore文件夹的内容。
◆疑似电脑病毒
有时杀毒软件会出现提示:unknown.com.tsr.virus。该提示中,unknown是“不明的”
意思,tsr是内存驻留的意思,本信息一般提示的是纯DOS环境下的可执行文件,表明杀毒软
件在该文件中发现了可疑代码,类似病毒,但是没有确定是什么病毒。
如果疑似病毒提示涉及Type-Win32代码,则表示可疑的32位代码的意思,是指Windows环
境下可疑的可执行代码。对于疑似病毒,可以直接删除该文件,或者将这些“疑似”的病毒
文件发送给反病毒软件公司,请求帮助。
◆exe 文件感染病毒
以.exe为扩展名称的文件是软件安装程序的部分文件,其中的病毒不能直接清除。只有
在软件完全安装成功后,方可清除。这有点类似于在COPY文件时发现了病毒的处理方法。
◆在DOS下清除病毒
对于在引导区发现的病毒,如POLYBOOT/WYX.b病毒,请使用干净的系统盘启动系统到DOS
,然后在DOS下杀毒即可清除。如果可感染引导区的病毒存在于文件中,可以直接删除该文件
。
◆系统初始文件中引用病毒
杀毒时出现如下提示:
-----------------------------------------------------------------------------------------------
QUOTE:
C:\Windows\brasil.pif worm.win32.opasoft.a病毒 已删除
C:\Windows\instit.bat worm.win32.opasoft.a病毒 已删除
C:\Windows\alevir.exe worm.win32.opasoft.a病毒 已删除
C:\Windows\marco.scr worm.win32.opasoft.a病毒 已删除
C:\Windows\SCRSVR.exe worm.win32.opasoft.a病毒 已删除
------------------------------------------------------------------------------------------------
杀毒后,重启动电脑时出现很多找不到文件的信息,而且再次杀毒时提示依旧,病毒还
是存在。这些顽固病毒的引用应该是在win.ini文件中,请单击“开始→运行”,键入
“sysedit”,按下回车键,编辑win.ini,删除对病毒的引用行。
◆病毒最新变种
杀毒软件查出的是其病毒库中不存在的新型病毒,请将杀毒软件的病毒库升级到最新,然后
再查杀。
--------------------
一款好的防火墙并不能发现所有病毒;一个好的杀毒软件并不能歼灭所有的带毒程序!
遇到这些情况我们该做何处理呢?很简单——手工杀毒。而要论到手工杀毒,就不能不提到
系统进程的妙用了。
进程、病毒?
书上说:“进程为应用程序的运行实例,是应用程序的一次动态执行。”看似高深,我
们可以简单地理解为:它是操作系统当前运行的执行程序。在系统当前运行的执行程序里包
括:系统管理计算机个体和完成各种操作所必需的程序;用户开启、执行的额外程序,当然
也包括用户不知道,而自动运行的非法程序(它们就有可能是病毒程序)。
危害较大的可执行病毒同样以“进程”形式出现在系统内部(一些病毒可能并不被进程
列表显示,如“宏病毒”),那么及时查看并准确杀掉非法进程对于“手工杀毒有起着关键
性的作用。
操作系统如何打开进程列表?
要通过进程列表查看系统是否染毒,必须打开当前的执行程序进程列表,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的进程资料给大家:
QUOTE:
进程名 描述
smss.exe Session Manager
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 支持“剪贴簿查看器”,以便可以从远程剪贴簿查阅剪贴页面。
问:我的系统进程里有四个svchost.exe,听说有些木马就是伪装成系统的进程,不知道这个
是不是?
答:svchost.exe 存在 %windir%\system32\wins 下。
如果怀疑svchost.exe是病毒可以通过以下方法来证实是不是病毒:
1.可以去 wins 目录找找有无多余,
2.可以搜搜windows文件夹中 svchost.exe 看看有几个(应为1个),
3.tlist -s察看,
4.也可以下载一个可以看带路径名的进程的浏览工具。
问:svchost.exe是起什么作用的进程?
答:Svchost.exe文件对那些从动态连接库中运行的服务来说是一个普通的主机进程名。
Svhost.exe文件定位在系统的%systemroot%\system32文件夹下。在启动的时候,
Svchost.exe检查注册表中的位置来构建需要加载的服务列表。这就会使多个Svchost.exe在同一时间运行。每个Svchost.exe的回话期间都包含一组服务,以至于单独的服务必须依*Svchost.exe怎样和在那里启动。这样就更加容易控制和查找错误。
Svchost.exe 组是用下面的注册表值来识别。
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Svchost每个在这个键下的值代表一个独立的Svchost组,并且当你正在看活动的进程时,它显示作为一个单独的例子。每个键值都是REG_MULTI_SZ类型的值而且包括运行在Svchost组内的服务。每个Svchost组都包含一个或多个从注册表值中选取的服务名,这个服务的参数值包含了一个ServiceDLL值。HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Service msdtc.exe ---并列事务,是分布于两个以上的数据库,消息队列,文件系统或其他事务保护资源管理器。
grovel.exe ---扫描零备份存储(SIS)卷上的重复文件,并且将重复文件指向一个数据存储点,以节省磁盘空间(只对 NTFS 文件系统有用)。
snmp.exe ---包含代理程序可以监视网络设备的活动并且向网络控制台工作站汇报。
以上这些进程都是对计算机运行起至关重要的,千万不要随意“杀掉”,否则可能直接影响系统的正常运行