首页
社区
课程
招聘
[原创]动态静态逐步分析熊猫烧香
发表于: 2021-6-16 20:52 15295

[原创]动态静态逐步分析熊猫烧香

2021-6-16 20:52
15295

    最近看了蛮多篇关于熊猫烧香分析的文章,第一次尝试将病毒完整分析纪录下来,目前水平和经验有限,没法直接抓到重点分析,全篇都是一个个call逐步分析将病毒分析了个大概,旨在提升自己分析技术,很多内容步骤可能不太准确,如果有错误恳请各位大佬不吝赐教,篇幅过长,思路不够清晰!


    首先放到VirSCAN查询基本信息,查壳,编写语言为Delphi,默认调用约定为register,特点为传参会将参数依次放入寄存器

1.  排查可疑进程

打开程序后查看进程发现多了一个spcolsv.exe,将可以进程强制结束

2.检查启动项msconfig

发现进程创建了一个spcolsv,在注册表打开其位置目录对其删除

3.删除病毒

根据注册表的路径检查到病毒所在目录对其进行删除,并且发现根目录下有病毒复制的隐藏文件,和病毒常用的自启动文件,将其删除

进行行为分析发现panda.exe创建了spcolsv.exe,之后打开了两次cmd执行了删除了c盘的共享和根目录的共享

监控Spoclsv.exe的行为,将常用杀毒软件的自启动项都删除

创建svcshare自启动项,通过设置hidden文件夹下的键值可以实现文件隐藏,并且不能通过普通的设置进行显示

频繁在各种目录下创建Desktop_.ini

并且不断在局域网中尝试连接

 在OD中打开,看到第一个call4049E8跟进去看看功能,发现是调用GetModuleHandle函数,用来获取句柄,百度后发现前面这段为Delphi编译器默认生成的

 跳过开始部分,分析第三个call,发现是传递字符串,进入分析,根据所调用的api推断为初始化互斥空间和分配空间再进行字符串的拷贝

 接着往下分析,看到两个相同的代码段

 跟进其中第一个call发现该功能为解密字符串,第二个call为自校验,如果校验失败则结束本进程

 遇到三个连续的主要call,跟进第一个4082F8,根据api判断,第一个功能为获取当前进程的完整路径

 进入第二个call通过结合ida分析循环处,推测其功能实现为通过循环获取进程路径不包含当前文件名

 第三个call传入的参数为Desktop_.ini,步过发现连接在原来的路径名后面,可知这个call的功能为连接字符

 进入第四个call,跟进405730查看,通过api推测功能为检测Desktop_.ini文件是否存在

 后续结合IDA发现大都是已经分析过的call,80h为文件的正常属性,借此推测功能为验证Desktop_.ini存不存在,如果不存在则跳过,如果存在则改变Desktop_.ini的属性,再删除文件

 接下去分析下一个call 407760,步过发现被写入了一大串字符串,推测可能为通过写入字典进行暴力破解验证机制,可作为获取病毒的行为信息

 继续分析下一个call发现无实际意义,仅用来设计标志位

 进入下一个call,功能为获取PE文件长度,因为用Delphi编写的,数据的前四位则为数据大小

 接着发现下一个call功能为将字符转换成大写,再接着调用GetSystemDir获取系统路径

 接下来将System32 driver spclosv压栈,根据数据窗口变化,功能为路径字符串拼接,

 查看IDA,在执行完字符串改大写操作后进入cmp函数查看

 通过对比EAX和EDX实现跳转,对比自身进程是不是spoclsv

 接下去遇到两个相同的call

 查看其功能,根据api和push的参数可知,作用是查找spoclsv进程,如果有则将其结束掉,接下来的代码在IDA里可以直接看出其流程

 获取系统路径,将drivers,spcolsv.exe压栈,连接字符,构造路径,然后利用CopyFileA 将自身复制写入system32/drivers目录下然后通过WinExec将此程序运行再ExitProcess将自身进程结束,运行到此病毒主体程序就退出了,但是依然可以通过上面验证本程序程序名的call修改标志位,从而继续运行程序,即可继续分析程序

 实现跳转后根据之前分析,第一个call功能为获取文件长度

 第二个call传参为字符长度和操作的地址,用来删除字符的信息

 接着进行一个无条件跳转之后,eax里保存了一个01,用来标记文件是否为已被感染的文件


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2021-6-16 21:15 被wx_dopeusa91编辑 ,原因:
上传的附件:
收藏
免费 6
支持
分享
最新回复 (4)
雪    币: 656
活跃值: (767)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
2
噢我这糟糕的排版
2021-6-16 21:06
0
雪    币: 1411
活跃值: (737)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
这奇怪的排版
2021-6-16 21:07
0
雪    币: 656
活跃值: (767)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
4
半个大西瓜 这奇怪的排版
改好了
2021-6-16 21:13
0
游客
登录 | 注册 方可回帖
返回
//