前两次随笔我介绍了手动查杀病毒的步骤,然而仅通过手动查杀根本无法仔细了解病毒样本的行为,这次我们结合Process Monitor进行动态的行为分析。
Process Monitor
Process Monitor一款系统进程监视软件,总体来说,Process Monitor相当于Filemon+Regmon,其中的Filemon专门用来监视系统 中的任何文件操作过程,而Regmon用来监视注册表的读写操作过程。 有了Process Monitor,使用者就可以对系统中的任何文件和 注册表操作同时进行监视和记录,通过注册表和文件读写的变化, 对于帮助诊断系统故障或是发现恶意软件、病毒或木马来说,非常有用。
步骤
1.首先打开Process Monitor,打开Process Tree 然后运行病毒样本,即setup.exe程序,可发现已经检测到该进程,如图
可以观察到该进程又创建了一个spoclsv.exe,且运行了三个cmd命令,这几条命令分别是:
cmd.exe /c net share C$ /del /y //删除C盘的网络共享,因为我们知道该病毒会感染所有盘,而我的虚拟机中只有一个C盘,所以只删除C盘中网络共享
cmd.exe /c net share admin$ /del /y //删除系统根目录下的网络共享
到此我们可以判断出两条病毒行为
①该病毒样本运行后会创建新的进程spoclsv.exe。
②该病毒样本会删除C盘以及根目录下的网络共享。
2.接着我们使用Process Monitor 的过滤器功能对行为进行进一步分析
一般来说,对一个病毒样本的行为检测可分为三大类:注册表,文件,网络,分别对该三种方向进行分析,可具体的有条理的获取分析结果。
首先我们来分析文件
设置过滤器,对spoclsv.exe 进行监控
我们可以发现该进程通过CreateFile在C盘根目录下创建了setup.exe 和autorun.inf文件,说明可能是让setup.exe自动启动。于是我们又得到两个病毒行为
③病毒样本生成的spoclsv.exe程序可能会自身复制到C盘的根目录下改名为setup.exe。
④还产生了一个autorun.inf 文件使setup.exe自启动
3.接下来我们对注册表进行分析
首先可以查看一下RegDeleteValue这个操作
这些删除键值的操作是删除所有杀毒软件的自启动项,防止病毒被查杀
接下来设置过滤条件为RegCreateKey与RegSetValue,如图
上图在注册表自启动键里面添加了新的键值,即svcshare,所以每次启动计算机时,spoclsv.exe都会自启动,进行病毒行为
上述操作指的是将文件设置为隐藏属性,无法被找到,即将Check Value的值设为0,于是我们可以推断出该病毒可能会将后生成的setup.exe和autorn.inf文件设置为隐藏属性,无法显示,经过上次手动查杀验证,的确如此
病毒行为:
⑦删除安全类软件在注册表中的启动项。
⑧在注册表HKCU\Software\Microsoft\Windows\CurrentVersion\Run中创建svcshare,用于在开机时启动位于“C:\WINDOWS\system32\drivers\spoclsv.exe”的病毒程序。
⑨将spoclsv.exe生成的文件设置为隐藏属性,不被计算机用户发现。
最后,我们来分析网络行为
可以发现,该程序不断的想172.16.11.xx这个局域网进行尝试连接,可能意图是感染该局域网内的其他计算机。
整个熊猫烧香病毒的行为分析的流程已经完毕,我们可以发现,通过行为分析获得的病毒行为特征比手动查杀要丰富的多,这启示我们在对一个样本进行分析时,要多方面结合进行分析,不能片面,病毒分析是一个缓慢而有趣的事情,当然要进一步了解样本的话,还需要更高的逆向分析技术,本小白争取下一周进行完整的逆向分析。