1 熊猫烧香病毒分析
1. 样本概况
熊猫烧香,会自动感染系统中的EXE文件,修改文件图标不能再次打开。典型的FSG2.0加密文件,使用的Borland Delphi 6.0 - 7.0进行编写
1.1 样本信息
病毒名称:哈希值
所属家族:Virus
MD5值:512301C535C88255C9A252FDF70B7A03
SHA1值:CA3A1070CFF311C0BA40AB60A8FE3266CFEFE870
CRC32:E334747C
病毒行为:
概述:
29.2KB(30,001字节)的exe文件,标准的PE文件格式如图,使用FSG2.0进行文件压缩加密。能够自我复制,关闭共享文件,隐藏自身,遍历磁盘感染文件,连接网络。
使用010editor可知:
病毒运行会对磁盘进行文件遍历并进行exe感染、修改图标,不能打开应用。感染前与感染后的对比。
使用Pchunter32通过进程分析可知病毒是先将自己复制到系统目录,再进行遍历感染。
提取病毒样本,使用火绒剑进行病毒行为分析,主要通过日志信息来判定
1. 对病毒的文件行为分析:
病毒对文件的主要操作是进行磁盘遍历,用来寻找被感染的目标文件;写入文件,对目标文件进行修改。
复制体采用windows系统配置文件的格式进行保存,具有很强的隐蔽性。
2. 注册表行为分析:
图1-7注册表
如图1-7,病毒进行注册表的注册和启动项的设置
3. 进程操作分析:
进程进行了设备的打开,枚举,释放,写入等系列操作
4. 网络行为的分析:
病毒进行了相关的网络操作,可以通过网络进行传播
5. 其他行为的分析:
1.2 测试环境及工具
测试环境:Vmware虚拟机上运行的Windows32位操作系统,
使用工具:IDA静态病毒分析;OD动态的病毒分析。
1.3 分析目标
1.“熊猫烧香”的启动过程
2.“熊猫烧香”的自我保护
3.“熊猫烧香”的文件感染
2.具体行为分析
2.1 主要行为
病毒运行时主要功能实现的函数
1.“熊猫烧香”的启动过程
对CreateAndRunPanda函数内部的分析
从函数的外调用和内平衡,判断是无参函数
通过对函数数据的调用判定函数实现的功能作用
在“字符串”判断已存在后的程序跳到此处,略过跳转处之后的代码直接运行此代码。
完成向内存中进行写入的操作。
完成内存写入后直接跳转到此处进行文件是否感染判断
这是一个分支,如果文件已被感染则不需要一下的指令
对未被感染的文件进行感染,并设置感染标记位
在进程中不断的查找进程“spcolv.exe”结束,将自身代码写入达到伪装替换,实现免杀。
如果病毒不是第一次执行,则可以直接跳过此操作。
如果病毒已经在系统文件目录下,释放之前存放病毒的内存,并获取标记信息。
2.“熊猫烧香”的自我保护
对已经感染的文件进行010editor分析,被感染的exe均被进行加壳操作
进行OD分析,被感染的文件前半部分都是一样的,下图标出了文件被感染时的标志特征,也是病毒判断是否继续感染的标志位。
在CreateAndRunPanda函数中进行“熊猫烧香”的自我保护的指令
上述指令完成将感染文件和原始文件分离,而被感染的文件由:病毒代码+原始程序+标记信息构成。
被感染文件的主要作用是维护进程中伪造的病毒“spcolsv.exe”,如果病毒被杀就再次生成,只能全面彻底杀出所有病毒才能清除病毒。所以“熊猫烧香”病毒的生命力很强悍。
3.“熊猫烧香”的文件感染
“熊猫烧香”使用的是三种方式进行感染,两种本地,一种网络
1. 线程感染
线程感染的主要指令在线程回调函数中
线程感染主要通过磁盘遍历进行,FindFileAndInfect进行查找感染
对文件进行了简单分类,转换成大写比较是为减少大小写造成的误差
设置了“Desktop_.ini”的文件属性,将其修改为READONLY、HIDDEN、SYSTEM,这里只进行了文件遍历,没有进行感染。
删除系统备份,感染文件两种类型:
1. exe、scr、pif、com
2. htm、html、asp、php、jsp、aspx
病毒的进行文件判断感染的指令
每次进行后缀判断都是这种跳转,可以判断此处使用的if—else进行的判断。
文件感染的函数分析
感染流程先将目标文件读取到内存,获取文件相关信息;将自身文件复制到目标文件,并添加原始文件,标记感染标志,结束整个感染过程。
2. .inf文件感染
定时器进行感染,会在磁盘创建.inf文件。
3. 网络感染
2.1.1 恶意程序对用户造成的危害(图)
造成用户文件,除去系统目录下的文件exe不会被感染,其他目录下的文件exe均会被感染。另外因为“熊猫烧香”是感染型病毒,所以即使手动删除感染文件,如果不小心运行其他感染文件一样会造成文件感染。病毒会自动侵入注册表,设置开机运行,因为是系统型文件所以用户很难发现。
“熊猫烧香”在感染过程中会自动遍历磁盘并清除“.GHO”文件,如果用户的信息及数据在病毒感染后就意味着丢失。造成不必要的损失。
2.解决方案(或总结)
2.1 提取病毒的特征,利用杀毒软件查杀
通过PEID对病毒检查可知
“熊猫烧香”是典型的FSG 2.0的压缩壳
“熊猫烧香”的特征信息:
也是病毒判断是否继续进行文件感染的标志。
2.2 脱壳和杀毒思路。
1.脱壳:
载入OD进行单步跟踪发现ESP没有发生改变,尝试ESP脱壳发现失效,改用单步跟踪
程序在此处进行循环,跟进CALL进行深入分析
根据脱壳的三大步骤,寻找原始OEP、转存文件、修复文件
此病毒的壳以被脱去三分之二。将IAT表解密完运行到OEP处,进行规律性dump即可
使用ImpRec进行IAT地址表的修复,壳就完美脱掉。
2.杀毒思路。
根据以上分析,可知此病毒的三大特性:1.自我复制、2.文件感染、3.网络传播。所以在进行杀毒时,首先要做的是断网。再分析中得知病毒运行时会先判断当前所在目录文件是否是系统目录,不是则将自身复制到系统目录再进行感染操作。而它的文件感染方式是对目标文件进行FSG2.0加壳处理,并且具备病毒的自我复制功能,也就是当运行病毒后会产生二次感染的效果。同时因为病毒的自动启动效果,清理注册表变的很有必要。
所以杀毒思路是1.断网,2.删除在系统盘的病毒主体,3.循环遍历磁盘文件进行病毒标志位的匹对查杀,4检查注册表删除病毒创建的注册表信息。
以上是杀毒思路。
转载于:https://www.cnblogs.com/heixiang/p/10985048.html
1 熊猫烧香病毒分析相关推荐
- 【逆向】Delphi程序逆向之熊猫烧香病毒分析
1.前言 本文主要用于记录Delphi程序逆向的一些方法和技巧,以及熊猫烧香病毒的分析过程. 2.分析技巧 2.1 使用IDR或DEDE加载Delphi程序,导出Map文件,将Map文件导入OD. 2 ...
- 病毒丨熊猫烧香病毒分析
作者丨黑蛋 一.病毒简介 病毒名称: 熊猫烧香 文件名称: 40fee2a4be91d9d46cc133328ed41a3bdf9099be5084efbc95c8d0535ecee496 文件格式: ...
- 熊猫烧香病毒分析与专杀工具
先看看专业分析: Jacks.exe setup.exe 熊猫烧香 尼姆亚 解决方案 档案编号:CISRT2006078 病毒名称:Trojan-PSW.Win32.QQRob.ec(Kaspersk ...
- 熊猫烧香病毒技术分析及应急解决方案
熊猫烧香病毒技术分析及应急解决方案 BY Delphiscn(http://blog.csdn.net/delphiscn)cnBlaster#hotmail.com 目录 A.简介 B.样本分析 C ...
- [系统安全] 十四.熊猫烧香病毒IDA和OD逆向分析--病毒释放过程(下)
您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...
- 有人说是金山造了熊猫烧香病毒
在百度贴吧看到篇文章,作者臆断熊猫是金山出的,想到白天还跟珠海研发讨论过抓熊猫作者的事情.已经有了一些线索,可惜咱们这个国家对病毒制作者.传播者的打击力度...实在是差点儿意思. 原贴在[url]ht ...
- 熊猫烧香病毒背后,网络高手对决一个月
这是一波电脑病毒蔓延的狂潮.在两个多月的时间里,数百万电脑用户被卷将进去,那只憨态可掬.颔首敬香的"熊猫"除而不尽,成为人们噩梦般的记忆. 反病毒工程师们将它命名为"尼姆 ...
- 熊猫烧香病毒幕后黑手曝光 网络世界高手对决一个月
这是一波电脑病毒蔓延的狂潮.在两个多月的时间里,数百万电脑用户被卷将进去,那只憨态可掬.颔首敬香的"熊猫"除而不尽,成为人们噩梦般的记忆. 反病毒工程师们将它命名为"尼姆 ...
- 第5篇 熊猫烧香逆向分析(下)
本实验仅用于信息防御学习,请勿用于非法用途!!! 目录 一.前言 二.实验环境 三.函数sub_408024分析 1.函数sub_40532C分析 2.函数sub_4054BC分析 3.函数sub_4 ...
- 熊猫烧香病毒攻击千家网站 (转贴)
核心提示:在两个多月的时间里,"熊猫烧香"病毒迅速化身数百种,不断入侵个人电脑,感染门户网站和近千家大型企业.病毒作者留名"武汉男孩",他对病毒的更新使反毒人士 ...
最新文章
- 干货:一文彻底弄懂递归如何解题
- 深度学习:垃圾自动分类
- 【线性规划和网络流24题】
- Invalid options object. Copy Plugin has been initialized using an options object that does not match
- C/C++面试题—序列化二叉树
- 两万字深入解密 Go 语言接口的那些事儿 | 技术头条
- hdu I Hate It
- #Pragma 用法总结
- java 宠物店管理系统
- pyqt QListView详细用法
- SSM毕设项目职业性格测试系统7c78o(java+VUE+Mybatis+Maven+Mysql)
- DBLE分库分表示例
- 使用ADO控件连接“文件DSN”
- Python实现大文本文件分割成多个小文件
- Android 设备Id 唯一不重复,Redmi
- 保护环境倡议书500字
- 五子棋对弈(Socket--【服务器】--联机)
- haribote bootpack.c 主任务程序代码阅读注释
- GIT 报错:Branch ‘master‘ set up to track remote branch ‘master‘ from ‘origin‘
- 使用SSH方式实现Git远程连接GitHub
热门文章
- 仿微信源代码android,android 最新版超高仿微信源码。
- c++学习 | Windows 程序设计
- 《JSP实用教程(第2版)/耿祥义》错误之tomcat虚拟服务目录
- 如何重置HDX卡的固件(firmware)
- Java如何进行Base64的编码(Encode)与解码(Decode)
- python核心编程第13章答案
- iocomp iPlot使用说明15 Adding Data添加数据
- 华泰证券 python 自动交易软件_量化自动交易软件开发,搬砖交易机器人系统开发...
- GJB150.10A-2009霉菌试验标准费用-霉菌试验GJBA检测机构
- Dev C++下载简介和安装