安全分析与研究
专注于全球恶意软件的分析与研究
前言概述
原文首发出处:
https://xz.aliyun.com/t/14955
先知社区 作者:熊猫正正
Brute Ratel C4是一款类似于Cobalt Strike的商业红队武器框架,该工具每年License收费为3000美元,客户需要提供企业电子邮件地址并在颁发许可证之前进行验证,首个版本Brute Ratel C4 v0.2于2021年2月9日发布,它是由Mandiant和CrowdStrike的前红队队员Chetan Nayak创建的,该工具独特之处在于它专门设计防止端点检测和响应(EDR)和防病毒(AV)软件的检测,是一款新型的红队商业对抗性攻击模拟武器。
与Cobalt Strike的Beacon后门类似,Brute Ratel C4允许红队在远程终端主机上部署Badger后门程序,Badger程序连接回攻击者的命令和控制服务器,接收服务器端的命令执行相关的恶意行为。
笔者最近跟踪到一例利用Brute Ratel安装其他恶意软件的攻击活动,对该攻击活动进行了详细分析,供大家参考学习。
详细分析
1.初始样本为一个JS恶意脚本,恶意脚本里面带有很多垃圾注释代码,如下所示:
2.去掉无用的垃圾注释代码之后,如下所示:
3.恶意脚本解析还原上面包含的恶意代码,从远程服务器上下载恶意MSI安装程序并安装执行,如下所示:
4.恶意安装程序会启动rundll32.exe进程执行恶意模块,如下所示:
5.恶意模块启动执行之后,进程信息,如下所示:
6.获取相关函数地址,然后通过VirtualAlloc分配相应的内存空间,如下所示:
7.通过异或算法解密程序中的加密数据,解密密钥为P9zw@Hg6cquhA0ZMRr^c,如下所示:
8.解密之后的PayLoad数据,如下所示:
9.分配新的内存空间,将解密后的PayLoad加载到新的内存空间当中,然后跳转执行到PayLoad入口代码,如下所示:
10.解密出来的PayLoad疑是BRC4后门模块,如下所示:
11.PayLoad加载程序中包含的恶意模块代码,并调用其导出函数StartW,如下所示:
12.程序中包含的恶意模块代码,如下所示:
13.StartW导出函数代码,使用长时间休眠逃避自动化沙箱,如下所示:
14.加载执行到恶意模块的入口点代码处,如下所示:
15.分配内存空间,将程序中包含的ShellCode代码数据写入到内存空间,然后调用远程线程执行ShellCode代码,如下所示:
16.写入到内存的ShellCode代码数据,如下所示:
17.最后跳转执行ShellCode代码,如下所示:
18.解密ShellCode中的加密数据,如下所示:
19.解密之后的PayLoad数据,PE文件头被抺掉,如下所示:
20.然后跳转执行到解密出来的PayLoad入口代码处,如下所示:
21.PayLoad入口代码,如下所示:
22.获取相关函数地址,如下所示:
23.PayLoad在内存中解密出远程C2配置信息,如下所示:
24.解析出远程服务器C2域名信息,如下所示:
25.解析出远程服务器端口信息7444,如下所示:
26.解析出远程C2服务器URL请求后缀信息,如下所示:
27.获取主机相关信息,如下所示:
28.将获取的主机相关信息,按固定的格式拼接请求数据包,如下所示:
29.将请求数据加密,加密之后,如下所示:
30.然后与远程服务器通信,通过POST将请求数据发送到服务器端,如下所示:
到此整个恶意软件加载执行过程就分析完毕了。
威胁情报
总结结尾
黑客组织利用各种恶意软件进行的各种攻击活动已经无处不在,防不胜防,很多系统可能已经被感染了各种恶意软件,全球各地每天都在发生各种恶意软件攻击活动,黑客组织一直在持续更新自己的攻击样本以及攻击技术,不断有企业被攻击,这些黑客组织从来没有停止过攻击活动,而且非常活跃,新的恶意软件层出不穷,旧的恶意软件又不断更新,需要时刻警惕,可能一不小心就被安装了某个恶意软件。