前言
为了分析“熊猫烧香”病毒的行为,我这里使用的是Process Monitor v3.10版。关于这款软件的使用,可参考以下三篇文章:
《文档翻译第001篇:ProcessMonitor帮助文档(Part 1)》
《文档翻译第002篇:ProcessMonitor帮助文档(Part 2)》
《文档翻译第003篇:ProcessMonitor帮助文档(Part 3,附ProcessMonitor的简单演示)》
行为分析的目的,是为了编写出病毒的专杀程序。当然,由于现实环境的种种限制,可能无法发现病毒的所有行为,这些我都会在文章中进行说明。
对“熊猫烧香.exe”进程树的监控分析
这里我将病毒和Process Monitor v3.10复制到之前配置好的虚拟机中,并做好备份。然后先打开Process Monitor,在筛选条件中将“熊猫烧香.exe”加入到筛选器的“Process Name”中,然后运行病毒,首先可以查看一下进程树:
图1 查看进程树
在进程树中可以发现,“熊猫烧香.exe”衍生出了“spoclsv.exe”。衍生出的进程又打开了两次“cmd.exe”。第一次运行的命令是“cmd.exe /c net share C$ /del /y”,它的意思是在命令行模式下删除C盘的网络共享,执行完后关闭cmd.exe。因为我的系统只有一个C盘,因此有理由相信,这个病毒应该是会关闭系统中所有的盘的网络共享。第二次运行的命令是“cmd.exe /c net share admin$ /del /y”,这里取消的是系统根目录的共享。那么由此就可以总结出病毒的两点行为:
病毒行为1:病毒本身创建了名为“spoclsv.exe”的进程,该进程文件的路径为“C:WINDOWSsystem32driversspoclsv.exe”。
病毒行为2:在命令行模式下使用net share命令来取消系统中的共享。
对“熊猫烧香.exe”注册表监控分析
对于注册表的监控,我们发现只有一项需要注意:图2 “熊猫烧香.exe”对注册表的写入
注册表的这个位置主要用于随机数种子的生成,仅仅依靠这条信息是无法推测病毒的行为的,所以可以认为“熊猫烧香.exe”对于注册表没有什么实质的影响。
对“熊猫烧香.exe”文件监控分析
对于文件的监控,也只有一条需要注意:图3 “熊猫烧香.exe”创建文件
可见,“熊猫烧香.exe”在“C:WINDOWSsystem32drivers”中创建了“spoclsv.exe”,其它再无可疑操作,那么可以认为,这个病毒真正的破坏部分是由“spoclsv.exe”实现的,那么接下来的工作就是专门监控这个进程。
对“spoclsv.exe”注册表监控分析
这里需要将进程名为“spoclsv.exe”的进程加入筛选器进行分析。一般来说,病毒所产生的操作会比较多,所以我这里为了便于讨论,我每次只会列出几项操作进行显示,其它的操作就由筛选器排除掉。首先可以查看一下“RegDeleteValue”这个操作:图4 监控注册表中的“RegDeleteValue”操作
可见病毒程序将当时几乎所有的安全类工具的自启动项给删除了,就有:
病毒行为3:删除安全类软件在注册表中的启动项。
然后只保留“RegCreateKey”与“RegSetValue”进行分析:图5 创建自启动项
可见,病毒程序为自身创建了自启动项,使得每次启动计算机就会执行自身,则有:
病毒行为4:在注册表“HKCUSoftwareMicrosoftWindowsCurrentVersionRun”中创建“svcshare”,用于在开机时启动位于“C:WINDOWSsystem32driversspoclsv.exe”的病毒程序。
接下来还有:图6 使文件隐藏
对注册表的这个位置进行设置,能够实现文件的隐藏。此处进行设置后,即便在“文件夹选项”中选择“显示所有文件和文件夹”,也无法显示隐藏文件,则有:
病毒行为5:修改注册表,使得隐藏文件无法通过普通的设置进行显示,该位置为:HKLMSOFTWAREMicrosoftWindowsCurrentVersionExplorerAdvancedFolderHiddenSHOWALL,病毒将CheckedValue的键值设置为了0。
至此,注册表部分就基本分析完毕了。
对“spoclsv.exe”文件监控分析
文件的监控,主要看的是病毒是否将自己复制到其他目录,或者创建删除了哪些文件等,监控如下所示:图7 监控文件操作
在图中可以看到,病毒文件在“C:WINDOWSsystem32drivers”中创建了“spoclsv.exe”这个文件,在C盘根目录下创建了“setup.exe”与“autorun.inf”,并且在一些目录中创建了“Desktop_.ini”这个文件。由于创建这些文件之后就对注册表的SHOWALL项进行了设置,使得隐藏文件无法显示,那么有理由相信,所创建出来的这些文件的属性都是“隐藏”的,于是有:
病毒行为6:将自身拷贝到根目录,并命名为“setup.exe”,同时创建“autorun.inf”用于病毒的启动,这两个文件的属性都是“隐藏”。
病毒行为7:在一些目录中创建名为“Desktop_.ini”的隐藏文件。
对“spoclsv.exe”网络监控分析
现在只进行网络监控,来查看病毒是否有联网动作:图8 监控网络操作
从监控结果可以看到,病毒会向“124.16.31.148”发送并接收信息,并不断尝试连接“10.0.2.X”即局域网中的其它计算机,于是有:
病毒行为8:向外发包,连接局域网中其他机器。
小结
至此,我们已总结出病毒的8点行为,在分析的过程中,我基本上是一语带过,主要是因为病毒比较简单,加上它在Process Monitor面前也是无所遁形。但是请大家注意,以上8点不代表就是病毒的所有行为,因为更加详细的结论是要通过逆向分析才能得出的。而通过上述的分析结果,我们就可以着手专杀工具的编写了,这将会在下一篇文章中详述。