首页
论坛
专栏
课程

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

2018-8-15 20:36 4399

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

2018-8-15 20:36
4399

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



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


言归正传,这个病毒属于典型的解密资源段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服务器通信的事件。




[公告][征集寄语] 看雪20周年年会 | 感恩有你,一路同行

最新回复 (7)
supersoar 2018-8-16 01:59
2
0
不错 感谢分享
瀚海云烟 1 2018-8-16 09:49
3
0
没样本吗
逆向实习生 1 2018-8-16 14:58
4
0
瀚海云烟 没样本吗
发给我个邮箱
小狮狮 2018-8-23 17:32
5
0
能发个样本学习一下吗?
黑洛 1 2018-8-24 19:02
6
0
注入tv的?感觉像是外挂
逆向实习生 1 2018-8-26 11:16
7
0
黑洛 注入tv的?感觉像是外挂
没有注入tv,仔细看一下是遇到tv不注入
MoonU 2018-12-27 14:46
8
0
您好,能发个样本分析下么
游客
登录 | 注册 方可回帖
返回