tRat:一种出现在多起垃圾电子邮件活动中新模块化RAT

阅读量468569

|评论7

|

发布时间 : 2018-11-16 15:35:34

x
译文声明

本文是翻译文章,文章原作者 Proofpoint,文章来源:proofpoint.com

原文地址:https://www.proofpoint.com/us/threat-insight/post/trat-new-modular-rat-appears-multiple-email-campaigns

译文仅供参考,具体内容表达以及含义原文为准。

 

TA505Proofpoint所追踪的最多产的黑客组织之一。从2014年开始,该组织发起了数百起Dridex活动,并在2016年和2017年期间发起了大规模的Locky活动,其中许多活动都涉及到在全球范围内传播数亿条恶意信息。最近,该组织一直在分发各种远程访问木马(RAT),以及其他信息窃取、加载和侦察工具,包括一个被我们称为“tRat”的之前未被报道过的恶意软件。tRat是一种采用Delphi编写的模块化RAT,于今年9月和10月出现在各种活动中(TA505是参与者之一)。在这篇博文中,我们讨论这些活动,并对该恶意软件进行简要分析。

 

活动分析

2018927日,Proofpoint发现了一起垃圾电子邮件活动,其中的恶意Microsoft Word文档使用宏下载了一种此前未被报道过的RAT。这些文件滥用了诺顿(Norton)的品牌,文档的名称和内嵌的图像都想要体现出它们受到了安全产品的保护。电子邮件的主题行强化了社会工程,声明“我已经安全地与您共享了文件”,而启用内嵌的宏就会导致tRat被安装。这起活动是由一个未知黑客组织发起的,而在929日再次出现了一起与之明显存在关联的活动,滥用了猫途鹰(TripAdvisor)的品牌(图2)。

1:来自2018927日活动的诱饵文档,滥用品牌和社会工程来诱骗收件人启用恶意宏

2:在2018929日活动中使用的TripAdvisor诱饵文档,再次滥用品牌和社会工程诱骗用户启用宏

1011日,我们观察了另一起分发tRAT的垃圾电子邮件活动,它的发起者是TA505。这起活动更加复杂,使用了Microsoft WordMicrosoft Publisher文件,以及不同的主题行和发件人,似乎针对的是商业银行机构的用户。

在这起活动中,携带恶意Microsoft Publisher文档的电子邮件声称与发票有关,并涉及到各种发件地址。电子邮件的主题行采用了“Inovicesic[随机数字] – [随机数字]”这样的格式,并且携带了名为“inv-399503-03948.pub”的附件。在另一种情况下,携带恶意Microsoft Word附件的电子邮件声称来自“Vanessa Brito”,同样涉及到各种发件地址。附件在这些电子邮件中被命名为“Report.doc”,电子邮件主题行采用了“Call Notification -[随机数字] – [随机数字]”这样的格式。

3展示了其中一封电子邮件样本:

320181011日活动的电子邮件样本

对于所有电子邮件而言,附件都包含宏,当启用时,会下载tRat 

420181011日的诱饵文档样本

tRat分析

在我们继续分析该恶意软件的同时,我们也明确了它的一些功能。在我们所分析的样本中,tRat通过将二进制文件复制到以下位置来实现持久性:

C:\Users\<user>\AppData\Roaming\Adobe\Flash Player\Services\Frame Host\fhost.exe

接下来,tRat会在Startup目录下创建一个LNK文件,用于在启动时执行二进制文件:

C:\Users\<user>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\bfhost.lnk

tRat的大多数重要字符串都是在经过十六进制编码和加密后存储的。在我们的Github页面上,有一个Python脚本可用来解密这些字符串。

tRat使用TCP端口80来进行命令和控制(CC)通信, 数据同样在经过十六进制编码和加密后进行传输。为了生成解密密钥,tRat连接到三个字符串,而结果是大写的十六进制编码。在我们所分析样本中的字符串如下所示:

1.         “Fx@%gJ_2oK”

2.         “AC8FFF33D07229BF84E7A429CADC33BFEAE7AC4A87AE33ACEAAC8192A68C55A6”

3.         “&LmcF#7R2m”

目前尚不清楚这些字符串是否因样本不同而存在差异。除了生成密钥之外,tRat还在解密过程中使用了一个1536字节的表。在撰写本文时,我们无法确定表中所有元素的含义,也无法确定其是否会发生更改。但是,我们能够确定的是,解密过程涉及到使用被加密的数据与表中的值进行异或运算。来自分析样本的表和Python脚本都可以我们的Github页面上找到,可用于解密通信。

tRat的初始phone-home network请求称为“AUTH_INF”。解密后的样本如下所示:

MfB5aV1dybxQNLfg:D29A79D6CD2F47389A66BB5F2891D64C8A87F05AE3E1C6C5CBA4A79AA5ECA29F8E8C8FFCA6A2892B8B6E

这个字符串由一个分隔为两个子字符串。第一个子字符串是是作为加密字符串存储的硬编码标识符。第二个子字符串包含加密的系统数据,如下所示:

FASHYEOHAL/nXAiDQWdGwORzt:3A176D130C266A4D

这些数据包含受感染主机的计算机名称、系统用户名和tRat bot ID,但我们尚未确定bot ID是如何生成的。

对于phone-home network请求,CC将使用“[P]”或命令列表进行响应。如果tRat收到“[P]”,它将“[G]” 作为响应。虽然这看起来像命令轮询,但命令列表、命令和模块数据的准确格式是未知的。目前,我们认为loader中唯一支持的命令是“MODULE”,它至少包含一个模块名和导出名。为了接收模块,tRat需要执行以下步骤:

发送“[GET_MODULE]”

如果收到“[WAIT_FOR_AUTH_INF]”,则发送AUTH_INF数据

如果收到“[WAIT_FOR_MODULE_NAME]”,则发送模块名

响应可能是以下之一:

“[ERR_MODULE_NOT_FOUND]”

“[[ACCESS_DENIED]]”

模块长度

如果收到的是模块长度,则发送一个“[READY]”

接收模块

模块本身的加密方式与CC通信类似,但似乎使用了随模块一起发送的不同密钥

解密后,模块将作为DLL加载,并使用收到的导出名执行

目前我们还没有观察到CC提供的任何模块,因此我们不确定它们可能会添加哪些功能。

 

总结

鉴于TA505所发起活动的数量、频率和复杂程度,该组织往往会在电子邮件威胁领域掀起波澜。对于该组织而言,开始测试新的恶意软件并不是什么稀罕事,因为他们在过去的活动中已经使用了BackNetCobalt StrikeMarapDreamsmasherBart 。另外,他们也曾使用过类似Locky这样的新型恶意软件,以及一些分布并不广泛的恶意软件,如FlawedAmmyy。此外,他们在今年对RAT的使用反映了出一种更为广泛的向loader、窃取程序和其他恶意软件的转变。这些恶意软件被设计用于驻留在受感染设备上,并为威胁行为者提供长期的投资回报。

 

IOCs

IOC

IOC 类型

描述

cd0f52f5d56aa933e4c2129416233b52a391b5c6f372c079ed2c6eaca1b96b85 SHA256 927日活动中的tRat样本散列
cdb8a02189a8739dbe5283f8bc4679bf28933adbe56bff6d050bad348932352b SHA256 1011日活动中的tRat样本散列
51.15.70[.]74 IP C&C

 

参考资料

[1] https://github.com/EmergingThreats/threatresearch/blob/master/tRat/decrypt_str.py

[2] https://github.com/EmergingThreats/threatresearch/blob/master/tRat/table

[3] https://github.com/EmergingThreats/threatresearch/blob/master/tRat/decrypt_comms.py

本文翻译自proofpoint.com 原文链接。如若转载请注明出处。
分享到:微信
+10赞
收藏
圆圈
分享到:微信

发表评论

内容需知
合作单位
  • 安全客
  • 安全客
Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全客 All Rights Reserved 京ICP备08010314号-66