木马虽然对系统安全危害很大,不过从本质上说,木马其实就是一种特殊的程序而已。木马运行后,会执行释放文件、修改注册表等操作。从某种意义上说,这和安装程序(例如常见的“setup.exe”、“Install.exe”等)的特点有些相似。现在有很多针对安装程序的监控工具,可以将安装程序的活动全部记录下来,包括其创建的文件、对系统的所有修改操作等等。其本意是以后当卸载该软件时,可以根据这些记录信息,让其从系统中干净彻底地消失。其实,将这些监控工具用在对木马行为的分析上,同样可以发挥很大的作用,让木马的所有举动彻底暴露在您的面前。这样的监控工具有很多,例如Total Uninstall、Install Watch等。这里就以Install Watch为例,来说明具体的操作方法。
图5 配置监控环境
图6 查看木马活动监控信息
图7 查看注册表变动信息
我们将木马程序和Install Watch全部放入虚拟机中,先安装并运行Install Watch,在其主界面工具栏上点击“安装”按钮,在弹出窗口中点击“配置”按钮,在配置窗口(如图5所示)中勾选“扫描所有的硬盘驱动器”项,可以扫描所有的磁盘。不过为了加快扫描的速度,可以只保留系统盘。在“要跟踪其内容更改情况的问价扩展名”栏右侧点击“添加”按钮,添加需要监控的文件类型,您可以根据实际需要添加任意文件类型。在下一步窗口中可以添加忽略的文件类型,这些类型的文件不在扫描检测行列,依次点击下一步按钮,执行第一次磁盘扫描操作。当扫描完毕后,弹出程序运行窗口,选择木马程序“winserver.exe”,点击下一步按钮,执行该木马程序。之后点击下一步按钮,Install Watch对预设磁盘执行第二次扫描操作,完毕后输入本次检测的项目名称,至此对该木马程序的监控结束。此外,当木马运行后,自身就消失了,由此可见,该木马具有自毁功能。
在Watch Install主界面左侧选择本检测项目的名称,在窗口右侧显示在监控期间,系统所有的变动信息(如图6所示)。例如,在本例中新建了4个文件、删除了2个文件、更改了18个文件、在注册表新建了105个条目、删除了4个条目、更新了49个条目等。选中该检测项目名称,其下包括“所有文件”、“INI文 件”、“注 册表”等项目。选择“所有文件”项,在窗口右侧显示所有的文件变动情况。为了便于分析,其中还分为“添加的文件”、“删除的文件”、“修改的文件”等项目。在“注册表”节点下包括“添加的注册表”、“删除的注册表”以及“删除的注册表条目”等项。在其中仔细检测,很快就发现了木马的行踪。选择“添加的文件”项,在右侧的统计信息中可以看到,该木马在“C:Program FilesCommon FilesMicrosoft SharedMSInfo”文件夹下创建了名为“rundll_32.exe”的文件。
注意:其处于隐藏状态,无法直接观察到。在“C:WindowsSystem32”文件夹中生成了名为“_rundll_32.exe”的文件。
在监控项目下面选中“注册表”→“添加的注册表” →“HKEY_LOCAL_MACHINE”分支,在窗口右侧可以看到,该木马创建了名为“Network Manger Agent”的系统服务,在其描述信息中显示“网络管理实用工具”字样,起到迷惑用户的目的(如图7所示)。根据以上分析数据,我们可以很清楚地了解了该木马的活动特点,这样清除起来就容易多了。启动感染了该木马的主机,进入安全模式后先终止“Network Manager Agent”服务的运行,然后使用IceSword、Wsyscheck等工具将木马主文件“rundll_32.exe”、“_rundll_32.exe”删 除,最后删除木马创建的假冒服务,重启系统后,该木马就彻底消失了。