1. 概述
近期,奇安信威胁情报中心威胁监控系统监测到一个基于GO语言编写的僵尸网络正在通过多个漏洞进行传播,经过分析确认该样本属于已经被披露的僵尸网络家族 Kaiji,该僵尸网络在 2020 年由 MalwareMustDie 曝光,随后 Intezer 做了深入分析,而后 Kaiji 僵尸网络变种亦被黑莲花实验室(Lumen Technologies的威胁情报部门)称作 Chaos,深信服千里目安全实验室于2022年七月曾发布文章表示 Kaiji 僵尸网络正在重构,而我们于今年发现该僵尸网络重出江湖并进行了更新迭代。
分析师在对 Kaiji 僵尸网络变种进行关联时,意外发现 Kaiji 僵尸网络竟然和我们正在跟踪的一个巨型僵尸网络租赁团伙有关,在本文中我们将披露这个来自中国的黑客团伙 —— Ares。
2. Ares 黑客团伙
2.1 团伙命名
我们将该黑客团伙命名为 Ares 的原因有三个,其一,我们发现样本作者将其编写的 Kaiji 变种称为 "ares" ,其二,新变种样本配置以 "[a=r=e=s]" 为分隔符,其三,在最近几天我们发现,该黑客团伙的多个资产统一更改成了同一登陆页面,并且该页面中也自称为 "Ares" ,黑客团伙在其页面中还写上了 “三思而后行” 的英文标语 “look before you leap”。
2.2 团伙资产
Ares 团伙除了拥有 Kaiji 僵尸网络以外,还拥有多个其他家族的僵尸网络,其中包括了Mirai、Moobot及Lucifer,其中Moobot家族数量极大,且在原版基础上经过修改,我们在去年开始跟踪此团伙时将此变种命名为Moobot_jack5tr。
资产及关联如下图:
2.3 巨型租赁僵尸网络
Ares 黑客团伙拥有一个数量庞大的僵尸网络并且提供租赁服务,该团伙同时运营着多个租赁平台,下面提供了该团伙部分拥有的平台数据图,从中可以看出其使用者数量众多,发起过极大数量的DDoS攻击:
DDoS 攻击租赁价格部分如下:
2.4 挖矿活动
Ares 黑客团伙除了僵尸网络以外,黑莲花实验室曾披露该团伙下发 XMRig 进行挖矿作业,我们此次分析中也发现团伙下发的 Lucifer 家族僵尸网络样本中除了DDoS攻击及远程命令执行的功能外,会单独创建线程利用 XMRig 进行挖矿:
2.5 团伙所属国家及成员
Kaiji僵尸网络在被曝光时Intezer团队及MalwareMustDie 小组将其归属至中国,其原因是该家族样本的函数命名及下发指令解析方式均是以汉语拼音或汉字,我们在对 Ares 团伙资产进行分析时也确认了这一点,该团伙在编写Web页面时也习惯使用中文进行注释。
同时在溯源时发现了疑似团伙成员的中国开发者,该成员曾经运营过一个黑客技术交流论坛:
在去年还为其论坛购买过广告服务:
当前该论坛已变更为DDoS服务租赁平台(攻击者将其合法地解释为压力测试),并且声称不允许攻击政府、银行或教育网站:
2.6 攻击动向
在对 jack5tr 进行监控的过程当中,我们发现该团伙参与了俄乌的网络战争,在去年11月初监测到 jack5tr 对乌方阵营的重要目标进行DDoS攻击,我们暂时无法确定这次攻击是来自 Ares 黑客团伙还是某个租赁该组织攻击服务的用户。
参与此次针对乌克兰攻击的 Moobot_jack5tr 的CC域名为 " s7.backupsuper.cc"。
3. Kaiji 变种分析
新变种 Kaiji 中上线包中包含字符串 "专业版",因此我们将该变种命名为 Kaiji_Pro:
我们这里主要分析新型变种的异同,以 x86-64 样本为例进行分析,样本信息:
文件名 | 文件大小 | 文件MD5 |
linux_amd64 | 5234688 bytes | A7124B85C126414AD96ED0143B827B55 |
3.1 配置文件
Kaiji_Pro 中使用配置文件来保存其指令。样本运行时会在本机保存一个加密存储的配置文件,其文件名为 ".walk.lod",路径依次从以下选取 "/dev"、"/etc"、"/mnt" 、"/opt"、"/sys" 、"/usr" 、"/run" 、"/var/run" 、"/tmp",配置命令以 "[a=r=e=s]" 为分隔符:
参数 | 含义 |
Pid | 读取到这个参数会杀死PID对应进程。 |
Begin、End | 描述一个IP地址范围,DDoS时替换源IP。 早期版本这两个参数仅通过C2指令控制,分别叫ipbegin和ipend。 |
Backdoor | 后门模式标志位,影响C2选择。 |
Remarks | Bot标记,默认为 "专业版"。 |
配置文件支持5种参数:Pid、Begin、End、Backdoor、Remarks。Pid为样本进程的Pid号;Begin和End用来记录一个IP范围,如果配置了这个参数,在后续某些ddos攻击中(syn、ack、udp),将优先使用这个范围的IP来替代源IP地址;Backdoor参数标记样本是否处于后门模式,可能影响样本C2的选择;Remarks记录的是样本的标记,默认情况下这个参数为中文 "专业版"。
除了Pid,其余参数都能通过C2指令来修改,并且这些参数将同步加密保存到本地的配置文件中,Bot在发送上线包时,同时会上报载入的配置参数。
3.2 隐藏手段
同旧版本 Kaiji 类似,Kaiji_Pro 也做了大量措施来确保样本隐蔽性与持久性,此部分沿用了大量旧版本 Kaiji 代码,但是由于这部分代码并未经过严谨测试,部分代码将导致一些预期之外的结果。
Kaiji_Pro 的隐藏位置与启动方式如下表:
恶意程序 | 启动方式 |
/etc/opt.services.cfg | 写入shell脚本/etc/32677,脚本每60秒启动一次opt.services.cfg,32677由样本启动运行。 |
/usr/lib/libgdi.so.0.8.1 | 写入shell脚本/.mod,脚本程序写入定时任务。 |
/lib/system-mark | 注入"/etc/rc.d/init.d/"、"/etc/init.d/"、"/etc/rc.d/"路径下的shell脚本调用执行。 |
“/usr/bin/”下的ls、ps、ss、dir、netstat、find、lsof | 用户执行命令时运行。 |
/tmp/seeintlog | 通过伪装系统命令被执行时,在执行真正命令后调用。 |
/usr/sbin/ifconfig.cfg | 注入"/etc/rc.local"、"/etc/rc.d/rc.local"、"/etc/init.d/boot.local"文件运行。 |
/etc/profile.d/bash_cfg | 写入"/etc/profile.d/bash_cfg.sh"脚本调用执行。 |
/boot/System.mod | l 注入服务配置文件 "/usr/lib/systemd/system/quotaoff.service",通过服务启动 l 使用audit2allow工具,添加为SELinux的策略模块并使用semodule安装 l 添加dns-tcp4服务,其配置文件指向恶意程序 |
3.3 新变种BUG
Kaiji_Pro 样本中存在多个BUG。
Kaiji_Pro 尝试拷贝样本为 "/etc/opt.services.cfg" 文件,并在 "/etc/32677" 位置写入并运行一个持久化的sh脚本。但是作者在处理sh脚本文件名时,对明文的文件名进行了一次解密函数的调用,导致sh脚本文件名变成乱码,最后导致恶意的sh脚本不会被执行。
样本尝试替换 "/usr/bin/" 下的ls、ps、ss、dir、netstat、find、lsof命令文件,使得用户在失陷机器上使用上述命令时,会先执行恶意样本。在样本运行时通过对文件名进行判断,并在 "/usr/lib/include/" 下调用一遍真正的命令文件,同时打印命令输出。但由于部分代码缺失,将导致 "/usr/lib/include/" 路径为空的情况。最终导致失陷机器无法正常执行上述命令。
因此我们猜测最新的变种样本是由 Ares 团伙新成员编写,对样本熟悉度并不高。
3.4 通信协议
Kaiji_Pro 与 C2 的通信使用 TLS 加密,相较于旧版本,新版本不再使用 "<<<>>>" 来做消息分隔,并且还新添加了数据头部,该头部由长度为50字节的硬编码数据与可变且无实意4字节组成。
下发的指令包括修改bot配置,功能指令、攻击指令,相比旧版本添加了针对 Websocket 协议的攻击类型支持,作者对其攻击类型的分类如下:
3.5 传播方式
通过漏洞与密码爆破进行传播,近期使用的漏洞如下表所示:
Vulnerability | Vendor |
CVE-2021-22204 | ExifTool |
CVE-2021-22205 | Gitlab |
CVE-2017-0144 | Windows SMB |
CVE-2014-8361 | Realtek SDK |
MVPower DVR - Shell Command Execution | MVPower DVR |
4. Moobot_jack5tr 分析
Moobot_jack5tr 是该团伙拥有的一个规模极大的僵尸网络,该变种由 Moobot_Xor 修改而来,这里以 x86样本为例,主要分析与原版的差异,样本信息:
文件名 | 文件大小 | 文件MD5 |
huax86 | 55632 bytes | EB33936E405C636CDA405F9D8EB8A5EC |
4.1 命令行执行
该变种有一明显特征,在主函数开始后会首先拼接一个命令字符串执行,该命令行主要作用是创建一个bin目录进行样本隐藏,名称从busybox 、watchdog、systemd等正常程序名中随机选取:
4.2 开启 httpd 服务
Moobot_jack5tr 运行后会开启一个随机 httpd 端口并将端口信息上传C2,该端口用于继续传播样本,简要来说就是开启了一个mini的web服务,将失陷主机用于样本传播的节点之一:
4.3 通信协议
Moobot_jack5tr 的通信协议及其他功能与Moobot_Xor 基本保持一致,上线包依旧是 "33 66 99" 这三个字节。
5. IoCs
MD5:
EB33936E405C636CDA405F9D8EB8A5EC
4C49020AA15D1C8830BBDAAB504F0FF1
0AD295E94B262DD3A1C52BFBD028F954
FA9F27C7E1CBD0B6EF96F5E43792E195
C12BCA1EF3EFF76DA18989BE0C237B5B
A7124B85C126414AD96ED0143B827B55
A3A697C0E2B18D9CCD53B8FB77BB4176
A2966E013D93A6080EE2795118BCD518
4F8AF0DF4B45FD6A891AB3D1330285B2
7077D4E803FBC23E221FB0E381A3EBDF
B20370C5A3747DB5CDF27C1FF2E4B3B7
C&C:
Moobot_jack5tr:
104.244.76.7: 56999
s7.backupsuper.cc:56999
vds.hostlookl.cc:56999
adsl.testapiss.online:56999
gang.monster:56999
control.rawrgaming.icu:56999
Kaiji_pro:
www.chaosii.com
www.2s11.com
llkh.net
998n.f3322.net
23.224.143.170:8000
193.29.15.178:19329
193.29.15.178:32677
205.185.117.18:8080
104.218.236.103:32677
163.197.248.66:8888
205.185.117.18:8888
23.224.143.170:8888
声明:本文来自奇安信威胁情报中心,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。