熊猫烧香分析报告

 

 

分析报告

 

样本名

熊猫烧香

版本

原版

时间

2018-03-18

平台

扫描二维码关注公众号,回复: 1416668 查看本文章

Windows 7-32

 

信息安全研究(病毒分析报告)

目录

1.样本概况... 2

1.1 样本信息... 2

1.2 测试环境及工具... 3

1.3 分析目标... 3

1.4 提取样本... 3

1.4.1查壳... 3

1.4.2 具体提取步骤... 3

1.4.3 提取样本... 4

2.具体行为分析... 5

2.1 主要行为... 5

2.2 分析情况总结:... 10

2.3 详细分析... 11

3.解决方案... 25

3.1 手工查杀步骤或是工具查杀步骤或是查杀思路等。... 25

1.样本概况

1.1 样本信息

病毒名称:   熊猫烧香

所属家族:   感染性病毒(Virus) /蠕虫病毒(Worm) 

大小:             30001 bytes

MD5值:       512301C535C88255C9A252FDF70B7A03

SHA1值:     CA3A1070CFF311C0BA40AB60A8FE3266CFEFE870

CRC32:      E334747C

病毒行为:   复制自身、感染PE文件、覆写PE文件、修改注册表自启动、枚举进程、结束杀软进程、删除安全软件相关启动项

1.2 测试环境及工具

Win7 32位、OD/IDA/x64DBG/火绒剑/ExeiofoPE/

1.3 分析目标

分析病毒永久驻留方式,感染的方式,网络连接,病毒的恶意行为

1.4 提取样本

1.4.1查壳

 

Exeinfo 可查是该程序是FSG壳,FSG是压缩壳,稍后对它进行手动脱壳

1.4.2 具体提取步骤

使用APK工具(PC-Hunter)查看可疑进程

查看启动项(注册表,计划任务等)

查看驱动模块,服务未发现可疑项

查看一下其他的杂项,网络连接等

使用抓包工具(WSExplorer)查看可疑流量

1.4.3 提取样本

从上面启动项可以看到,病毒自我复制了一个文件到C:\Windows\System32\drivers目录下

将它提取出来,重命名后缀为vir,以供下一步具体分析。

 

2.具体行为分析

这个环节的目标是分析样本的行为,尽可能全面发现恶意行为

方法概述:

获取样本后,使用监控工具(火绒剑)监控样本的运行。

分析监控到的日志,主要观察的点有:

1, 文件操作,主要看文件创建、修改、删除等操作

2, 注册表操作,主要看注册表设置、创建等操作

3, 进程操作,主要看创建进程,写入内存等操作

4, 网络操作,主要看网络连接地址,IP等信息

5, 其他行为,以及自己观察样本虚拟机内运行后的反应

2.1 主要行为

分析监控到的日志

1. 文件操作,主要看文件创建,修改,删除等操作,设置监控的行为(动作),只查看文件操作的关键行为:

 

将样本vir文件直接拖进火绒剑内:

 

可以发现样本创建了一些文件,观察文件,有一些文件与样本大小一致,猜测是复制的样本,感染了很多exe文件

2. 注册表过滤,主要看注册表设置,创建等:

3. 进程操作,主要看创建进程,写入内存操作,对监控工具进行过滤:

 

查看过滤后的结果:

 

4. 网络操作,主要看网络链接地址,IP等信息,首先对监控工具进行过滤设置:

 

5. 其他行为,人肉看样本运行后的反应,其他行为,人肉看样本运行后的反应

查看结果,发现样本擦混改建了许多Desktop_ini文件,感染了许多exe,而且exe 的图标已经变成了熊猫烧香

 

设置监控工具,只查看执行监控,可以发现cmd进程的创建:

 

2.2 分析情况总结:

分析监控的日志以及人肉之后,可以分析出样本的恶意行为:

  1. 自我复制样本到C盘:C:\Windows\System32目录下,

启动C:\Windows\System32\drivers\spo01.exe(即样本)

  1. 在每一个目录下创建了一个Dosktop_.ini,里面是当前日期
  2. 在C盘根目录下创建了autorun.inf文件,里面指定了自动启动的文件为根目录下的setup.exe(即样本)
  3. 对程序目录下的exe进行了感染,图标变为熊猫烧香,打开exe时,自动打开病毒
  4. 设置注册表启动项为:C:/Windows/driver/spo01sv.exe
  5. 设置注册表键值,隐藏文件不显示
  6. 自己创建了一个注册表的项,在其中写入了很多信息
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Tracing\spo01sv_RASAPI32
  7. 枚举进程,查找窗口,打开设备
  8. 连接局域网的一些地址,访问外面的一些网址

10. 使用cmd命令关闭了网络共享

2.3 详细分析

通过以上分析可以知道恶意代码的一些恶意行为,想要获取更加详细的行为需要使用IDA或是OD分析样本

详细分析过程:

上面用Exeinfo查看到此程序是FSG2.0的压缩壳,以下进行手动脱壳:

单步运行到0x00401D1,此处jmp 的就是OEP,F7单步步入,在此处dump程序,然后修复IAT即可。

 

脱过壳后的程序使用Peid深度扫描可以识别出程序是使用delphi编译的:

 

导入签名后,采用OD/Ida,动静结合的方法分析恶意代码;

先使用IDA的F5快捷键查看下伪c代码,先对此程序有一个大约的框架。

根据伪C代码,可以发现OEP函数一开始全是初始化变量,调用的第一个函数sub_405250,参数中有字符串“xboy”,而另一次调用中,参数有字符串“whboy”,在调用sub_405250函数后,有LStrCmp字符串比较函数的调用,之后就是判断返回值的代码,可以猜测函数sub_405250应该是解密字符串函数。

剩下的三个sub_xxx开头的函数应该是恶意代码函数,在这个代码的末尾有一个消息循环,猜测是等待恶意代码执行完毕后,函数才退出(稍后再OD中验证此推测)。

所以OEP函数可以分为四部分:

 

动态跟踪验证对sub_405250函数的猜测,发现堆栈中解密字符串,跟踪调用完函数之后,LStrCmp函数的参数是解密的字符串与全局变量字符串:

 

由此可以确定sub_405250函数确实是一个解密字符串函数:

 

在IDA中对sub_405250函数名进行修改:

 

然后分析剩下的几个执行恶意代码的函数:

 

sub_40819c函数分析:

复制了自己到系统驱动目录下,然后

 

sub_40D18C函数分析:

 

sub_40A5B0:

在回调函数内分析,此函数在遍历目录,并在感染后的文件夹内创建标记文件Desktop.ini

 

如果文件是GHO(备份),则将其删除:

 

Sub_40C374:

 

进入回调函数查看:

 

第三个函数sub_40D088:

这个函数中创建线程,进行网络连接:

调用了6个定时器: 

 

第一个定时器(一秒触发一次):

 

设置了文件隐藏属性:

OpenProcessToken获取访问令牌; 
利用LookupPrivilegeValueA可以获取本地唯一标识符(LUID) 
OpenProcessToke和LookupPrivilegeValueA获取的信息被AdjustTokenPrivileges利用,进行提权: 

 

发现是在检查是否有杀毒软件,如果有,则让其关闭 

 

均采用此方法分析可知:

第二个定时器(20分钟触发一次):

从http://wangma.9966.org/down.txt网站读取到网页源代码并且运行代码

 

第三个定时器(10秒触发一次):

调用如下命令来删除共享:

cmd.exe /c net share C$ /del /y

cmd.exe /c net share A$ /del /y

cmd.exe /c net share admin$ /del /y

 

第四个定时器(6秒触发一次):

 

第五个定时器(10秒触发一次):

打开解密之后的网页:

 

第六个定时器(30分钟触发一次):

又是在下载恶意代码:

 

至此,分析基本结束。

3.解决方案

3.1 手工查杀步骤或是工具查杀步骤或是查杀思路等。

1、删除【C:\Windows\System32\drivers\spcolsv.exe】文件

2、删除【HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVer

sion\Run】键项的svcshare

3、删除每个盘符根目录下生成两个文件【autorun.inf和setup.exe】文件

4、设置【HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer

\Advanced\Folder\Hidden\SHOWALL】,CheckedValue的键值设置为1(显示隐藏文件)

猜你喜欢

转载自www.cnblogs.com/by-clark/p/9126850.html