TA505是Proofpoint网络安全公司所追踪的最多产的黑客组织之一。从2014年开始,该组织发起了数百起Dridex活动,并在2016年和2017年期间发起了大规模的Locky活动,其中许多活动都涉及到在全球范围内传播数亿条恶意信息。最近,该组织一直在分发各种远程访问木马(RAT),以及其他信息窃取、加载和侦察工具,包括一个被Proofpoint称为“tRat”的之前未被报道过的恶意软件。tRat是一种采用Delphi编写的模块化RAT,于今年9月和10月出现在各种活动中(TA505是参与者之一)。在上周四发表的博文中,Proofpoint对这些这些活动进行了讨论,并对该恶意软件进行简要分析。
活动分析
2018年9月27日,Proofpoint发现了一起垃圾电子邮件活动,其中的恶意Microsoft Word文档使用宏下载了一种此前未被报道过的RAT。这些文件滥用了诺顿(Norton)的品牌,文档的名称和内嵌的图像都想要体现出它们受到了安全产品的保护。电子邮件的主题行强化了社会工程,声明“我已经安全地与您共享了文件”,而启用内嵌的宏就会导致tRat被安装。这起活动是由一个未知黑客组织发起的,而在9月29日再次出现了一起与之明显存在关联的活动,滥用了猫途鹰(TripAdvisor)的品牌(图2)。
在10月11日,Proofpoint观察到了另一起分发tRAT的垃圾电子邮件活动,它的发起者是TA505。这起活动更加复杂,使用了Microsoft Word和Microsoft Publisher文件,以及不同的主题行和发件人,似乎针对的是商业银行机构的用户。
在这起活动中,携带恶意Microsoft Publisher文档的电子邮件声称与“发票”有关,并涉及到各种发件地址。电子邮件的主题行采用了“Inovice(sic)[随机数字] -[随机数字]”这样的格式,并且携带了名为“inv-399503-03948.pub”的附件。在另一种情况下,携带恶意Microsoft Word附件的电子邮件声称来自“Vanessa Brito”,同样涉及到各种发件地址。附件在这些电子邮件中被命名为“Report.doc”,电子邮件主题行采用了“Call Notification -[随机数字] - [随机数字]”这样的格式。
图3展示了其中一封电子邮件样本:
对于所有电子邮件而言,附件都包含宏,当启用时,会下载tRat。
tRat分析
在Proofpoint继续分析该恶意软件的同时,他们也明确了它的一些功能。在他们所分析的样本中,tRat通过将二进制文件复制到以下位置来实现持久性:
C:\Users\
接下来,tRat会在Startup目录下创建一个LNK文件,用于在启动时执行二进制文件:
C:\Users\
tRat的大多数重要字符串都是在经过十六进制编码和加密后存储的。在Proofpoint的Github页面上,有一个Python脚本可用来解密这些字符串。
tRat使用TCP端口80来进行命令和控制(C&C)通信, 数据同样在经过十六进制编码和加密后进行传输。为了生成解密密钥,tRat连接到三个字符串,而结果是大写的十六进制编码。在Proofpoint所分析样本中的字符串如下所示:
"Fx@%gJ_2oK"
"AC8FFF33D07229BF84E7A429CADC33BFEAE7AC4A87AE33ACEAAC8192A68C55A6"
"&LmcF#7R2m"
目前尚不清楚这些字符串是否因样本不同而存在差异。除了生成密钥之外,tRat还在解密过程中使用了一个1536字节的表。在撰写博文时,Proofpoint还没有能够确定表中所有元素的含义,也无法确定其是否会发生更改。但能够确定的是,解密过程涉及到使用被加密的数据与表中的值进行异或运算。来自分析样本的表和Python脚本都可以Proofpoint的Github页面上找到,可用于解密通信。
tRat的初始phone-home network请求称为“AUTH_INF”。解密后的样本如下所示:
MfB5aV1dybxQNLfg:D29A79D6CD2F47389A66BB5F2891D64C8A87F05AE3E1C6C5CBA4A79AA5ECA29F8E8C8FFCA6A2892B8B6E
这个字符串由一个“:”分隔为两个子字符串。第一个子字符串是是作为加密字符串存储的硬编码标识符。第二个子字符串包含加密的系统数据,如下所示:
FASHYEOHAL/nXAiDQWdGwORzt:3A176D130C266A4D
这些数据包含受感染主机的计算机名称、系统用户名和tRat bot ID,但Proofpoint表示他们尚未确定bot ID是如何生成的。
对于phone-home network请求,C&C将使用“[P]”或命令列表进行响应。如果tRat收到“[P]”,它将“[G]”作为响应。虽然这看起来像命令轮询,但命令列表、命令和模块数据的准确格式是未知的。目前,Proofpoint认为loader中唯一支持的命令是“MODULE”,它至少包含一个模块名和导出名。为了接收模块,tRat需要执行以下步骤:
发送“[GET_MODULE]”
如果收到“[WAIT_FOR_AUTH_INF]”,则发送AUTH_INF数据
如果收到“[WAIT_FOR_MODULE_NAME]”,则发送模块名
响应可能是以下之一:
“[ERR_MODULE_NOT_FOUND]”
“[[ACCESS_DENIED]]”
模块长度
如果收到的是模块长度,则发送一个“[READY]”
接收模块
模块本身的加密方式与C&C通信类似,但似乎使用了随模块一起发送的不同密钥
解密后,模块将作为DLL加载,并使用收到的导出名执行
Proofpoint表示,目前还没有观察到C&C提供的任何模块,因此他们无法确定有哪些功能可能会被添加。
总结
鉴于TA505所发起活动的数量、频率和复杂程度,该组织往往会在电子邮件威胁领域掀起波澜。对于该组织而言,开始测试新的恶意软件并不是什么稀罕事,因为他们在过去的活动中已经使用了BackNet、Cobalt Strike、Marap、Dreamsmasher和Bart。另外,他们也曾使用过类似Locky这样的新型恶意软件,以及一些分布并不广泛的恶意软件,如FlawedAmmyy。此外,他们在今年对RAT的使用反映了出一种更为广泛的向loader、窃取程序和其他恶意软件的转变。这些恶意软件被设计用于驻留在受感染设备上,并为威胁行为者提供长期的投资回报。