科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网安全频道Windows系统进程信息不可用解决办法

Windows系统进程信息不可用解决办法

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

大家知道,如果怀疑某个进程是病毒、木马或者间谍软件等恶意程序带来的,那么首先就需要了解该可疑进程的路径、大小等详细信息。这就需要用“系统信息”组件查看当前正在运行任务的详细信息。

作者:巧巧读书 来源:巧巧读书 2008年8月27日

关键字: 进程 系统进程 进程管理

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共2页)

  大家知道,如果怀疑某个进程是病毒、木马或者间谍软件等恶意程序带来的,那么首先就需要了解该可疑进程的路径、大小等详细信息。这就需要用“系统信息”组件查看当前正在运行任务的详细信息。

  有网友认为,如果在“系统信息”组件里,某些进程的详细信息显示为不可用,那么这些进程很可能就是恶意程序─果真是这样吗─请继续往下看。  

  问题描述

  Windows XP中启动“系统信息”程序窗口,在左侧控制台树中展开“软件环境” “正在运行任务”,发现有9个进程的路径、最小(最大)工作设置、版本、大小、开始时间、文件日期等项均显示为不可用,(如图1)所示。这些进程包括:alg.exe、csrss.exe、wdfmgr.exe、wmiprvse.exe、system、system idle process和3个svchost.exe进程。

图1

  需要注意的是,在默认情况下,Windows XP可能有5个svchost.exe进程,其中有3个svchost.exe进程的详细信息显示为不可用。根据计算机软硬件环境的差异,可能还有其他进程的详细信息显示为不可用。  

  进程解释

  接下来简单介绍这些进程:  

  system和system idle process并不是真正意义上的进程,它们并没有对应的进程映像文件,例如system进程并不存在一个对应的system.exe进程映像文件。所以“系统信息”程序无法找到它们的进程信息,这是正常的。system进程实际上是代表内核模式系统线程的总和;system idle process只是用来统计空闲的CPU时间,它的CPU占有率越高,表明当前系统的CPU越空闲。

  csrss.exe进程是Windows子系统的用户模式部分,该进程工作在Local System帐户下。

  svchost.exe进程是服务的宿主程序,这3个详细信息不可用的svchost.exe进程工作在network service或者local service帐户下。可以参考以下的微软知识库文章,了解svchost.exe进程的详细信息:http://support.microsoft.com/kb/314056/zh-cn。

  alg.exe、wdfmgr.exe和wmiprvse.exe这三个进程,都是服务所对应的可执行文件,它们都工作在network service或者local service帐户下。

  原因分析

  需要理解,进程是一个很奇妙的东西,它具有“双重性格”。就像文件夹和打印机一样,可以对进程指定访问权限,例如指定谁可以查询进程的信息、谁可以终止这个进程等等,也就是说每一个进程都可以关联一个访问控制列表(ACL)。然而和文件夹与打印机不一样的是,进程不但可以有ACL,同时还具有一个访问令牌(AccessToken),访问令牌包含该进程所属的帐户SID列表和该进程所具有的一组特权(Privilege)。

  可以把进程想象成类似于高中物理所学的“光的波粒二相性”,这样就不会忘记进程的这种“双重性格”。

  当“系统信息”这个进程试图访问其他进程的详细信息时,“系统信息”进程首先需要出示其访问令牌。然后Windows的安全子系统就会根据其他进程的访问控制列表,来比较“系统信息”进程的访问令牌,以确认是否允许“系统信息”有权限访问该进程的详细信息。

  实验工具

  Process Explorer:可以利用该工具来查看进程的访问令牌,还可以查看和设置进程的访问控制列表,可以到以下站点下载该工具:

  http://www.mydown.com/soft/265/265210.html  

  PsExec:可以利用该工具以其他帐户身份启动某个进程,可以到以下站点下载该工具:

  http://www.mydown.com/

  SubInAcl:可以查看和设置进程的权限,可以到以下微软官方站点下载该工具:

  http://www.mydown.com/

  查看“系统信息”进程的访问令牌

  以管理员帐户登录系统,启动“系统信息”程序窗口,然后打开Process Explorer。双击“系统信息”的对应进程HelpCtr.exe,在打开的属性对话框里切换到“Security”标签页,这就是“系统信息”进程所获得的访问令牌,(如图2)所示。

图2

  这里需要注意的是,尽管“系统信息”程序的对应Image文件应该是msinfo32.exe,但是通过Process Explorer监控发现,其对应的进程实际是HelpCtr.exe。

  以csrss.exe进程为例。在Process Explorer中双击该csrss.exe进程,在打开的属性对话框里切换到“Security”标签页。然后单击其右下角的“Permission”按钮,即可查看csrss.exe进程的访问权限设置。可以看到该进程只允许Local System帐户访问。单击打开对话框上的“高级”按钮,还可以查看Local System帐户具有的详细权限,(如图3)所示。

图3

  这样就可以解释为什么无法查看csrss.exe进程信息,原来只有Local System帐户才有权限访问csrss.exe进程,而系统进程的访问令牌里并不包含Local System帐户。

  查看svchost.exe的访问控制列表

  接下来查看三个详细信息不可用的svchost.exe进程的访问控制列表。

  在“系统信息”窗口里记下这三个svchost.exe进程的PID,然后在Process Explorer窗口里打开该进程的属性对话框,查看其安全权限,(如图4)所示。

图4

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章