网络安全研究人员发现了一种名为 PUMAKIT 的新型 Linux rootkit,它具有升级权限、隐藏文件和目录、从系统工具中隐藏自身等功能,同时还能躲避检测。
Elastic 安全实验室的研究人员 Remco Sprooten 和 Ruben Groenewoud 在周四发布的一份技术报告中说:“PUMAKIT 是一种复杂的可加载内核模块(LKM)rootkit,它采用先进的隐身机制来隐藏自己的存在,并保持与命令控制服务器的通信。”
该公司的分析来自今年 9 月初上传到 VirusTotal 恶意软件扫描平台的人工制品。
该恶意软件的内部结构基于一个多阶段架构,包括一个名为 “cron ”的滴管组件、两个内存驻留可执行文件(“/memfd:tgt ”和“/memfd:wpn”)、一个LKM rootkit(“puma.ko”)和一个名为Kitsune(“lib64/libs.so”)的共享对象(SO)用户域rootkit。
它还使用 Linux 内部函数跟踪器(ftrace)挂钩多达 18 种不同的系统调用和各种内核函数,如 “prepare_creds ”和 “commit_creds”,以改变核心系统行为并实现其目标。
研究人员说:“PUMA 使用独特的方法进行交互,包括使用 rmdir() 系统调用进行权限升级,以及使用专门的命令提取配置和运行时信息。”
研究人员说:“通过分阶段部署,LKM rootkit 确保只有在满足特定条件(如安全启动检查或内核符号可用性)时才会激活。这些条件通过扫描Linux内核来验证,所有必要的文件都以ELF二进制文件的形式嵌入到滴管中。”
可执行文件“/memfd:tgt ”是默认的 Ubuntu Linux Cron 二进制文件,未作任何修改,而“/memfd:wpn ”则是 rootkit 的加载器,前提是满足条件。LKM rootkit 包含一个嵌入式 SO 文件,用于从用户空间与菜鸟进行交互。
Elastic 公司指出,感染链的每个阶段都旨在隐藏恶意软件的存在,并在释放 rootkit 之前利用内存驻留文件和特定检查。该公司告诉《黑客新闻》,现阶段还不能将 PUMAKIT 归咎于任何已知的威胁行为者或组织。
“PUMAKIT是一种复杂而隐蔽的威胁,它使用了系统调用挂钩、内存驻留执行和独特的权限升级方法等先进技术。它的多体系结构设计凸显了针对 Linux 系统的恶意软件日益复杂,”研究人员总结道。