Log4j2余毒,BillGates木马正借助漏洞大规模快速传播
前言
近期,微步在线研究响应中心通过蜜罐捕获到 BillGates 家族的木马样本,该木马通过最近爆发的 Log4j2 漏洞传播。Log4j2 这个组件在 Java 领域被广泛使用,该组件涉及范围广,利用门槛低,危害极大,所以该漏洞带来的影响可谓是重量级的。
BillGates 是 Linux x86僵尸网络的常见家族木马,该家族木马出现后便快速占领互联网,严重影响互联网的安全健康发展,威胁广大网民安全冲浪,损耗互联网及设备资源。
事件起因
12月10日凌晨,Apache 开源项目 Log4j2 的远程代码执行漏洞细节被公开,通常在漏洞公开的3-7天里,是漏洞爆发利用的高峰。微步在线研究响应中心的安全研究人员分析蜜罐中捕获到的相关攻击数据发现,攻击量在短短数日内呈现大幅上升趋势。
蜜罐Log4j攻击数据
Log4j2 漏洞是由它的 lookup 功能造成的,该功能允许开发者通过协议去读取环境的配置,由于未对输入进行严格的判断,从而造成漏洞的发生。攻击的网络数据一般会包含有 “jndi” 字符。
利用 base64 解密相关数据可得出相关地址。
告警排查分析
微步终端威胁检测与响应平台 OneEDR 主机页面出现告警,该告警提示木马进程、net-tools、lsof 等应用完整性被破坏。Net-tools 构成了 Linux 网络的基础,可用于列出系统上所有的网络套接字连接情况,包括 TCP、UDP 以及 unix 套接字,另外它还能列出处于监听状态(即等待接入请求)的套接字;lsof(List Open Files) 用于查看你进程开打的文件,打开文件的进程,进程打开的端口(TCP、UDP),找回/恢复删除的文件。
点击10.53.8.196主机日志页面,发现有文件下载、执行的行为文件 aaa 的 MD5 为 c8ba8bcfd8f068a19b89f112e80a9e56。
点击其中一种可疑告警信息查看详情,发现 /tmp/aaa 加载了 xpacket.ko。
OneEDR 告警信息提示 “可执行文件路径异常”,这是一个利用 Linux 文件特性的以“.”为前缀即可隐藏的文件,实则是一个障眼法。
木马会复制自身为 /usr/bin/bsd-port/getty ,为了巩固木马自身在宿主机的地位,getty 还劫持了 lsof、ps、netstat 等命令,这提高了木马被清理的难度。
紧接着就触发了告警,名为 aaa 的文件被 OneEDR 判定为 BillGates 僵尸网络木马。
样本分析
以下面样本作为示例进行分析,基本信息如下:
SHA256 a4b278170b0cb798ec930938b5bd45bbf12370a1ccb31a2bee6b2c406d881df6 MD5 c8ba8bcfd8f068a19b89f112e80a9e56 文件格式 ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, for GNU/Linux 2.2.5, not stripped 文件大小 1223123 文件名称 aaa |
木马执行后挂起,睡眠时间为0x7D0(2000ms),删除升级临时文件,从/etc/resolv.conf 读取 DNS 缓存信息,从 conf.n 读取配置信息,从 cmd.n 读取正在执行的情况,获取程序运行情况。
木马里面定义了 TCP-SYN Flood、UDP Flood、CC攻击、DNS 放大等多种攻击方式。
Ikdfu94 函数负责调用解密模块,对样本里面加密的 C2 进行解密。
利用 edb 进行动态调试,执行到0x8077abf地址时 ,可以看到函数 Ikdfu94 已经把样本里面加密的C2 给成功解密出来 C2: 300gsyn.it:25009 。
域名 300gsyn.it 解析的 IP 为 154.82.110.5 ,待样本完整运行后,会收集本地信息,包括时间、系统版本、文件目录信息等,收集完成后,进行上传信息给 C2 服务器。
微步在线研究响应中心在对蜜罐相关网络数据分析后,通过微步大数据平台,已经收录大量相关资产,主机威胁检测与响应平台 OneEDR 产品已支持对此类攻击的检测。
总结与思考
5.1 事件总结
本次事件是通过 OneEDR 在收集终端的进程、网络、文件等系统行为中发现的,通过 OneEDR 的智能关联功能,可了解到安全事件的上下文以及主机、账号、进程等信息,通过“进程链”快速掌握事件的影响范围以及事件的概括,从而精准溯源。
OneEDR 是一款专注于主机入侵检测的新型终端防护平台,通过利用威胁情报、行为分析、智能事件聚合、机器学习等技术手段,实现对主机入侵的精准发现,发现已知与未知的威胁。充分利用 ATT&CK 对攻击全链路进行多点布控,全面定位入侵行为路径。
5.2 事件思考
1.随着近几年5G物联网的迅速发展,物联网设备数量呈几何增长,物联网设备已经成为主要的攻击目标。
2.随着物联网设备的不断增多,使用 SSH 暴力破解攻击会也越来越多,这会让僵尸网络迅速增加自己的 bot;与此同时,黑客租用的是国外匿名廉价的VPS,它不但成本低,而且溯源难度较高,所以,以后僵尸网络只会越来越多。
3.目前的 IOT 僵尸网络以 DDoS 和 挖矿的木马为主。
5.3 处置建议
1.Kill进程 /usr/bin/.ssh 、/tmp/aaa 、/usr/bin/bsd-port/getty
2.删除以下文件
/usr/bin/.ssh
/tmp/aaa
/usr/bin/bsd-port/
/bin/ps
/bin/netstat
/usr/bin/netstat
/usr/sbin/lsof
/tmp/gates.lod
/tmp/moni.lod
/etc/init.d/selinux
/etc/init.d/DbSecuritySpt
/etc/rc1.d/S97DbSecuritySpt
/etc/rc1.d/S99selinux
/etc/rc2.d/S97DbSecuritySpt
/etc/rc2.d/S99selinux
/etc/rc3.d/S97DbSecuritySpt
/etc/rc3.d/S99selinux
/etc/rc4.d/S97DbSecuritySpt
/etc/rc4.d/S99selinux
/etc/rc5.d/S97DbSecuritySpt
/etc/rc5.d/S99selinux
3.恢复系统文件
mv /usr/bin/dpkgd/* /bin/
4.自查 Log4j 相关应用是否在 Log4j2.x <= 2.14.1 范围内,若是,请使用以下紧急缓解措施:
(1)修改 jvm 参数 -Dlog4j2.formatMsgNoLookups=true;
(2)修改配置 log4j2.formatMsgNoLookups=True;
(3)将系统环境变量 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 设置为 true。
