TASKLIST高手全面认识Svchost.exe进程

上传人:宝路 文档编号:17049515 上传时间:2017-11-10 格式:DOC 页数:6 大小:180.97KB
返回 下载 相关 举报
TASKLIST高手全面认识Svchost.exe进程_第1页
第1页 / 共6页
TASKLIST高手全面认识Svchost.exe进程_第2页
第2页 / 共6页
TASKLIST高手全面认识Svchost.exe进程_第3页
第3页 / 共6页
TASKLIST高手全面认识Svchost.exe进程_第4页
第4页 / 共6页
TASKLIST高手全面认识Svchost.exe进程_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《TASKLIST高手全面认识Svchost.exe进程》由会员分享,可在线阅读,更多相关《TASKLIST高手全面认识Svchost.exe进程(6页珍藏版)》请在金锄头文库上搜索。

1、TASKLIST 开放分类: dos 命令、进程管理Tasklist 命令用来显示运行在本地或远程计算机上的所有进程,带有多个执行参数。使用格式Tasklist /S system /U username /P password /M module | /SVC | /V /FI filter /FO format /NH参数含义/S system指定连接到的远程系统。/U domainuser指定使用哪个用户执行这个命令。/P password为指定的用户指定密码。/M module列出调用指定的 DLL 模块的所有进程。如果没有指定模块名,显示每个进程加载的所有模块。/SVC显示每个进程中

2、的服务。/V显示详细信息。/FI filter显示一系列符合筛选器指定的进程。/FO format指定输出格式,有效值:TABLE、LIST、CSV。/NH指定输出中不显示栏目标题。只对 TABLE 和 CSV 格式有效。应用实例。1.查看本机进程在“命令提示符”中输入 Tasklist 命令即可显示本机的所有进程(图 1)。本机的显示结果由 5 部分组成:图像名(进程名)、PID、会话名、会话#和内存使用。2.查看远程系统的进程在命令提示符下输入“Tasklist /s 218.22.123.26 /u jtdd /p 12345678”(不包括引号)即可查看到 IP 地址为 218.22.

3、123.26 的远程系统的进程(图 2)。其中/s 参数后的 “218.22.123.26”指要查看的远程系统的 IP 地址,/u 后的“jtdd”指 Tasklist 命令使用的用户账号,它必须是远程系统上的一个合 法账号,/p 后的“12345678”指 jtdd 账号的密码。注意:使用 Tasklist 命令查看远程系统的进程时,需要远程机器的 RPC 服务的支持,否则,该命令不能正常使用。3.查看系统进程提供的服务Tasklist 命令不但可以查看系统进程,而且还可以查看每个进程提供的服务。如查看本机进程 SVCHOST.EXE 提供的服务,在命令提示符下输 入“Tasklist /s

4、vc”命令即可(图 3)。你会惊奇地发现,有 4 个 SVCHOST.EXE 进程,而总共有二十几项服务使用这个进程。对于远程系统来说,查看系统服务也很简单,使用“Tasklist /s 218.22.123.26 /u jtdd /p 12345678 /svc”命令,就可以查看 IP 地址为218.22.123.26 的远程系统进程所提供的服务。4.查看调用 DLL 模块文件的进程列表要查看本地系统中哪些进程调用了 shell32.dll 模块文件,只需在命令提示符下输入“Tasklist /m shell32.dll”即可显示这些进程的列表。5.使用筛选器查找指定的进程在命令提示符下输入

5、“TASKLIST /FI USERNAME ne NT AUTHORITYSYSTEM /FI STATUS eq running”,就可以列出系统中正在运行的非 SYSTEM 状态的所有进程。其中“/FI”为筛选器参数,“ne”和“eq”为关系运算符“不相等”和 “相等”。综合应用之结束进程一、Tasklist谈到“Tasklist”命令,我们就不得不提到它的孪生兄弟“Taskkill”命令,顾名思义,它是用来关掉进程的。要关掉本机的 notepad.exe 进程,有两种方法:1、先使用 Tasklist 查找它的 PID,假设系统显示本机notepad.exe(notepad.exe 是

6、个病毒性程序,很难删除,一般在 C: /windows/system32 下)进程的 PID 值为 1132,然后运行“Taskkill /pid 1132”命令即可。其中“/pid”参数后面是要终止进程的 PID 值。2、直接运行“Taskkill /IM notepad.exe”命令,其中“/IM”参数后面为进程的图像名。 二、NTSD系统 debug 级的 ntsd,很多进程 Tasklist 是杀不了的,但是用 ntsd 就可以,基本上除了 WINDOWS 系统自己的管理进程,ntsd 都可以杀掉,不过有些rootkit 级别的超级木马就无能为力了,不过幸好这类木马还是很少的。1、利用

7、进程的 PID 结束进程命令格式:ntsd -c q -p pid 命令范例: ntsd -c q -p 1332 (结束 explorer.exe 进程)2、利用进程名结束进程命令格式:ntsd -c q -pn *.exe (*.exe 为进程名,exe 不能省)命令范例:ntsd -c q -pn explorer.exe很多朋友对 Svchost.exe 进程都不太了解,有时在任务管理器中一旦看到有多个该进程(图 1 中有 6 个),就以为自己的电脑中了病毒或木马,其实并 非如此!正常情况下,windows 中可以有多个 Svchost.exe 进程同时运行,例如 Windows 20

8、00 至少有 2 个 Svchost 进程,Windows XP 中有 4 个以上,Windows 2003 中则有更多,所以当你看到多个 Svchost 进程时,未必就是病毒! Svchost.exe 进程是干什么的? Svchost.exe 文件存在于“%system root%system32”(例如C:Windowssystem32)目录下,它是 Windows NT 核心的重要进程(Windows 9X 没有该进程),专门为系统启动各种服务的。例如 Svchost.exe 调用rpcss.dll 文件,就会启动 rpcss 服务(remote procedure call)。 Svc

9、host.exe 实际上是一个服务宿主,它本身并不能给用户提供任何服务,但是可以用来运行动态链接库 DLL 文件,从而启动对应的服务。Svchost.exe进程可以同时启动多个服务。Svchost 是如何启动系统服务的? 由于系统服务都是以动态链接库(DLL)形式实现的,它们把可执行程序指向Svchost,因此 Svchost 只要调用某个动态链接库,即可 启动对应的服务。那么 Svchost 启动某服务时,又是如何知道应该调用哪个动态链接库?这是由于系统服务在注册表中都设置了相关参数,因此 Svchost 通过读取某服务在注册表中的信息,即可知道应该调用哪个动态链接库,从而启动该服务。 下面

10、我们以 Svchost 启动 helpsvc(Help and Support)服务为例,介绍其启动服务的方法。在 Windows XP 中点击“开始”“运行”,输入“services.msc”命令,弹出服务对话框,然后双击打开“Help and Support”服务属性对话框,可以看到 helpsvc 服务的可执行文件的路径为“C:WINDOWSSystem32svchost.exe -k netsvcs” (如图 2),说明helpsvc 服务是依靠 SVCHOST 调用“netsvcs”参数来实现的,而参数的内容则是存放在系统注册表中的。 在运行对话框中输入“regedit.exe”后回

11、车,打开注册表编辑器,找到HKEY_LOCAL_MACHINESYSTEM CurrentControlSetServiceshelpsvc项,找到类型为“REG_EXPAND_SZ”的键“magePath”,其键 值为“%SystemRoot%System32svchost.exe -k netsvcs”(这就是在服务窗口中看到的服务启动命令),另外在“Parameters”子项中有个名为“ServiceDll”的键,其值为“% WINDIR%PCHealthHelpCtrBinariespchsvc.dll”,其中“pchsvc.dll”就是 helpsvc 服务要 使用的动态链接库文件。

12、这样 SVCHOST 进程通过读取“helpsvc”服务注册表信息,就能启动该服务了。 Svchost 到底启动了哪些服务? 如果你想了解每个 SVCHOST 进程当前到底提供了哪些系统服务,可以在命令提示符下输入命令来查看。例如在 Windows XP 中,打开“命令提示符”,键入 tasklist /svc 命令查看;在 Windows 2000 中,则输入“Tlist -S”命令来查看。 如果你在 Windows XP 中,想得到所有进程的详细信息,可以打开“命令提示符”,键入tasklist /svcabc.txt 命令,于是在当前目录中,将会生成一个 abc.txt 文件,其内容就是

13、当前正在运行的所有进程情况,例如进程名、PID 号、该进程启动了哪些服务。如何发现 Svchost 进程有问题? 由于 Svchost 进程可以启动各种服务,因此病毒、木马也经常伪装成系统的 DLL 文件,使 Svchost 调用它,从而进入内存中运行、感染和控制电脑。 建议你使用“Windows 优化大师”进程管理器(可以到个人电脑的下载频道 http:/ 的“系统工具”中去下载),查看所有 Svchost 进程的执行文件路径(如图 3),正常的 Svchost 文件应该存在于“c:Windows system32”目录下,如果你发现其执行路径在其他目录下,就有可能染上了病毒或木马了,应该马

14、上进行检测和处理。 Svchost 进程杀不掉怎么办? 如果有些 Svchost 进程,你在任务管理器中无法关闭之,可以使用 ntsd 命令来杀掉它,方法如下: 首先需要了解欲杀的 Svchost 进程,其 PID 是多少?在 Windows XP 下,按Ctrl+Alt+Del 打开任务管理器,点击“进程选项卡”“查看”“选择列”,在弹出的窗口中(图 4),勾选“PID(进程标识 符)”,然后回到任务管理器中,即可看见 PID 了(例如要杀的 Svchost 进程,其 PID 是 844)。 接下来关闭该进程。点击“开始”“程序”“附件”“命令提示符”,在命令提示符下,输入命令 ntsd -

15、c q -p 844 即可杀掉 Svchost 进程(PID是 844)。 小提示:除了 System、SMSS.EXE 和 CSRSS.EXE 这三个进程,ntsd 命令可以杀掉任何一个系统进程。从 Windows 2000 开始,微软就提供了 ntsd 工具,该命令执行后,可让你获得系统的 debug 权,因此能够用来关闭大部分的系统进程,如果你遇到无法关闭的进程, 就可以使用该命令,其杀进程的命令格式为:ntsd -c q p XXX 以上 XXX 为欲杀进程的 PID; ntsd p XXX 表示在调试器中打开某进程(PID 为 XXX); 而-c q 参数则表示退出调试器。由于调试器关闭之后,它打开的进程会随调试器一起退出,因此 ntsd 命令能够关闭进程。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号