1.样本概况1.1 样本信息 病毒名称:熊猫烧香 大小: 30001 bytes 修改时间: 2007年1月17日, 12:18:40 MD5: 512301C535C88255C9A252FDF70B7A03 SHA1: CA3A1070CFF311C0BA40AB60A8FE3266CFEFE870 CRC32: E334747C 病毒行为: “熊猫烧香”,是一款拥有自动传播、自动感染硬盘能力和强大的破坏能力的病毒,它不但可以感染系统中的exe,com,pif、src、html、asp等文件,他还能终止大量的反病毒软件进程,并且会删除扩展名为gho的系统备份文件,使用户的系统备份文件丢失。被感染的用户系统中所有.exe可执行文件全部被改成熊猫举着三根香的模样。 1.2 测试环境及工具系统:WIN7 x32虚拟机 工具:PEID OD IDA 火绒剑 PCHunter32 1.3 分析目标病毒行为分析,编写专杀工具。 2.具体行为分析2.1 样本提取模拟真实场景,在虚拟机中运行样本。病毒执行后,删除样本,开始提取样本 需要观察的情况 使用ARK工具查看可疑进程 使用ARK工具查看启动项(注册表、计划任务等) 使用ARK工具查看驱动、服务等可疑项 使用ARK工具查看其它杂项 使用抓包工具查看可疑流量
逆向分析熊猫烧香,学习交流贴
直接给他最高权限运行
逆向分析熊猫烧香,学习交流贴
进程查看工具:procexp 顺利运行了
逆向分析熊猫烧香,学习交流贴
运行一会儿差不多可以了
逆向分析熊猫烧香,学习交流贴
重启了一下虚拟机
逆向分析熊猫烧香,学习交流贴
工具:PCHunter32 查看可疑进程,先看蓝色的进程,为用户级进程 结束掉了进程
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
查看启动项
逆向分析熊猫烧香,学习交流贴
接着一一查看一下其他启动项
逆向分析熊猫烧香,学习交流贴
可疑服务筛查:没有发现可疑进程 可疑计划任务筛查:没有发现可疑计划任务 驱动模块查看:快速看一遍,盯着厂商信息看,没有发现可疑驱动 其他的都检查一遍,基本都没有异常。 网络这里可以发现很多病毒进程的端口
逆向分析熊猫烧香,学习交流贴
找一些被感染文件,使用PEID查看一下文件特征,发现入口点都是154,都有FSG2.0的壳。猜测被感染文件是被覆盖了。
逆向分析熊猫烧香,学习交流贴
手工查杀到这里就结束了。 抓包查看一下: 工具:WSExplorer 刚刚病毒进程都结束了,还得重新运行一下。 竟然还有地方接收这个程序发出的包。
逆向分析熊猫烧香,学习交流贴
样本提取出来了,更改一下样本病毒的后缀名,防止误操作再次运行病毒。 手工清理机器总结: 结束可疑进程spo0lsv.exe 删除可以进程启动项 程序安装目录下呗感染的exe变成了熊猫烧香图标,手工无法清除,当运行被感染程序时,病毒再次复活。(手工无法清除此病毒,需要进一步进行详细分析) 2.2 行为分析 获取样本后,在虚拟机中,使用工具监控样本的运行。待执行病毒后,分开查看病毒行为。分析监控到的日志,主要观察的点: 文件操作,主要看文件创建、修改、删除等操作 注册表操作,主要看注册表设置、创建等操作 进程操作,主要看创建进程、写入内存等操作 网络操作,主要看网络连接地址、写入内存等操作 其他行为,以及人肉看样本运行后的反应 工具:火绒剑
逆向分析熊猫烧香,学习交流贴
设置监控行为说,已经默认全选了
逆向分析熊猫烧香,学习交流贴
动作过滤,详细查看 查看文件被修改动作与文件写入动作
逆向分析熊猫烧香,学习交流贴
创建了一些文件,有一些文件与样本大小一致,病毒样本有自复制,感染了很多exe文件。
逆向分析熊猫烧香,学习交流贴
过滤注册表设置,创建动作,进行分析
逆向分析熊猫烧香,学习交流贴
有创建建值,设置启动项的操作
逆向分析熊猫烧香,学习交流贴
进程操作动作,有枚举进程,启动自己释放的进程,打开设备,查找窗口。
逆向分析熊猫烧香,学习交流贴
设置网络动作监控过滤,网络操作,主要看网络连接地址,ID,可以看到有局域网连接,外网访问,URL访问。
逆向分析熊猫烧香,学习交流贴
执行监控中,有CMD的操作。
逆向分析熊猫烧香,学习交流贴
人肉观察:图标被更改,文件被覆盖。 行为分析总结: 分析监控的日志以及人肉之后,可以分析出样本的恶意行为,自我复制样本到C盘Windows/driver/目录下,启动C盘/Windows/driver/spo0lsv.exe,在每一个目录下创建了Desktop_.ini,里面是当前日期。在C盘根目录创建了autorun,inf文件,里面指定了自启动的文件为根目录下的setup.exe。对程序目录下的exe进行了感染,图标变为熊猫烧香,打开exe时,自动打开病毒。设置注册表启动项为C:/Windows/driver/spo0lsv.exe。设置注册表键值,隐藏文件不显示。 样本自创建了一个注册表的项,在其中写入了信息。修改注册表的IE浏览器代理连接设置。枚举进程、查找窗口、打开设备,连接局域网的一些地址,访问外面的一些网址。使用CMD的命令关闭网络共享。 2.3详细分析 通过行为分析后,可以知道熊猫烧香的一些恶意行为,接下来使用IDA与OD动静结合分析。 使用查壳工具查壳,有壳先脱壳。 使用IDA的签名工具可以更好的识别库代码,shift+F5添加合适的库签名,分析反汇编。 使用IDA的F5转为C配合修改参数,变量类型,分析伪代码。 使用OD动态调试样本,验证IDA中分析的猜测。 在IDA分析完成后创建map文件,导入OD中使用,导入map文件后,OD名称与IDA同步。 PEID查看一下壳,是个压缩壳。
逆向分析熊猫烧香,学习交流贴
脱壳 找到填充IAT位置
逆向分析熊猫烧香,学习交流贴
OEP跳转
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
在OEP处将程序dump下来,然后用ImportREC修复一下dump文件
逆向分析熊猫烧香,学习交流贴
用exeinfo查看了一下,属于Delphi程序
逆向分析熊猫烧香,学习交流贴
使用sheft+F5,然后插入,搜索delphi,OK后标签添加完成,为之后分析提供很多方便
逆向分析熊猫烧香,学习交流贴
脱壳后OPE入口代码截图
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
字符串分析,大致功能判断,进程遍历,线程遍历,模块遍历,cmd命令使用,
逆向分析熊猫烧香,学习交流贴
接着把IDA的MAP文件同样加载到OD中,进行动静结合的办法分析病毒样本 首先进项第一轮粗略的函数分析,猜测为样本程序的校验部分,其中包含了作者以及为作者提供帮助的人员信息,验证成功后会进入病毒启动部分。 接着把IDA的MAP文件同样加载到OD中,进行动静结合的办法分析病毒样本 首先进项第一轮粗略的函数分析,猜测为样本程序的校验部分,其中包含了作者以及为作者提供帮助的人员信息,验证成功后会进入病毒启动部分。
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
第一个函数分析
逆向分析熊猫烧香,学习交流贴
在OD中步过运行进行粗略查看为,对两个字符串进行比对,返回一个布尔值。(eax和edx是两个相同的字符串,“武汉病毒下载者”)
逆向分析熊猫烧香,学习交流贴
配上退出进程的函数,猜测这两段为一个验证过程
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
启动程序分析 IDA中对sub_40819C的猜测分析
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
下面一点部分基本都是对文件,字符串,进程的操作。 sub_40819C的反汇编详细分析 局部变量标号定义
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
段总结:进行了路径字符串与文件字符串的拼接操作,然后判断文件是否存在,若存在,删除文件,继续执行。
逆向分析熊猫烧香,学习交流贴
样本病毒将病毒信息读取到内存中的操作,其目的是复制病毒信息感染其他文件。继续运行。
逆向分析熊猫烧香,学习交流贴
判断自身是否是第一次跳转 在这之前,多数都在执行重复性操作,这些操作的目的只有一个,在进程中找到样本程序并终止,然后再系统目录中删除,再对病毒文件进行伪装没然后启动,这是病毒程序第一次运行时需要执行的动作。
逆向分析熊猫烧香,学习交流贴
第二部分:主要功能是感染
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
获取exe文件名,查找当前运行的程序,若该程序正在运行,放弃感染,若该程序是病毒程序,不感染 读取exe文件,存储在内存中,在该exe文件中查找字符串"WhBoy",若存在WhBoy字符串,说明该文件已经被感染过了,不感染 若不存在"WhBoy",则将病毒程序自身复制到exe文件中(此时,文件已经被修改成病毒文件,大小为124kb,病毒大小),然后将内存中的exe写入到被感染后的程序中(此时的大小为病毒程序+原程序) 对感染后的文件写入格式化字符串(WhBoy+文件名+exe+02+十进制文件大小+1) 函数三功能分析:主要为保护
逆向分析熊猫烧香,学习交流贴
定时设置注册表,添加启动项
逆向分析熊猫烧香,学习交流贴
解密网址,访问网址,下载内容
逆向分析熊猫烧香,学习交流贴
创建计时器,启动进程,删除共享,并且调用了CreateT_ReadQQ_Mem
逆向分析熊猫烧香,学习交流贴
逆向分析熊猫烧香,学习交流贴
2.4解决方案 编写专杀工具 3.解决方案(或总结)3.1 提取病毒的特征,利用杀毒软件查杀MD5特征:527B9DDF4964597EA2D0ED4AC813B4B9 感染特征:文件名的末尾有字符串"WhBoy+ PathName+.exe+02+Size+1" 编写思路:遍历所有文件,查找文件末尾是否存在感染特征的字符串,若存在,则在字符串中获取程序名、程序大小,读取感染文件的PE文件,读取的起始位置是病毒大小,读取的大小是字符串中获取的大小。 3.2 手工查杀步骤或是工具查杀步骤或是查杀思路等。手工查杀: 删除C盘System\drivers目录下的spo0lsv.exe病毒程序 使用PcHumter结束病毒程序 删除病毒启动项 "Software\\Microsoft\\Windows\\CurrentVersion\\Run"
|