真假木马进程巧分辨
网络安全
经常上网而没中过木马的人,恐怕找不出多少,特别是菜鸟用户。我们怎么判断自己中了木马呢?最简单的是看系统是否变满了。如果表面现象不明显,我们又怎么判断呢?检测进程,把木马揪出来!
一、 利用工具快速查木马
1.用Procexp揪出简单伪装的木马
Process Explorer是一款进程查看工具,与Windows任务管理器相比其功能更显强大,它不仅具备监视、暂停、终止进程的功能,而且还可以查看到进程所调用的 DLL 文件,包括隐藏进程和内核进程。如果木马仅仅是简单的伪装了进程名,我们从Process Explorer程序里,可以轻松将它找出。
运行“Procexp客户端”程序,在编辑区下方的窗口所显示的信息,则是选择进程的详细内容,我们可以通过其提示得知进程主要调用哪些DLL文件。这里展开普通进程树EXPLORER.EXE(如图1),从中找到自己认为可疑的程序,例如svch0st.exe看似系统进程,竟然出现在了普通进程树里,因此可以肯定它就是运行在系统里的木马进程。

小提示:有些木马为了迷惑用户,会将所运行的进程名称,更改成与其系统及为相近的进程名称,因此如不仔细观察,很容易让其木马“蒙混过关”。
一般容易被伪装的系统进程有svchost.exe、iexplore.exe、explorer.exe、winlogon.exe、csrss.exe等名称,其木马会在进程名上做修改,比如将里面的字母o改成极为相似的数字0,字母l改成数字1等等。
2.利用《智能杀毒伴侣》分辨木马进程
智能杀毒伴侣是一款病毒木马清除工具,它可以帮助你自动分辨进程与木马的安全性,让你不必费心就能轻松揪出系统里的木马程序。
运行《智能杀毒伴侣》客户端,在弹出的软件界面内,选择“进程管理”标签,此时右侧编辑区就会显示出当前系统所有运行的程序进程,并且《智能杀毒伴侣》已经自动为进程作上了安全标记,其安全栏内有UN出现的标记,都被视为可疑进程,对于这些进程请根据里面的“描述”和“文件路径”信息,来判定木马病毒即可(如图2)。

小提示:刚才《智能杀毒伴侣》检测出带有UN标签的“huigezi.exe”程序,里面没有进程描述,也没有文件路径信息,虽然勉强能判定是木马,但是其木马来历不详,以免错杀了其他辅助程序,因此这里用右键点击该进程,选择“百度搜索”或者“Google搜索”选项,来对不明进程进行查询,从而可以得知程序的真实身份。
二、检查端口信息,揪出进程木马
如果你对可疑进程还拿不准,还可以查看该进程使用的端口,获得更多证据。
1.检测远程IP是否为网站木马
端口查看工具有很多,其功能也大同小异,这里就以前面介绍的Procexp工具为例,打开Procexp操作界面,选择自己认为可疑的进程后,单击“右键”按钮,在弹出的菜单里选择“Properties”选项,或者直接双击可疑进程,也可同样达到打开“进程属性”对话框的目的。
然后选择“TCP/IP”选项,可以从中看到程序访问网络的具体情况。如果可疑进程所连接的远程IP地址端口为80端口,众所周知这是网站所开放的端口,如果不是那可就有问题了,通过IE浏览器输入IP地址进行查询,结果若出现无法打开网站的情况,便可判定它就木马进程。
2.查询远程IP及其对应的物理地址
假如远程主机连接的不是80端口,而是其他的数字端口,你就需要知道它确切的实际情况,比如域名地址、实际IP地址的方位等等。打开“CMD命令”窗口,输入ping -a IP地址命令,对其IP进行域名查询后,得知其IP对应的域名情况。
然后进入IP地址查询一类站点,将所得到的域名输入,进行查询后可知域名对应的IP地址及物理地址(如图3)。目前系统没有跟美国有关系的应用软件,所以可以判定这是一个木马进程,而远程连接的IP地址很可能是用来操控木马的肉鸡或者黑客的本机。

三、检查注入类的木马
可能大家都会碰到过这种情况,其进程本身没有任何问题,但总是莫名其妙地打开可疑端口,弄得系统总被人入侵。想结束吧,害怕会影响到有关联的正常文件,所以很矛盾。其实我们可以根据进程调用的DLL文件,核对描述信息逐一检查,很容易揪出捣乱的“罪魁祸首”。
1.检测DLL文件产品信息
通常情况下安全进程加载到模块,都会有微软的“Microsoft Corportaion”信息提示,由此也可判断它是否木马。运行Procexp程序,在工具栏上点击“View DLLs”按钮,然后就可在下面窗口显示出选中进程所调用的DLL文件。从中你可逐一检查每个DLL文件Company Name栏,是否都是Microsoft Corportaion的标志。如果遇到调用的文件信息为空或者其他公司,那么你就有必要怀疑它的安全性。
2.通过版本信息来辨真伪
可能根据以上产品信息,对DLL文件作判断有点太武断,如果怕弄错,你可以进一步分析。右键点击该进程或者DLL文件,在弹出的属性对话框内,可以查询对应文件的相关信息。通常情况下,安全的文件都会有版本、公司、产品名称等信息,所以针对这种情况你可以查找一下,是否都具备以上信息条件。在非特殊情况下,倘若缺少任何一个信息,那么其文件就很有可能是木马。
3.微软数字签名及“时间”检测
这里不排除有些木马对以上文件的相关信息做了伪装,所以对于这类极难分辨的木马,我们可以通过观看微软数字签名,来识别文件的安全性。在Procexp列表,右击可疑进程,选择“Properties”选项,在弹出的属性对话框里,点击上方“Image”标签,在显示的Image页面内,可以看到其进程的描述信息。
其Verify标签会显示出数字签名的验证信息,微软程序会提示“(Verified) Microsoft Windows Publisher”信息(如图4),如果不是的话,进程信息中会显示“(not Verified)”信息。但是对于DLL文件无法在Procexp进行数字验证。

因此这里只能通过文件“创建时间”和“修改时间”来作出判断。首先要知道系统正常DLL文件创建的时间和修改时间,然后在系统目录下,找到与其不一样的DLL文件时间,而这个文件就可以确定是木马DLL文件。
小提示:为了不让细心的用户发现木马进程运行,有很多木马作者在配置木马时,都会勾选上其木马运行的隐藏功能,这样当木马运行时不容易被发现其木马进程。我们可以用《冰刃》来查看隐藏进程,打开《冰刃》,编辑区所显示的是当前系统运行的所有程序进程,如果有隐藏进程,其名称会以红色颜色标记上,而这类进程就有可能是为木马进程。