庐山刺蒋:svchost.exe是什么东东哦,;怎么电脑一启动时就出来了好几个这样的茫茫

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/12 01:36:23

svchost . exe 是Windows XP系统 的一个核心进程。 svchost.exe 不单单只出现 在Window s XP中,在使用 NT 内核的 Windows系统 中都会有svchost.exe的存在。一般在 Windows 2000 中 svchost.exe进程 的数目为2个,而 在Windows XP中svchost.exe进程的数目就上升到了4个及4个以上。

权威解答:
svchost.exe是nt核心系统的非常重要的进程,对于2000、xp来说,不可或缺。很多病毒、木马也会调用它。所以,深入了解这个程序,是玩电脑的必修课之一。

大家对windows操作系统一定不陌生,但你是否注意到系统中“svchost.exe”这个文件呢?细心的朋友会发现windows中存在多个 “svchost”进程(通过“ctrl+alt+del”键打开任务管理器,这里的“进程”标签中就可看到了),为什么会这样呢?下面就来揭开它神秘的面纱。

发现

在基于nt内核的windows操作系统家族中,不同版本的windows系统,存在不同数量的“svchost”进程,用户使用“任务管理器”可查看其进程数目。一般来说,win2000有两个svchost进程,winxp中则有四个或四个以上的svchost进程(以后看到系统中有多个这种进程,千万别立即判定系统有病毒了哟),而win2003 server中则更多。这些svchost进程提供很多系统服务,如:rpcss服务(remote procedure call)、dmserver服务(logical disk manager)、dhcp服务(dhcp client)等。

如果要了解每个svchost进程到底提供了多少系统服务,可以在win2000的命令提示符窗口中输入“tlist -s”命令来查看,该命令是win2000 support tools提供的。在winxp则使用“tasklist /svc”命令。

svchost中可以包含多个服务

深入

windows系统进程分为独立进程和共享进程两种,“svchost.exe”文件存在于“%systemroot% system32”目录下,它属于共享进程。随着windows系统服务不断增多,为了节省系统资源,微软把很多服务做成共享方式,交由 svchost.exe进程来启动。但svchost进程只作为服务宿主,并不能实现任何服务功能,即它只能提供条件让其他服务在这里被启动,而它自己却不能给用户提供任何服务。那这些服务是如何实现的呢?

原来这些系统服务是以动态链接库(dll)形式实现的,它们把可执行程序指向 svchost,由svchost调用相应服务的动态链接库来启动服务。那svchost又怎么知道某个系统服务该调用哪个动态链接库呢?这是通过系统服务在注册表中设置的参数来实现。下面就以rpcss(remote procedure call)服务为例,进行讲解。

从启动参数中可见服务是靠svchost来启动的。

实例

以windows xp为例,点击“开始”/“运行”,输入“services.msc”命令,弹出服务对话框,然后打开“remote procedure call”属性对话框,可以看到rpcss服务的可执行文件的路径为“c:\windows\system32\svchost -k rpcss”,这说明rpcss服务是依靠svchost调用“rpcss”参数来实现的,而参数的内容则是存放在系统注册表中的。

在运行对话框中输入“regedit.exe”后回车,打开注册表编辑器,找到[hkey_local_machine systemcurrentcontrolsetservicesrpcss]项,找到类型为“reg_expand_sz”的键“magepath”,其键值为“%systemroot%system32svchost -k rpcss”(这就是在服务窗口中看到的服务启动命令),另外在“parameters”子项中有个名为“servicedll”的键,其值为“% systemroot%system32rpcss.dll”,其中“rpcss.dll”就是rpcss服务要使用的动态链接库文件。这样 svchost进程通过读取“rpcss”服务注册表信息,就能启动该服务了。

解惑

因为svchost进程启动各种服务,所以病毒、木马也想尽办法来利用它,企图利用它的特性来迷惑用户,达到感染、入侵、破坏的目的(如冲击波变种病毒“w32.welchia.worm”)。但windows系统存在多个svchost进程是很正常的,在受感染的机器中到底哪个是病毒进程呢?这里仅举一例来说明。

假设windows xp系统被“w32.welchia.worm”感染了。正常的svchost文件存在于“c:\windows\system32”目录下,如果发现该文件出现在其他目录下就要小心了。“w32.welchia.worm”病毒存在于“c:\windows\system32wins”目录中,因此使用进程管理器查看svchost进程的执行文件路径就很容易发现系统是否感染了病毒。windows系统自带的任务管理器不能够查看进程的路径,可以使用第三方进程管理软件,如“windows优化大师”进程管理器,通过这些工具就可很容易地查看到所有的svchost进程的执行文件路径,一旦发现其执行路径为不平常的位置就应该马上进行检测和处理。

由于篇幅的关系,不能对svchost全部功能进行详细介绍,这是一个windows中的一个特殊进程,有兴趣的可参考有关技术资料进一步去了解它。

Svchost.exe
Svchost.exe文件对那些从动态连接库中运行的服务来说是一个普通的主机进程名。Svhost.exe文件定位
在系统的%systemroot%\system32文件夹下。在启动的时候,Svchost.exe检查注册表中的位置来构建需要
加载的服务列表。这就会使多个Svchost.exe在同一时间运行。每个Svchost.exe的回话期间都包含一组服务,
以至于单独的服务必须依靠Svchost.exe怎样和在那里启动。这样就更加容易控制和查找错误。

Svchost.exe组是用下面的注册表值来识别。

HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost
每个在这个键下的值代表一个独立的Svchost组,并且当你正在看活动的进程时,它显示作为一个单独的
例子。每个键值都是REG_MULTI_SZ类型的值而且包括运行在Svchost组内的服务。每个Svchost组都包含一个
或多个从注册表值中选取的服务名,这个服务的参数值包含了一个ServiceDLL值。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Service

更多的信息
为了能看到正在运行在Svchost列表中的服务。
开始-运行-敲入cmd
然后在敲入tlist-s(tlist应该是win2k工具箱里的冬冬)
Tlist显示一个活动进程的列表。开关-s显示在每个进程中的活动服务列表。如果想知道更多的关于
进程的信息,可以敲tlistpid。

Tlist显示Svchost.exe运行的两个例子。
0SystemProcess
8System
132smss.exe
160csrss.exeTitle:
180winlogon.exeTitle:NetDDEAgent
208services.exe
Svcs:AppMgmt,Browser,Dhcp,dmserver,Dnscache,Eventlog,lanmanserver,LanmanWorkstation,LmHosts,Messenger,PlugPlay,ProtectedStorage,seclogon,TrkWks,W32Time,Wmi
220lsass.exeSvcs:Netlogon,PolicyAgent,SamSs
404svchost.exeSvcs:RpcSs
452spoolsv.exeSvcs:Spooler
544cisvc.exeSvcs:cisvc
556svchost.exeSvcs:EventSystem,Netman,NtmsSvc,RasMan,SENS,TapiSrv
580regsvc.exeSvcs:RemoteRegistry
596mstask.exeSvcs:Schedule
660snmp.exeSvcs:SNMP
728winmgmt.exeSvcs:WinMgmt
852cidaemon.exeTitle:OleMainThreadWndName
812explorer.exeTitle:ProgramManager
1032OSA.EXETitle:Reminder
1300cmd.exeTitle:D:\WINNT5\System32\cmd.exe-tlist-s
1080MAPISP32.EXETitle:WMSIdle
1264rundll32.exeTitle:
1000mmc.exeTitle:DeviceManager
1144tlist.exe
在这个例子中注册表设置了两个组。
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost:
netsvcs:Reg_Multi_SZ:EventSystemIasIpripIrmonNetmanNwsapagentRasautoRasmanRemoteaccessSENSSharedaccessTapisrvNtmssvc
rpcss:Reg_Multi_SZ:RpcSs

smss.exe

csrss.exe

这个是用户模式Win32子系统的一部分。csrss代表客户/服务器运行子系统而且是一个基本的子系统
必须一直运行。csrss负责控制windows,创建或者删除线程和一些16位的虚拟MS-DOS环境。

explorer.exe
这是一个用户的shell(我实在是不知道怎么翻译shell),在我们看起来就像任务条,桌面等等。这个
进程并不是像你想象的那样是作为一个重要的进程运行在windows中,你可以从任务管理器中停掉它,或者重新启动。
通常不会对系统产生什么负面影响。

internat.exe

这个进程是可以从任务管理器中关掉的。
internat.exe在启动的时候开始运行。它加载由用户指定的不同的输入点。输入点是从注册表的这个位置
HKEY_USERS\.DEFAULT\KeyboardLayout\Preload加载内容的。
internat.exe加载“EN”图标进入系统的图标区,允许使用者可以很容易的转换不同的输入点。
当进程停掉的时候,图标就会消失,但是输入点仍然可以通过控制面板来改变。

lsass.exe
这个进程是不可以从任务管理器中关掉的。
这是一个本地的安全授权服务,并且它会为使用winlogon服务的授权用户生成一个进程。这个进程是
通过使用授权的包,例如默认的msgina.dll来执行的。如果授权是成功的,lsass就会产生用户的进入
令牌,令牌别使用启动初始的shell。其他的由用户初始化的进程会继承这个令牌的。

mstask.exe
这个进程是不可以从任务管理器中关掉的。
这是一个任务调度服务,负责用户事先决定在某一时间运行的任务的运行。

smss.exe
这个进程是不可以从任务管理器中关掉的。
这是一个会话管理子系统,负责启动用户会话。这个进程是通过系统进程初始化的并且对许多活动的,
包括已经正在运行的Winlogon,Win32(Csrss.exe)线程和设定的系统变量作出反映。在它启动这些
进程后,它等待Winlogon或者Csrss结束。如果这些过程时正常的,系统就关掉了。如果发生了什么
不可预料的事情,smss.exe就会让系统停止响应(就是挂起)。

spoolsv.exe
这个进程是不可以从任务管理器中关掉的。
缓冲(spooler)服务是管理缓冲池中的打印和传真作业。

service.exe
这个进程是不可以从任务管理器中关掉的。
大多数的系统核心模式进程是作为系统进程在运行。

SystemIdleProcess
这个进程是不可以从任务管理器中关掉的。
这个进程是作为单线程运行在每个处理器上,并在系统不处理其他线程的时候分派处理器的时间。

taskmagr.exe
这个进程是可以在任务管理器中关掉的。
这个进程就是任务管理器。

winlogon.exe
这个进程是管理用户登录和推出的。而且winlogon在用户按下CTRL+ALT+DEL时就激活了,显示安全对话框。

winmgmt.exe
winmgmt是win2000客户端管理的核心组件。当客户端应用程序连接或当管理程序需要他本身的服务时这个进程初始化。

系统进程详解~~~~判断木马的贴心丸!!!(4043字)雨浪飘零(279828)于2003/06/27(14:04:29)..
最基本的系统进程(也就是说,这些进程是系统运行的基本条件,有了这些进程,系统就能正常运行):
smss.exeSessionManager
csrss.exe子系统服务器进程
winlogon.exe管理用户登录
services.exe包含很多系统服务
lsass.exe管理IP安全策略以及启动ISAKMP/Oakley(IKE)和IP安全驱动程序。(系统服务)产生会话密钥以及授予用于交互式客户/服务器验证的服务凭据(ticket)。(系统服务)
svchost.exe包含很多系统服务
svchost.exe
SPOOLSV.EXE将文件加载到内存中以便迟后打印。(系统服务)
explorer.exe资源管理器
internat.exe托盘区的拼音图标
.
.
附加的系统进程(这些进程不是必要的,你可以根据需要通过服务管理器来增加或减少):
mstask.exe允许程序在指定时间运行。(系统服务)
regsvc.exe允许远程注册表操作。(系统服务)
winmgmt.exe提供系统管理信息(系统服务)。
inetinfo.exe通过Internet信息服务的管理单元提供FTP连接和管理。(系统服务)
tlntsvr.exe允许远程用户登录到系统并且使用命令行运行控制台程序。(系统服务)
允许通过Internet信息服务的管理单元管理Web和FTP服务。(系统服务)
tftpd.exe实现TFTPInternet标准。该标准不要求用户名和密码。远程安装服务的一部分。(系统服务)
termsrv.exe提供多会话环境允许客户端设备访问虚拟的Windows2000Professional桌面会话以及运行在服务器上的基于Windows的程序。(系统服务)
dns.exe应答对域名系统(DNS)名称的查询和更新请求。(系统服务)
.
.
以下服务很少会用到,上面的服务都对安全有害,如果不是必要的应该关掉
tcpsvcs.exe提供在PXE可远程启动客户计算机上远程安装Windows2000Professional的能力。(系统服务)
支持以下TCP/IP服务:CharacterGenerator,Daytime,Discard,Echo,以及QuoteoftheDay。(系统服务)
ismserv.exe允许在WindowsAdvancedServer站点间发送和接收消息。(系统服务)
ups.exe管理连接到计算机的不间断电源(UPS)。(系统服务)
wins.exe为注册和解析NetBIOS型名称的TCP/IP客户提供NetBIOS名称服务。(系统服务)
llssrv.exeLicenseLoggingService(systemservice)
ntfrs.exe在多个服务器间维护文件目录内容的文件同步。(系统服务)
RsSub.exe控制用来远程储存数据的媒体。(系统服务)
locator.exe管理RPC名称服务数据库。(系统服务)
lserver.exe注册客户端许可证。(系统服务)
dfssvc.exe管理分布于局域网或广域网的逻辑卷。(系统服务)
clipsrv.exe支持“剪贴簿查看器”,以便可以从远程剪贴簿查阅剪贴页面。(系统服务)
msdtc.exe并列事务,是分布于两个以上的数据库,消息队列,文件系统,或其它事务保护资源管理器。(系统服务)
faxsvc.exe帮助您发送和接收传真。(系统服务)
cisvc.exeIndexingService(systemservice)
dmadmin.exe磁盘管理请求的系统管理服务。(系统服务)
mnmsrvc.exe允许有权限的用户使用NetMeeting远程访问Windows桌面。(系统服务)
netdde.exe提供动态数据交换(DDE)的网络传输和安全特性。(系统服务)
smlogsvc.exe配置性能日志和警报。(系统服务)
rsvp.exe为依赖质量服务(QoS)的程序和控制应用程序提供网络信号和本地通信控制安装功能。(系统服务)
RsEng.exe协调用来储存不常用数据的服务和管理工具。(系统服务)
RsFsa.exe管理远程储存的文件的操作。(系统服务)
grovel.exe扫描零备份存储(SIS)卷上的重复文件,并且将重复文件指向一个数据存储点,以节省磁盘空间。(系统服务)
SCardSvr.exe对插入在计算机智能卡阅读器中的智能卡进行管理和访问控制。(系统服务)
snmp.exe包含代理程序可以监视网络设备的活动并且向网络控制台工作站汇报。(系统服务)
snmptrap.exe接收由本地或远程SNMP代理程序产生的陷阱消息,然后将消息传递到运行在这台计算机上SNMP管理程序(系统服务).
UtilMan.exe从一个窗口中启动和配置辅助工具。(系统服务)
msiexec.exe依据.MSI文件中包含的命令来安装、修复以及删除软件。(系统服务)
.
.
详细说明:
win2k运行进程
Svchost.exe
Svchost.exe文件对那些从动态连接库中运行的服务来说是一个普通的主机进程名。Svhost.exe文件定位
在系统的%systemroot%\system32文件夹下。在启动的时候,Svchost.exe检查注册表中的位置来构建需要
加载的服务列表。这就会使多个Svchost.exe在同一时间运行。每个Svchost.exe的回话期间都包含一组服务,
以至于单独的服务必须依靠Svchost.exe怎样和在那里启动。这样就更加容易控制和查找错误。
Svchost.exe组是用下面的注册表值来识别。
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost
每个在这个键下的值代表一个独立的Svchost组,并且当你正在看活动的进程时,它显示作为一个单独的
例子。每个键值都是REG_MULTI_SZ类型的值而且包括运行在Svchost组内的服务。每个Svchost组都包含一个
或多个从注册表值中选取的服务名,这个服务的参数值包含了一个ServiceDLL值。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Service
更多的信息
为了能看到正在运行在Svchost列表中的服务。
开始-运行-敲入cmd
然后在敲入tlist-s(tlist应该是win2k工具箱里的冬冬)
Tlist显示一个活动进程的列表。开关-s显示在每个进程中的活动服务列表。如果想知道更多的关于
进程的信息,可以敲tlistpid。
Tlist显示Svchost.exe运行的两个例子。
0SystemProcess
8System
132smss.exe
160csrss.exeTitle:
180winlogon.exeTitle:NetDDEAgent
208services.exe
Svcs:AppMgmt,Browser,Dhcp,dmserver,Dnscache,Eventlog,lanmanserver,LanmanWorkstation,LmHosts,Messenger,PlugPlay,ProtectedStorage,seclogon,TrkWks,W32Time,Wmi
220lsass.exeSvcs:Netlogon,PolicyAgent,SamSs
404svchost.exeSvcs:RpcSs
452spoolsv.exeSvcs:Spooler
544cisvc.exeSvcs:cisvc
556svchost.exeSvcs:EventSystem,Netman,NtmsSvc,RasMan,SENS,TapiSrv
580regsvc.exeSvcs:RemoteRegistry
596mstask.exeSvcs:Schedule
660snmp.exeSvcs:SNMP
728winmgmt.exeSvcs:WinMgmt
852cidaemon.exeTitle:OleMainThreadWndName
812explorer.exeTitle:ProgramManager
1032OSA.EXETitle:Reminder
1300cmd.exeTitle:D:\WINNT5\System32\cmd.exe-tlist-s
1080MAPISP32.EXETitle:WMSIdle
1264rundll32.exeTitle:
1000mmc.exeTitle:DeviceManager
1144tlist.exe
在这个例子中注册表设置了两个组。
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost:
netsvcs:Reg_Multi_SZ:EventSystemIasIpripIrmonNetmanNwsapagentRasautoRasmanRemoteaccessSENSSharedaccessTapisrvNtmssvc
rpcss:Reg_Multi_SZ:RpcSs
smss.exe
csrss.exe
这个是用户模式Win32子系统的一部分。csrss代表客户/服务器运行子系统而且是一个基本的子系统
必须一直运行。csrss负责控制windows,创建或者删除线程和一些16位的虚拟MS-DOS环境。
explorer.exe
这是一个用户的shell(我实在是不知道怎么翻译shell),在我们看起来就像任务条,桌面等等。这个
进程并不是像你想象的那样是作为一个重要的进程运行在windows中,你可以从任务管理器中停掉它,或者重新启动。
通常不会对系统产生什么负面影响。
internat.exe
这个进程是可以从任务管理器中关掉的。
internat.exe在启动的时候开始运行。它加载由用户指定的不同的输入点。输入点是从注册表的这个位置
HKEY_USERS\.DEFAULT\KeyboardLayout\Preload加载内容的。
internat.exe加载“EN”图标进入系统的图标区,允许使用者可以很容易的转换不同的输入点。
当进程停掉的时候,图标就会消失,但是输入点仍然可以通过控制面板来改变。
lsass.exe
这个进程是不可以从任务管理器中关掉的。
这是一个本地的安全授权服务,并且它会为使用winlogon服务的授权用户生成一个进程。这个进程是
通过使用授权的包,例如默认的msgina.dll来执行的。如果授权是成功的,lsass就会产生用户的进入
令牌,令牌别使用启动初始的shell。其他的由用户初始化的进程会继承这个令牌的。
mstask.exe
这个进程是不可以从任务管理器中关掉的。
这是一个任务调度服务,负责用户事先决定在某一时间运行的任务的运行。
smss.exe
这个进程是不可以从任务管理器中关掉的。
这是一个会话管理子系统,负责启动用户会话。这个进程是通过系统进程初始化的并且对许多活动的,
包括已经正在运行的Winlogon,Win32(Csrss.exe)线程和设定的系统变量作出反映。在它启动这些
进程后,它等待Winlogon或者Csrss结束。如果这些过程时正常的,系统就关掉了。如果发生了什么
不可预料的事情,smss.exe就会让系统停止响应(就是挂起)。
spoolsv.exe
这个进程是不可以从任务管理器中关掉的。
缓冲(spooler)服务是管理缓冲池中的打印和传真作业。
service.exe
这个进程是不可以从任务管理器中关掉的。大多数的系统核心模式进程是作为系统进程在运行。
SystemIdleProcess
这个进程是不可以从任务管理器中关掉的。
这个进程是作为单线程运行在每个处理器上,并在系统不处理其他线程的时候分派处理器的时间。
winlogon.exe
这个进程是管理用户登录和推出的。而且winlogon在用户按下CTRL+ALT+DEL时就激活了,显示安全对话框。
winmgmt.exe
winmgmt是win2000客户端管理的核心组件。当客户端应用程序连接或当管理程序需要他本身的服务时这个进程初始化
taskmagr.exe
这个进程呀,哈哈,就是任务管理器了

Ctfmon.exe提供语音识别、手写识别、键盘、翻译和其它用户输入技术的支持。控制AlternativeUserInputTextProcessor(TIP)和MicrosoftOffice语言条。

wuauclt.exe是系统的自动更新进程。

它是服务的进程。打开计算机管理点击服务,便可以知道服务的作用和所运行的程序。但有时病毒也会是这个进程。可以用管理进程的软件查看。