吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 8136|回复: 43
收起左侧

[PC样本分析] Emotet木马分析

  [复制链接]
1行 发表于 2021-2-22 16:54
使用论坛附件上传样本压缩包时必须使用压缩密码保护,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!
病毒分析分区附件样本、网址谨慎下载点击,可能对计算机产生破坏,仅供安全人员在法律允许范围内研究,禁止非法用途!
禁止求非法渗透测试、非法网络攻击、获取隐私等违法内容,即使对方是非法内容,也应向警方求助!

[TOC]

Emotet木马分析

前言

最近,AnyRun发布了2020年年度报告,其中 Emotet 木马被上传的次数高达3w余次,充分说明了它的活跃程度,所以对Emotet木马进行简要分析。

执行流程

利用宏代码来执行下载的恶意程序,再利用rundll32来运行恶意程序的导出函数,拷贝恶意程序,再次rundll32来运行恶意程序的导出函数,获取信息,加密后发送至C2服务器。

d4872deb-0dd2-45fb-b739-476c780e9400.png

详细分析

doc文件

样本名称:a268e9e152c260a0e80431aa8d6df187d9f24a1b6be71328ea14320436083f51.doc
MD5:a58394937da9d3adb33e948058fde4e9

样本具有宏代码,利用宏代码解析混淆的ps脚本文件,从恶意地址处下载恶意动态链接库。

样本打开,可以看到警告,宏已被禁用

3da26dac-28d9-4172-95f4-dd79e4fc2515.jpg

对宏进行调试之后,可知下面的代码是宏要执行的

2d6fc1d5-be24-4435-8434-74bbd56de435.png

解密代码并去除混淆,进行整理之后,payload是从5个恶意地址之中下载恶意动态链接库,利用rundll32.exe来执行恶意动态链接库的control_rundll导出函数。

ecee5b9f-4d9f-4098-9359-bf7e561c89d4.png

IzL1U.dll

MD5:A7BC5F701692EE285EBB1C331226A832

由于payload执行的是"C:\Windows\system32\rundll32.exe" C:\Users\admin\IzL1U.dll Control_RunDLL,所以明白恶意程序的分析重点是IzL1U.dll的导出函数 Control_RunDLL。
可以使用OD的带参数调试。

f551acee-453c-4f9c-aa7f-c3771b929229.png

对 VirtuAlloc 下断点,直接进入恶意动态链接库的导出函数中进行分析。
导出函数的大部分操作在IDA中可以看到,就不过多分析。

f82971b2-c7ac-4f42-b9fa-c00efb7b045a.png

dump出解密后的PE文件,使用IDA查看,发现应该是被平坦化处理过,本来准备试试将平坦化去除。调试了几下,发现程序的重点是这两个GetProcAddress及执行获取到的函数,所以就没去除平坦化。

c79256ca-1afc-44b6-8a9d-c7341499912f.png

可以直接在调用GetProcAddress函数的上层函数的Retn处下断点,就可以看到EAX中出现的函数名,CALL EAX就是执行获取到的函数。

2948d55f-b1a4-4d2e-b535-69f86953979b.png

f3740230-e1ea-4b09-9b4a-79e425d68d42.png

调试之后,可以看到拼接的字符串,然后将恶意动态链接库拷贝到指定目录。

b04cebb5-59c6-4aa6-9683-f5524de3f5bc.png

db952955-f79b-48e0-8a14-d493bac778ce.png

创建自启动服务

fe82ad2f-3ee8-469c-9023-74863df2cc1e.png

e7304e95-f4ce-4f0b-abe2-7d9f2d9b98ee.png

以命令行方式,创建拷贝程序的进程

b21840af-c34c-4fb2-8b38-b54142f22af6.png

zqncrdcqr.dsy

想要调试zqncrdcqr.dsy,有两种方法

  • 直接附加调试rundll32.exe
  • 带参数调试rundll32.exe

在调试之后,OD会卡在ReadDirectoryChangesW函数处,试过跳过后,发现会一直获取它的函数地址,所以直接将与它有关的一大段函数都NOP掉,发现可以继续调试了。
单步分析之后,LoadLibraryW 获取dll的函数地址。

51ce5ace-c75f-4daf-a0a7-dd1ad466b05b.png

遍历线程,目的是为了获取进程对应的应用程序名称。

794b81da-7512-4dfc-a4d9-aaee3cd68d55.png

f2734a73-5f9d-4974-b4f5-aaff716fbd66.png

获取密钥

d5d82edb-96f4-43cf-8938-02540dd5039e.png

获取计算机的名称

4a71529f-cde3-4d3f-9ca7-3db295e84703.png

拷贝字符串

176422af-3fa6-4d59-a5bf-04d3047acfa0.png

将遍历进程获取到的所有字符串都拷贝到缓冲区中

d3b0cf8a-07bd-49f6-98bb-0ed4baf99875.png

将计算机信息拷贝至上面的空间中

2f1637d1-cefc-4e40-a715-e3215e577e68.png

复制哈希值和哈希值所在的状态

dffc8006-94cd-4cf7-945c-44a2b7b4441e.png

加密数据,主要加密了计算机名称及进程对应的应用程序名

7dfd88af-8800-409b-a1c7-ca49fbe36518.png

加密后的数据

9b3f4892-bf1f-4d53-8fae-cc26bf4bcb78.png

获取C2的ip地址

f575c178-3006-4354-8c80-b81de55d91c7.png

c6f165c1-6bdf-47e7-aa46-50cfae6700a4.png

拼接要发送的数据

4fc76e3e

fa71b12c-e232-47cb-99c1-e1b5ac83995b.png

efecd0c9-316a-44bd-9a27-49a69d7b540b.png

使用 InternetOpen 来初始化应用程序

7994fde3-ae4b-4dac-853f-7da598a8b040.png

使用 InternetConnectW 来连接恶意IP地址

3e23e4b1-1708-47d8-83cc-aeb5c2955178.png

使用 HttpOpenRequestW 发送本机信息等加密数据

0c9cd0ff-017c-42f5-b400-6cc1f8fd58c6.png

利用 InternetReadFile 函数从打开的句柄中读取数据

30019565-52da-47e1-b61a-a63cec6da796.png

发送完数据之后,遍历 C:\Windows\System32\Ryqsnymjzf\ 目录,将目录下的所有文件都删除

96a70abe-6180-4da5-b27a-172952b5dc5b.png

3eec0ff2-7b0a-471c-b765-b101c254e656.png

现网监控思路

如果想要对Emotet家族进行监控,可以从流量方面入手。对捕获到的流量进行分析,在调试中发现了一些硬编码的东西,通过这些可以对HTTP的header及body部分进行检测。
在流量中发现一个流具有这样的特征,则说明该机器已感染Emotet木马。

9a978d4d-6e90-4210-8223-6fd882229779.png

也可以使用Yara规则来匹配样本,只是在编写Yara规则时,要在精确与全覆盖两方面有所取舍,需要大量的样本做支撑。

总结

有时候就会发现,逆向就是要大胆假设,小心求证。
分析前会觉得样本好难分析啊,分析完成之后就会觉得索然无味。。。
密码: infected

4fc76e3e-7258-4188-bf62-f953fb9c85ac.png

a268e9e152c260a0e80431aa8d6df187d9f24a1b6be71328ea14320436083f51.doc.zip

84.08 KB, 下载次数: 50, 下载积分: 吾爱币 -1 CB

样本

免费评分

参与人数 14威望 +2 吾爱币 +115 热心值 +14 收起 理由
Skkwq520 + 1 我很赞同!
DT苏衍 + 1 谢谢@Thanks!
Explare_Nekros + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
onething + 1 + 1 热心回复!
laruilarui + 1 + 1 专业的好文
Hmily + 2 + 100 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
伯牙 + 1 + 1 用心讨论,共获提升!
zds1210 + 2 + 1 热心回复!
wlcool + 1 + 1 看不懂,感觉蛮认真的,加个分
你与明日 + 3 + 1 15OD好评!!
爱国敬业哦 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
fengbolee + 2 + 1 用心讨论,共获提升!
woshicp + 1 + 1 支持大佬出精品文章
rr2020 + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

rr2020 发表于 2021-2-22 17:54
楼主你好,我对病毒分析也挺感兴趣的,不知道从哪方面入手,看了你讲解的挺详细,但还是不太懂,代码去混淆我理解是还原代码原本样子,还原出来的好像是vb代码,下面的图又出现像C代码,还有用到的好多工具,都不是太懂,有什么推荐的教程或书籍吗,遇到病毒调试解决的思路可以分享一下吗
linhzye 发表于 2021-3-9 09:57
rr2020 发表于 2021-2-22 17:54
楼主你好,我对病毒分析也挺感兴趣的,不知道从哪方面入手,看了你讲解的挺详细,但还是不太懂,代码去混淆 ...

前面是用宏代码(VBA),后面下载下来的dll是汇编编译。
wohaofanlou 发表于 2021-2-22 20:03
我的电脑中的都是感染EXE文件的木马 全部删掉了
aj0scker 发表于 2021-2-22 23:45
十分详尽的分享,感谢楼主
tsecond 发表于 2021-2-23 08:18
这个模块加载的malware还活着呢!好几年前就分析过一个变种!
cheng911001 发表于 2021-2-23 09:35
谢谢楼主大大分析
龙神邪少 发表于 2021-2-23 10:09
感谢楼主大佬的讲解
你与明日 发表于 2021-2-23 11:26
15OD好评!!  
Airey 发表于 2021-2-23 11:53
我直接好家伙 ,看都看不懂
chmod755 发表于 2021-2-23 14:55
楼主问个问题,为啥我这powershell里的dll名字,跟你报告里的不一样? 微信截图_20210223145206.png
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 11:26

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表