进程识别亦真亦假Svchost.docx

上传人:scccc 文档编号:13922170 上传时间:2022-01-26 格式:DOCX 页数:5 大小:143.73KB
返回 下载 相关 举报
进程识别亦真亦假Svchost.docx_第1页
第1页 / 共5页
进程识别亦真亦假Svchost.docx_第2页
第2页 / 共5页
进程识别亦真亦假Svchost.docx_第3页
第3页 / 共5页
进程识别亦真亦假Svchost.docx_第4页
第4页 / 共5页
亲,该文档总共5页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《进程识别亦真亦假Svchost.docx》由会员分享,可在线阅读,更多相关《进程识别亦真亦假Svchost.docx(5页珍藏版)》请在三一文库上搜索。

1、一、紧急状况: 系统发现严重病毒小菜刚刚学习了进程的概念和知识,于是就打开“任务管理器”观察系统中的进程,这一看不要紧,还真发现了一个“病毒”Svchost.exe ,这家伙在系统进程列表中竟然有5个之多 ( 见图 1) ,于是小菜就逐个结束这些进程,没想到第二个进程结束后还会再生,而结束第四个进程时更离谱,系统提示“系统即将关机,离关机还有60秒”,进程再生、错误提示,这些典型的病毒“症状”更让小菜相信“Svchost.exe ”是病毒无疑,但无法结束进程,又该怎么清除病毒呢?小菜只好请来了大嘴。大嘴过来后还没看电脑,就先告诉小菜,系统中的Svchost.exe 进程是正常系统进程,不是病毒

2、,不仅仅是你,其他朋友一看到系统中这么多的Svchost.exe 进程,第一反应也感觉它是病毒,虽然系统中有多个Svchost.exe 进程是正常的,但也不保证都是正常的。听起来似乎有些矛盾?这让小菜更有些迷糊,大嘴坐下后给小菜详细讲了起来。二、松了口气:Svchost.exe 是台 “CD机 ”1.服务装在 “CD机 ”里Svchost.exe 是 NT 内核 (Windows 2000/XP/2003都属于 NT 内核操作系统)独有的进程,“ Svchost其”实就是 “ ServiceHost ”(服务宿主 )的缩写。微软官方对它的定义是:Svchost.exe 是从动态链接库 (DLL

3、) 中运行的服务的通用主机进程名称,通俗讲,它就是一个服务装载器。大家可以把每个服务想象成一张音乐CD,而 Svchost.exe 就是用来播放这种CD 的 CD 机。操作系统1 / 52.为什么用 “CD机 ”装服务由于 Windows 2000/XP 系统服务越来越多,以EXE 单独进程的形式启动所有服务会大大增加系统负担,为节省系统资源,微软将一些系统服务以动态链接库(DLL) 形式实现,而Svchost.exe 就是用来装载这些 DLL 文件以启动系统服务的程序。 没有人会为了发行一张 CD 而制作一台专用播放此 CD 的 CD 机,微软也一样。3.系统里有几台这样的“CD机”那为什么

4、系统进程列表中的 Svchost.exe 会有多个呢?微软为了让系统能更好地进行服务控制,就允许多个 Svchost.exe 进程同时运行,每个 Svchost.exe 进程可以包含一组服务,想像一下可以同时容纳 3 张甚至更多 CD 的多碟 CD 机。打开注册表HKEY_LOCAL_MACHINESoftwareMicrosoftWindows NTCurrentVersionSvchost主键,在窗口右侧可以看到许多键值,这里的每个键值都代表一组服务,键值数据则包含了该组服务下面运行的服务名称列表,每组服务启动时都会通过单独的Svchost.exe 进程来装载。Windows XP 中默认

5、共有 六组服务 (见图 2),其中 imgsvc 、NetworkService 、 rpcss、 termsvcs 四个组,它们都只有一个服务运行 ,这些服务启动后的 Svchost.exe 进程用户名为 “SYSTEM” 。而 LocalService和 netsvcs 组都启动了多个服务,它们的Svchost.exe 进程用户名分别为“ LOCAL SERVICE”和 “ NETWORD SERVICE” ,从图 1 中可以看到这种区别。当然了, 这六组服务通常并不都是启动状态的,根据系统启动的服务不同,反映在系统进程列表中的 Svchost.exe 进程数量也是不同的, Windows

6、 XP 会有四个到六个 Svchost.exe 进程,而 Windows 2000 通常则会有两个 Svchost.exe 进程。小提示:点击“开始运行” ,在运行框中输入“ CMD”回车,然后在打开的命令行窗口中输入“ Tasklist /svc ”( 不含引号 ) 命令,可以更直观地看到每个 Svchost.ex e 进程装载的服务名称列表 ( 见图 3) 。4. 获取每张“ CD”的详细信息2 / 5如果想更进一步了解Svchost.exe装载的这些服务都是什么功能,可以记下键值数据中的服务名称,例如“ RpcSs” ,接着打开注册表的HKEY_LOCAL_MACHINE System

7、CurrentControlSet Services ,再打开下面的“ RpcSs”子键,在右边的“ Description ”键值中就可以看到该服务的描述,而在“ ImagePath”键值数据中则可以看到这个服务的运行命令正是“ %SystemRoot%system32svchost -k rpcss ”( 见图 4) 。而在“ RpcSs”子键下还有一个“Parameters ”( 参数 ) 子键,其右边的“ ServiceDll ”键值数据“ %SystemRoot% system32 rpcss.dll ”则表明了 RpcSs 服务启动时调用的是系统目录下的“ Rpcss.dll ”文

8、件,这就好像你原来只知道CD中歌曲的歌名,现在又让你能够查到这首歌的演唱者。如果觉得通过注册表查询服务名称了解其属性不太方便,也可以使用“全能助手用Windows 服务管理专家” ( 以下简称“服务管理专家”) 来查询,运行软件后单击“All Win32 Services ”分支,在右侧服务列表中根据服务名称索引即可快速找到要查询的服务,单击服务名称,即可看到该服务的启动命令以及调用的DLL文件等相关信息( 见图 5) 。同时软件还专门设计了Svchost Group分支,可以快速查询LocalService和 netsvcs组中的服务详细信息。三、危机仍在 : 小心病毒的骗局由于 Svcho

9、st.exe进程的特殊性, 它隐藏了真正运行的程序的名称,在表面看到的只是Svchost.exe进程,这个特性同时也让许多病毒、木马有空可钻, 企图以此迷惑用户。 那么如何判断系统中的多个 Svchost.exe 进程是否正常呢?下面针对这类病毒常用的几种欺骗手法来进行分析。骗局 1: 利用假冒Svchost.exe名称的病毒程序火眼金睛 : 这种方式运行的病毒并没有直接利用真正的 Svchost.exe 进程,而是启动了另外一个名称同样是 Svchost.exe 的病毒进程,由于这个假冒的病毒进程并没有加载系统服务,它和真正的 Svchost.exe 进程是不同的,只需在命令行窗口中运行一下

10、“ Tasklist /svc”,如果看到哪个Svchost.exe进程后面提示的服务信息是“暂缺”( 见图 6) ,而不是一个具体的服务名,那么它就是病毒进程了,记下这个病毒进程对应的PID 数值 ( 进程标识符 ) ,即可在任务管理器的进程列表中找到它,结束进程后, 在 C 盘搜索 Svchost.exe文件,也可以用第三方进程工具直接查看该进程的路径,正常的 Svchost.exe文件是位于 %systemroot%System32 目录中的,而假冒的Svchost.exe病毒或木马文件则会在其他目录,例如“w32.3 / 5welchina.worm ”病毒假冒的Svchost.exe

11、就隐藏在 WindowsSystem32Wins目录中,将其删除,并彻底清除病毒的其他数据即可。骗局 2: 一些高级病毒则采用类似系统服务启动的方式,通过真正的Svchost.exe进程加载病毒程序, 而 Svchost.exe是通过注册表数据来决定要装载的服务列表的,所以病毒通常会在注册表中采用以下方法进行加载:添加一个新的服务组,在组里添加病毒服务名在现有的服务组里直接添加病毒服务名修改现有服务组里的现有服务属性,修改其“ServiceDll”键值指向病毒程序判断方法 : 病毒程序要通过真正的Svchost.exe进程加载, 就必须要修改相关的注册表数据,可 以打开 HKEY_LOCAL_

12、MACHINE Software Microsoft WindowsNT CurrentVersion Svchost,观察有没有增加新的服务组,同时要留意服务组中的服务列表,观察有没有可疑的服务名称,通常来说,病毒不会在只有一个服务名称的组中添加,往往会选择LocalService和 netsvcs这两个加载服务较多的组,以干扰分析,还有通过修改服务属性指向病毒程序的, 通过注册表判断起来都比较困难,这时可以利用前面介绍的服务管理专家,分别打开 LocalService和 netsvcs分支,逐个检查右边服务列表中的服务属性,尤其要注意服务描述信息全部为英文的,很可能是第三方安装的服务,同时

13、要结合它的文件描述、版本、公司等相关信息,进行综合判断。 例如这个名为PortLess BackDoor的木马程序, 在服务列4 / 5表中可以看到它的服务描述为“Intranet Services” ,而它的文件版本、公司、描述信息更全部为空 ( 见图 7) ,如果是微软的系统服务程序是绝对不可能出现这种现象的。从启动信息“C: WINDOWSSystem32svchost.exe -k netsvcs ” 中可以看出这是一款典型的利用Svchost.exe进程加载运行的木马,知道了其原理,清除方法也很简单了:先用服务管理专家停止该服务的运行,然后运行regedit.exe打开“注册表编辑器” ,删除 HKEY_LOCAL_MACHINE System CurrentControlSet ServicesIPRIP主键,重新启动计算机,再删除%systemroot%System32 目录中的木马源程序“svchostdll.dll”,通过按时间排序,又发现了时间完全相同的木马安装程序“PortlessInst.exe” ,一并删除即可。5 / 5

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1