利用Marap downloader收集系统信息,TA505要搞大事情?

小芳   ·   发表于 2018-08-28 11:36:50   ·   漏洞文章

概述

Proofpoint
的研究人员最近在一场大型的垃圾电子邮件活动(有数百万封电子邮件被分发)中发现了一种新的downloader,主要针对金融机构。恶意软件被命名为“Marap”(根据“param”反向命名),因其所具备的主要功能而值得被注意,包括下载其他模块和payload的能力。模块化的特性允许攻击者在需要时添加新的功能,或者在感染目标系统后下载其他模块。到目前为止,我们已经观察到它下载了一个能够执行收集系统信息任务的模块。

活动分析

我们在2018年8月10日观察到了这场垃圾电子邮件活动,经过分析我们发现了一个相同的payload——Marap
downloader。从电子邮件的特征来看,它们与TA505在之前活动中所分发的电子邮件有很多相似之处。总的来说,电子邮件包含了以下不同类型的附件:

Microsoft Excel Web查询(“.iqy”)文件;

受密码保护的ZIP压缩文件(其中包含“.iqy”文件);

内嵌“.iqy”文件的PDF文档;

包含恶意宏的MicrosoftWord文档。

接下来,让我们来看看相应的几个不同的垃圾电子邮件示例:

1)以“.iqy”文件作为附件的电子邮件示例

其中一些电子邮件声称来自“sales<[随机域名]>”,主题为“REQUEST [REF:ABCDXYZ]”(随机字母),附件为“REP_10.08.iqy”(活动日期)。

利用Marap downloader收集系统信息

图1.以“.iqy”文件作为附件、“Sales”为主题的电子邮件示例

另一些电子邮件声称来自“[收件人姓名]<[随机发件人名称]@[银行域名]>”,主题为“IMPORTANT
Documents-[银行名称]”,附件为“Request
1234_10082018.iqy”(随机数字,活动日期)。请注意,此类电子邮件冒用了美国主要银行的品牌和名称,在本示例中我们进行了马赛克处理。

利用Marap downloader收集系统信息

图2.以“.iqy”文件作为附件、“主要银行”为主题的电子邮件示例

2)以内嵌“.iqy”文件的PDF文档作为附件的电子邮件示例

此类电子邮件声称来自“Joan Doe<
netadmin@[随机域名]>”,主题为“DOC_1234567890_10082018”(也使用“PDF”、“PDFFILE”或“SNC”,随机数字,活动日期),对应的附件为“SCN
_1234567890_10082018.pdf”(内嵌“.iqy”文件)。

利用Marap downloader收集系统信息

图3. 以内嵌“.iqy”文件的PDF文档作为附件的电子邮件示例

3)以受密码保护的ZIP压缩文件作为附件的电子邮件示例

此类电子邮件声称来自“John<John@[随机域名]>”(名字也随机),主题为“Emailing: PIC12345”(随机数字),对应的附件为“PIC12345.zip”。

利用Marap downloader收集系统信息

图4. 以受密码保护的ZIP压缩文件作为附件的电子邮件示例

4)以Microsoft Word文档作为附件的电子邮件示例

此类电子邮件声称来自“John<John@[随机域名]>”(名字也随机),主题为“Invoice for 12345.10/08/2018”(随机数字,活动日期),相应的附件为“Invoice_12345.10_08_2018.doc”。

利用Marap downloader收集系统信息

图5. 以MicrosoftWord文档作为附件的电子邮件示例(在本示例的正文中错误地描述为“PDF格式”)

恶意软件分析

如上所述,Marap是一个新的downloader,以其命令和控制(C&C)服务器的参数“param”反向拼写命名。它是采用C语言编写的,其中包含了一些值得注意的反分析功能。

反分析功能

大多数Windows API函数调用都是在运行时使用散列算法解析的。API散列值在恶意软件中非常常见,它可以防止分析人员和自动化工具能够轻易地确定代码的用途。对于Marap而言,它所使用的似乎是一种自定义的算法。

第二种反分析技术是在重要函数开始运行时执行时序检查(图6)。这些检查能够阻碍对恶意软件的调试和沙箱检测。如果计算出的休眠时间过短,恶意软件就会退出。

利用Marap downloader收集系统信息

图6.反分析时序检查

另外,Marap的开发者还使用了以下三种方法来对恶意软件中的大多数字符串进行了混淆处理:

1.在堆栈上创建(堆栈字符串);

2.基本的XOR编码;

3.稍微复杂一点的基于XOR的编码。

最后执行的反分析检查会将系统的MAC地址与虚拟机供应商列表中的地址进行比较。如果检查到匹配项,恶意软件则可能会退出。

配置

Marap的配置以加密格式存储在一个名为“Sign.bin”的文件中(例如,C:\Users\[用户名]\AppData\Roaming\Intel\Sign.bin)。它的DES加密是在CBC模式下完成的,使用IV值“\x00\x00\x00\x00\x00\x00\x00\x00”。密钥是经过以下过程生成的:

使用线性同余生成器(LCG)和两个硬编码的随机数种子(seed)生成164字节的数据(在其他样本中种子可能不同);

使用SHA1算法对数据进行散列化;

使用CryptDeriveKey和散列值创建一个8字节的DES密钥。

一个经解密配置的示例如下:

15|1|hxxp://185.68.93[.]18/dot.php|hxxp://94.103.81[.]71/dot.php|hxxp://89.223.92[.]202/dot.php

它由“|”符号进行了分隔,包含了以下配置参数:

C&C通信之间的休眠超时时间;

指示如果恶意软件检测到它正在虚拟机上运行,是否应该退出;

三个C&C URL。

C&C

Marap使用HTTP进行C&C通信,但首先它尝试了许多合法的WinHTTP函数,以确定它是否需要使用代理以及使用什么代理。C&C信标示例如下面的图7所示。

利用Marap downloader收集系统信息

图7.C&C信标示例

该请求包含了一个参数——“param”,其数据使用与配置相同的方法加密,并添加了base64编码。明文请求的示例如下:

62061c6bcdec4fba|0|0

它由“|”符号进行了分隔,包含了以下内容:

Bot ID(通过散列化主机名、用户名和MAC地址生成,使用了与上述散列化API函数相同的散列算法)

使用与上述API函数散列值相同的散列算法散列主机名,用户名和MAC地址生成);

硬编码为“0”;

硬编码为“0”。

对于响应的加密也类似,一个经解密后的响应示例如下:

319&1&0&hxxp://89.223.92[.]202/mo.enc

它由“&”符号进行了分隔,包含了以下内容:

命令ID

命令

控制响应类型的flag

命令参数

经识别的命令如下:

0:再次休眠和信标

1:下载URL、DES解密,并手动加载MZ文件(分配一个缓冲区,复制PE头和section,重新分配并解析导入表)。此命令可以将数据从下载模块中传回C&C;

2:更新配置经进行DES加密,然后写入文件“Sign.bin”;

3:下载URL、DES解密,将MZ文件保存到“%TEMP%/evt”,并使用命令行参数执行;

4:下载URL、DES解密,创建/挖空一个进程(与恶意软件相同的可执行文件),并注入下载的MZ文件;

5:下载URL、DES解密,将MZ文件保存为“%TEMP%/evt”,并使用LoadLibrary API加载它;

6:下载URL、DES解密,并手动加载MZ文件;

7:移除自身并退出

8:更新自身

在命令执行之后,响应消息将发送回C&C。它由“&”符号进行了分隔,包含了以下内容:

Bot ID;

硬编码的“1”;

命令ID;

命令;

控制响应类型的flag

命令返回值

命令状态代码(各种错误代码)

响应数据(以下两则之一)

一个简单的状态消息

来自模块的冗长的数据(使用“#”符号分隔)

系统信息收集模块

在撰写本文时,我们只看到Marap从C&C服务器上下载了一个系统信息收集模块。它是从“hxxp://89.223.92[.]202/mo.enc”,内部命名为“mod_Init.dll”。该模块是一个采用C语言编写的DLL。会收集以下系统信息并发送到C&C服务器:

用户名

域名

主机名

IP地址

语言

国家

Windows版本

Microsoft Outlook.ost文件列表

已安装的防病毒软件

结论

随着防病毒供应商越来越善于捕获商品化的恶意软件,威胁行为者和恶意软件作者均在继续探索新的方法,以提高效率,并减少其传播的恶意软件的痕迹和固有的“噪音”。我们注意到,今年勒索软件的分发量大幅下降,而银行木马、downloader和其他恶意软件则开始填补这一空缺,这增加了威胁参与者在目标设备和网络上建立持久性的机会。


*转载自 FreeBuf.COM

打赏我,让我更有动力~

0 条回复   |  直到 2018-8-28 | 1175 次浏览
登录后才可发表内容
返回顶部 投诉反馈

© 2016 - 2024 掌控者 All Rights Reserved.