zoukankan      html  css  js  c++  java
  • 熊猫烧香分析报告

     

     

    分析报告

     

    样本名

    熊猫烧香

    版本

    原版

    时间

    2018-03-18

    平台

    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:WindowsSystem32drivers目录下

    将它提取出来,重命名后缀为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:WindowsSystem32目录下,

    启动C:WindowsSystem32driversspo01.exe(即样本)

    1. 在每一个目录下创建了一个Dosktop_.ini,里面是当前日期
    2. 在C盘根目录下创建了autorun.inf文件,里面指定了自动启动的文件为根目录下的setup.exe(即样本)
    3. 对程序目录下的exe进行了感染,图标变为熊猫烧香,打开exe时,自动打开病毒
    4. 设置注册表启动项为:C:/Windows/driver/spo01sv.exe
    5. 设置注册表键值,隐藏文件不显示
    6. 自己创建了一个注册表的项,在其中写入了很多信息
      HKEY_LOCAL_MACHINESOFTWAREMicrosoftTracingspo01sv_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:WindowsSystem32driversspcolsv.exe】文件

    2、删除【HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVer

    sionRun】键项的svcshare

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

    4、设置【HKLMSOFTWAREMicrosoftWindowsCurrentVersionExplorer

    AdvancedFolderHiddenSHOWALL】,CheckedValue的键值设置为1(显示隐藏文件)

    人的一生 是一个见天地,见众生,见自己的过程; 能享受最好的 能承受最坏的; 纵有疾风起,人生不言弃
  • 相关阅读:
    用python爬虫爬取去哪儿4500个热门景点,看看国庆不能去哪儿
    北邮-TCP/IP
    python中遇到的小坑记录
    pip将依赖包导成requirements.txt文件
    关于requsts请求json格式单双引号导致json解析失败的问题
    python中,ddt模块的使用
    openpxyl模块完成excel数据读写的常用操作
    关于pip下载源的问题
    集合
    关于Jmeter变量嵌套
  • 原文地址:https://www.cnblogs.com/by-clark/p/9126850.html
Copyright © 2011-2022 走看看