解读SVCHOST.EXE 病毒or系统进程?
2010-03-21 22:50
375 查看
大家对
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”
命令
。
二、深入研究
windows
系统进程分为独立进程和共享进程两种,
“svchost.exe”
文件存在于
“%systemroot% system32”
目录下,它属于共享进程。随着
windows
系统服务不
断增多,为了节省系统资源,微软把很多服务做成共享方式,
交由
svchost.exe
进程来启动。但
svchost
进程只作为服务宿主,并
不能实现任何服务功能,那这些服务是如何实现的呢
?
专家介绍,这些系统服务是以动态链接库
(dll)
形式实现的
,它们把可执行程序指向
svchost
,由
svchost
调用相应服务的动态链接库来启动服务。
那
svchost
又怎么知道某个系统服务该调用哪个动态链接库呢
?
这是通过系统服务在注册表中设置的参数来实现。
三、实例应用
以
windows xp
为例,点击
“
开始
”/“
运行
”
,输入
“services.msc”
命令,弹出服务对话框,然后打开
“remote procedure call”
属性对话框,可以看到
rpcss
服务的可执行文件的路径为
“c:windowssystem32svchost -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:windowssystem32”
目录下,八哥网
(http://www.it8g.com
)
专家介绍发现该文件出现在其
他目录下就要小心了。
“w32.welchia.worm”
病毒存在于
“c:windowssystem32wins”
目录中,因此使用进程管理器查看
svchost
进程的执行文件路径就很容易发现系统是否感染了病毒
。
系统自带的任务管理器不能够查看进程的路径,可以使用第三方进程管理软件,如
“windows
优化大师
”
进程管理器,
通过这些工具就可很容易地查看到所有的
svchost
进程的执行文件路径,一旦发现其执行路径为不平常的位置就应该马上进行检测和处理。
推荐两篇文章:
RPC
编程
http://www.ibm.com/developerworks/cn/aix/library/au-rpc_programming/了解
TCP
系统调用序列
http://www.ibm.com/developerworks/cn/aix/library/au-tcpsystemcalls/
相关文章推荐
- zhudongfangyu.exe进程是360主动防御进程,用来监控电脑系统,防止电脑病毒出现并阻止病毒或木马的安全进程
- Svchost.exe进程详解及Svchost.exe病毒清除方法
- Svchost.exe进程详解及Svchost.exe病毒清除方法
- Windows 系统的进程中, svchost.exe是做什么的?
- 解析Svchost.exe和Explorer.exe两大系统进程
- Windows系统的Svchost.exe和Explorer.exe进程
- 判断进程Svchost.exe病毒
- svchost.exe是什么进程,svchost.exe是病毒吗?
- svchost.exe是什么进程,svchost.exe是病毒吗?
- 关于系统进程lsass.exe的病毒问题
- iexplore.exe是进程还是病毒
- 【转】使系统只运行一次exe进程
- 如何结束插入系统、应用程序进程进程中的病毒模块的问题
- 关于顽固进程scclient.exe、scguardc.exe、sccltui.exe和系统服务scclient、scguardc
- 快速清除winXP系统中explorer.exe病毒
- 用C#启动本地系统的进程(ping.exe)
- SVCHOST.exe进程详细分析
- 进程:Svchost.exe详解
- 揭开SVCHOST.exe进程之谜
- 揭开SVCHOST.exe进程之谜