首页
社区
课程
招聘
[原创]一次标准的解码->释放->下载->注入的病毒分析
发表于: 2018-8-15 20:36 8383

[原创]一次标准的解码->释放->下载->注入的病毒分析

2018-8-15 20:36
8383

一次标准的解码->释放->下载->注入的病毒分析



我司安全架构师发现一病毒甩给我来分析,架构师点名要我分析,小弟感觉亚历山大甚是惶恐~~


言归正传,这个病毒属于典型的解密资源段payload,释放文件,创建进程,对其他进程进行注入。有一定的学习价值所以前来分享一下。

静态分析:

首先用PEview查看文件的各个段:


可以发现在rsrc资源段有大量编码过的数据,可以想象这应该是一个payload。

IDA载入之后没有什么很明显的恶意软件特征,所以就不贴图了。直接就上OllyDbg进行动态调试。

动态调试:

1.     解密rsrc资源段内容:


其实对于这类在资源段存在编码payload的程序,其主要功能在于payload的解密和释放。所以这里大体调试的思路和方法是:首先在资源段下内存访问断点;一直F9运行中间直到在该程序的代码段停下来,而且会有反复访问的操作,此时就基本到了解密地方;之后的步骤就是释放了,释放时候可能会在程序中多添加一个段,可能就会使用virtualAlloc函数,所以多留心对内存进行分配的函数就很容易找到添加的payload段

2.     为解密后的函数内容分配内存:


多出了0x00020000段:


3.     循环将函数内容写入0x00020000段:


4.     通过push 0x00020000 和return指令跳转到0x00020000payload地址处:


5.     调用0x20600和0x20750函数反复动态加载函数:


6.     创建新的进程:


7.     获取线程信息:


8.     向新建进程中分配空间:


9.     向新建进程内存中写入程序:


创建的进程句柄是0x48。

查看内存中程序的大小用lordPE把程序dump下来:


10.  继续运行线程:


分析dump下来的文件:

由于这个程序需要输入参数运行,分析时间不多就懒得去动态调试它那些参数了就直接IDA静态看一看,其实里面的功能还是比较容易分析出来的。

1.     下载功能:


大体的流程都差不多,从CC服务器下载一个文件,然后运行并删除。

2.     反虚拟机:


通过查看设备信息判断是否是virtualBox,vmware,qemu模拟器等沙箱虚拟机中。

3.     在注册表中添加自启动项:


4.     进行注入:


sub_402060函数内容:


不对teamviewer、自身以及x64的程序进行注入,其他程序统统注入。

除此之外还会有与C&C服务器通信的事件。



[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 573
活跃值: (222)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
不错 感谢分享
2018-8-16 01:59
0
雪    币: 293
活跃值: (287)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
没样本吗
2018-8-16 09:49
0
雪    币: 1563
活跃值: (272)
能力值: ( LV7,RANK:105 )
在线值:
发帖
回帖
粉丝
4
瀚海云烟 没样本吗
发给我个邮箱
2018-8-16 14:58
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
能发个样本学习一下吗?
2018-8-23 17:32
0
雪    币: 6124
活跃值: (4656)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
6
注入tv的?感觉像是外挂
2018-8-24 19:02
0
雪    币: 1563
活跃值: (272)
能力值: ( LV7,RANK:105 )
在线值:
发帖
回帖
粉丝
7
黑洛 注入tv的?感觉像是外挂
没有注入tv,仔细看一下是遇到tv不注入
2018-8-26 11:16
0
雪    币: 147
活跃值: (42)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
8
您好,能发个样本分析下么
2018-12-27 14:46
0
雪    币: 19
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
GTZ
9
就喜欢这种  都注入一遍的
2020-11-10 18:28
0
游客
登录 | 注册 方可回帖
返回
//