揪出可疑的计算机进程

技巧与实践

在Windows中,无论什么操作都会引发对CPU或内存等系统资源的占用。为了保证系统资源得到合理的分配,Windows使用了“进程”技术对系统资源进行有效管理。在计算机中了木马或者浏览了恶意网页后,运行速度往往会非常缓慢,关掉那些进程即可恢复正常,但面对系统中繁多的进程,哪些能关闭,哪些不能关闭,非常不容易判断,希望各位读者在了解了本文的进程知识后,会得到更多使用系统和维护系统的帮助。

计算机进程是什么?

进程是程序在计算机上的一次执行活动。当你运行一个程序,你就启动了一个进程。我们通常将计算机进程分为系统进程和用户进程。一个是用来让系统有基本的支持环境;另一个是随时可以创建关闭,不会对系统产生影响的进程,比方说Word进程。在关闭掉无用或可疑的进程之前,往往并不知道进程的真正名称,这只能凭一定的系统经验才能正确判断出可疑的进程。

判断可疑的进程

要找到系统中可疑的进程,首先要了解正常的系统进程,熟悉重要的系统进程将有助于快速找到伪装的恶意进程。在WinXP系统刚启动时,会自动使用System账户加载系统进程。列表中罗列出了系统中最重要的进程(如下表),一旦出现问题,对于WinXP的运行将产生严重威胁。

使用“Ctrl+Shift+Esc”、“Ctrl+Alt+Delete”组合键或“Taskmgr”命令可打开Windows任务管理器窗口,在“进程”选项卡中观察所有程序的进程。通常可使用以下三种方法来判断进程是否可疑。

1.通过发起进程的用户名

左边列表中的系统重要进程,均由System用户发起,否则就可能会出现系统故障。比方说,Lsass.exe进程只能由System用户发起(图1),如果它突然改成由当前的管理员等账户发起,那么必是可疑进程。

27-f14-b1.jpg
27-f14-1-4.jpg
图1

2.检查发起程序路径和名称

在命令提示符窗口中使用“Netstat -abnov”命令后(注意只在“-”前面加空格),可以在反馈的信息中看到进程的发起程序或文件列表。如果路径中存在不符合逻辑的发起文件,如腾讯QQ的路径中突然出现一个“C:\windows\system32\mima.exe”,那么就可以判断此发起程序有问题。对于可疑的进程,请注意每个进程的反馈信息右侧,都有一个相应的PID号(图2)。这可以在“Windows任务管理器”的“进程”选项卡中,找到对应的PID号,此时选中相应的PID号并关闭进程即可。

27-f14-1-5.jpg
图2

3.使用专业的工具

直接利用Process Explorer(下载地址http://www.cpcw.com/download)检查进程的映像路径等信息。例如,系统中突然出现了Rundll32.exe进程时,就可以使用此工具找到类似于“"D:\WINDOWS\system32\rundll32.exe" /d D:\WINDOWS\system32\shell32.dll,Control_RunDLL timedate.cp

l”这样的信息(图3),从中可以看出此进程是因为调用系统时间组件而创建的,并不是恶意进程。

27-f14-1-1.jpg
图3

提示:对于在“Windows任务管理器”窗口中看不到的隐藏进程,可以使用“http://www.cpcw.com/download”提供的隐藏进程管理工具查看并管理。

把可疑的进程关掉

判断出可疑的进程后,将它关闭,以减轻Windows的负担。对于系统必要的进程,我们可以将它关闭后再进行重建。以关闭负责显示桌面环境的Explorer.exe进程为例,打开Windows任务管理器窗口。在“进程”选项卡中选中Explorer.exe进程并单击“结束进程”按钮即可。重建此进程时则在“Windows任务管理器”窗口中,依次单击“文件→新建任务(运行……)”菜单。在打开的“创建新任务”对话框中,输入“Explorer.exe”进程名称并单击“确定”按钮即可。随即,桌面环境将会恢复。

当遇到在“Windows 任务管理器”中无法关闭的进程时,可以尝试执行如下操作来强行关闭顽固进程。一是使用Ntsd命令。以关闭PID为1404的进程为例,只须在“命令提示符”窗口中,使用“Ntsd -c q -p 1404”的命令即可。二是可以使用命令“Taskkill /im 进程名”的语法在“命令提示符”窗口中关掉进程,如“Taskkill /im Explorer.exe”。

需要注意的是,在找到可疑进程后,并不是说把此进程关闭就可以解决问题的。关闭进程只是解决问题的一个前奏,要想治本,还要终止进程的发起端。例如,使用杀毒软件等工具删除幕后的恶意程序、终止幕后自动运行的服务项、手工删除dll文件等等。

小技巧:找出应用程序的进程名

如果不知道某个应用程序的具体进程名是什么,只须在“应用程序”选项卡中选中应用程序名称并单击鼠标右键,在快捷菜单中选择“转到进程”项后,在自动转到的“进程”选项卡中,系统将自动选中应用程序对应的进程。

小技巧:查看远程计算机的进程

除了可以对本地进程进行管理外,在“命令提示符”窗口中按“Tasklist /s 远程IP地址 /u 账户名 /p 密码”的命令语法,还可以查看远程计算机的进程。在命令成功执行后,就可以得到远程电脑反馈回来的进程列表信息了(图4)。

27-f14-1-2.jpg
图4

延伸知识:合理利用进程优先级和进程树

优先级和进程树这也是两个计算机进程的重要概念,对于经常接触计算机的用户来说也需要了解。

1.在系统极度繁忙时调整优先级

所有程序的运行都要占用CPU资源,而CPU在处理程序时会有一个先后的优先级次序(共有31级)。因此,在系统极度繁忙时手工调整优先级有一定的改善效果。

在“Windows任务管理器”窗口的“进程”选项卡中,选择需要调整优先级的应用程序(如“WINWORD.EXE”)并单击鼠标右键,在快捷菜单中选择“设置优先级”后,在子菜单中可以从“实时”、“高”、“高于标准”、“标准”、“低于标准”和“低”几个级别中选择一个优先级。

在计算机运算速度超速发展的今天,CPU频率、内存容量都越来越大,设置优先级对于普通用户来说,实际上并无明显的效果改善。但对于IT人士来说是应该了解的知识。

2.进程树不能随便关闭

当一个进程被创建后,它可能还会需要一些直接或间接与它发生联系的进程的支持,这一组进程就可以称之为进程树。使用Process Explorer工具可以轻松检查出一个进程的父进程和子进程(即进程树的结构)。进程树并不能随便关闭,它引发的一组进程,其中极有可能导致某个系统进程被关闭,导致WinXP崩溃。

在图5中,前面有减号的进程与下面的进程构成父子进程,如winlogon.exe是services.exe的父进程,services.exe是svchost.exe的父进程。除非看到下面的子进程没有一个是系统进程(由system账户引发的进程)才能关闭父进程,否则父进程不能关。在“Windows任务管理器”窗口中,选中一个父进程并单击鼠标右键后,在弹出的快捷菜单中选择“结束进程树”后,可以结束指定进程及其相关进程。

27-f14-1-3.jpg
图5