HackingTeam新活动,Scout/Soldier重回视野

背景

HackingTeam是全世界知名的网络军火商,在2015年遭遇攻击后近400G的内部数据和工程化武器几乎被完全公开,在此之后一家名为Tablem的公司并购了"被破产"的HackingTeam,此后HackingTeam陷入沉寂。

360安全大脑在2018年"刻赤海峡"事件中捕获的一起针对俄罗斯的APT事件中,使用的后门疑似来自HackingTeam,在2019年一起影响中亚地区的APT事件中,同样发现了HackingTeam后门的身影,诸多信息表明HackingTeam依旧在全球恶意网络活动中活跃。

2020年1月,360安全大脑下诺亚实验室在日常的狩猎运营工作中,发现了一例高度模块化的RAT,并认定为HackingTeam RCS框架中的Soldier木马程序,在3月前夕,我们再次关联到该次活动使用Soldier的前置片段,并将其认定为HackingTeam RCS框架中的Scout木马程序,自此形成较为完整的活动拼图。

攻击流程及特点

从目前掌握的情况,本次HackingTeam RCS重现主要分为两个阶段

  • 第一阶段 通过伪装网络电视软件LiveNetTV,释放RCS框架中的Scout木马,进行系统基础信息收集,并具有一定ANTI机制
  • 第二阶段 通过伪装Java程序并执行RCS框架中Soldier木马,进行系统信息获取并窃取浏览器密码和cookie,窃取Facebook,Gmail,Twitter等信息

两个阶段的木马程序均使用了VMProtect加壳,通过历史HackingTeam泄露资料研究可知,两个木马具备创建共享内存空间联动的特性,这也是二者经常伴生出现的原因。

在本次捕获的样本中,我们发现样本具备以下特点:

  1. 使用了此前未知的有效证书签名
  2. 与此前泄露的RCS相比,现活跃的攻击样本均做了一定程度订制和变种
  3. 活动集中出现于2019年10月-2020年3月
  4. 依旧使用VMP壳保护

Unpack VMP

此处我们用到两种脱壳VMP的方式,一种用于提取关键信息,另一种则是进行完全脱壳。

方法一 通过运行样本,当样本开始解包自身时可以进行内存dump,一些关键信息可以在这个阶段dump拿到,且该方法也是HackingTeam团队自己处理VMP时的常用手段,并以此开发了工具VMProtect Dumper。

方法二 找到程序原始入口,找到.vmp部分调用,对原始API进行调用重写,最后对重写后的程序进行rebuild。

由于解决了VMP的问题,所以在接下来的样本分析过程中得到比较清晰的结果。

Stage1 分析

MD5 3f67b25082212393668c51710fe8191d
文件名 LiveNetTV.exe
签名 CODEMAT LTD
描述 Scout木马

文件伪装

样本从远端进行下发压缩包hxxp://srv[.]cloudcepvep[.]ru/video.rar,内容包含两个视频内容和通过伪装网络电视直播软件LiveNetTV的Scout木马进行感染,并通过CODEMAT LTD签名(现已失效)。

同时伪装成微软的同步软件rapimgr:

杀软检测

样本进行了简单的杀软黑名单检测:

并针对Windows Defender进行了变种检测,通过WMI命令查看Windows Defender状态并关闭实时保护:

持久化准备

样本会判断当前运行的目录是否在指定目录中,不在则创建文件到指定目录。

通过创建计划任务做持久化准备:

信息收集

在核心功能信息收集部分,Scout变种通过WMI获取系统基础信息

最后收集常规系统信息

上线和回连

将收集的数据拼接后通过AES-CBC-128加密,并用base64进行编码

BACKDOOR_ID " b1970000000163"
Key:"B69254EE7A348B4BD87A9BC536E2692835504D328E746BE5C4C2B4C65C84FC85"

加密并编码后的数据:

当木马接收消息匹配时,将与C2 hxxp://89[.]45[.]67[.]29进行通联并渗出信息:

通过POST方式将加密数据发送到hxxp://89[.]45[.]67[.]29/search

Stage2 分析

MD5 51a2646f7586c1864507d057ef1f3500
文件名 Java.exe
签名 CODEMAT LTD
描述 Soldier木马

Soldier木马同样进行文件伪装和签名(依旧有效)

相比较Stage1阶段的Scout,Soldier功能更丰富,模块化完成度非常高。

与Scout联动

木马程序首先会检查当前是否为系统进程

此前在HackingTeam的泄露资料和邮件答疑中看到Soldier常被用于和Scout和Elite(另一款HackingTeam木马程序)联动,在本次分析中也得到了验证:

加解密操作

木马程序使用AES-CBC-128进行加解密操作,IV为0,首先会初始化加解密使用的KEY,包括向服务器发送数据时的ServerKey,解密配置的ConfKey

并从自身数据中解密配置文件

通过key解密得到指令配置文件,得到C2地址和端口如下:

此外还包含了丰富的远控和窃密功能

camera 摄像头监控
position 位置获取
screenshot 截屏
photo 图片窃取
file 文件操作
addressbook 通讯录获取
chat 聊天信息窃取
clipboard 粘贴板信息获取
device 基础设备信息
call 通话信息
message 短信信息
password 密码窃取
keylog 键盘记录
mouse 鼠标事件记录
uninstall 自毁

信息获取和上线

获取计算机基础信息

与Stage1中的渗出方式一样,将数据拼接后通过AES-CBC-128加密,夹杂标识数据后发送到C2

BACKDOOR_ID:"e2df0000000166"  // stage 2 表示当前为soldier
ServerKey:"B6 92 54 EE 7A 34 8B 4B D8 7A 9B C5 36 E2 69 28 5E 84 CB B2 70 77 68 89 69 D0 FC 43 4A 7D 48 49"

窃密功能

作为一款高度模块化的间谍软件,Soldier的主要工作是是进行窃密行为,我们发现本次捕获的木马程序依旧保留了强大的窃密功能,分别能对Gmail,Facebook,Twitter,Yahoo等敏感信息进行窃密,并对应解密后的指令渗出。

除邮件,社交平台,IM之外,木马程序还会对Chrome,IE,Firefox主流浏览器进行保存密码窃取和cookie盗取。

与HackingTeam的归因

我们发现本次木马样本与2015年泄露的文件在大部分功能上均保持一致,且代码风格也在一些深度函数编写上保持一致,在这样的延续性下做False Flag的可能性不会很大。

唯一的差别在于我们发现前后两个版本的启动文件大小不一致,从之前的4MB大小扩充到了6MB,我们推测其是为了做沙箱的ANTI。

以下左侧为源码部分,右侧为样本部分,我们对代码和流程层面进行归因。

启动文件填充大小:

MySleep函数比对:

附加垃圾数据函数比对:

综合友商的数据可以发现其平滑更新的版本号:

Scout

Soldier

未被披露的有效证书

HackingTeam常使用有效证书对恶意文件签名,以此规避杀软检测,在此前的泄露中,我们也能清晰看到HackingTeam掌握大量证书:

https://github.com/Rafiot/HackedTeamCerts

本次我们获取到两个有效证书:

其中CODEMAT签发的Soldier依旧有效,其他均已被吊销,与此前ESET从Citizen Lab拿到的签发给个人的证书不同,这次捕到的证书更像是泄露盗用。

通过对人员的研究,我们也排除了两位签发人员参与HackingTeam相关黑客行为的可能性。

Timeline

2020年1月12日 -- 360安全大脑诺亚实验室捕获Soldier变种

2020年3月9日 -- 360安全大脑诺亚实验室关联捕获Scout变种

总结

网络军火商HackingTeam自从被黑后便逐渐淡出人们视野,2018年出现在针对俄罗斯的"毒针"行动中出现后再次沉寂两年,可以看到的是网络军火交易从未停止,诸如HackingTeam,EquationGroup等相关团体被攻击引发的资料泄露,使得网络武器民用化加剧,在网络战时代,各国都应该对网络军火重新审视。

IoC

User agents

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36

Mozilla / 5.0 (compatible; MSIE 10.0; Windows NT 7.0; InfoPath.3;.NET CLR 3.1.40767; Trident / 6.0; en - IN)

 

backdoor id               

b1970000000163
cac70000000146
00560000000140
e2df0000000166

 

URL:

http://srv.cloudcepvep.ru/video.rar
http:// 89.45.67.29/search
http:// 45.11.181.17/search
http:// 178.128.215.46/search

 
IP: 

178.128.215.46
45.11.181.17
89.45.67.29
165.227.232.154

 

签名:

KELSUREIWT LTD
有效期:‎2018‎年‎10‎月‎13‎日- ‎2019‎年‎10‎月‎14‎日

样本HASH:

Scout:
B4692BB8776AB351A8104346B858AEA5

 

CODEMAT LTD
有效期:‎2019‎年‎6‎月‎17‎日- ‎2020‎年‎6‎月‎17‎日

样本HASH:

Scout:
812C81BF15535E90DC479D6BD69DD426
3AF02E9EFCF30224FEE6DAE3C1F41EDE
DCDA748387C572ED1AA7424E26278F70
3F67B25082212393668C51710FE8191D

Soldier
51A2646F7586C1864507D057EF1F3500