奇安信XLab 04月06日 14:36
警惕:0检测的Melofee 木马新变种曝光,专攻RHEL 7.9系统
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

奇安信X实验室发现针对Red Hat Enterprise Linux (RHEL) 7.9的Melofee后门木马新变种,该木马具备信息收集、进程管理、文件操作和SHELL等功能,并采用RC4加密的内核级驱动模块隐藏活动痕迹。新变种在文件结构和功能上均有升级,例如采用了新的C2地址和功能号设计。文章深入分析了该木马的解密过程、驱动模块以及后门功能,并提供了检测和清除建议。

🕵️‍♂️ **隐蔽性极强:** Melofee后门木马新变种通过RC4加密的内核级驱动模块,隐藏样本文件、进程和网络通信,使得检测难度大大增加。

⚙️ **功能升级:** 新变种在持久化、单一实例机制以及功能号设计方面有所变化,表明攻击者持续重构和使用该后门木马。

🔑 **核心技术:** Melofee使用RC4加密解密驱动模块和C2配置,驱动模块基于开源项目Reptile修改而来,实现了对网络连接、进程、文件和目录的多维度隐藏。

💻 **两种模式:** Melofee具有感染模式和管理模式,感染模式用于隐蔽自身并建立与C2服务器的通信;管理模式则通过参数控制驱动的隐藏状态。

原创 奇安信X实验室 2024-11-12 14:09 中国香港

概述

24年7月27日,XLab的大网威胁感知系统检测到 IP 地址 45.92.156.166 正在传播一个名为pskt的ELF 文件,它在 VirusTotal 上尚无检测。该样本触发了两条告警:文件存在 Overlay 区段,且通信域名疑似模仿微软。经过分析,我们确认这是一个专门针对 Red Hat Enterprise Linux (RHEL) 7.9 的 Melofee 后门木马变种。

Melofee 是一个用 C++ 编写的后门木马,支持信息收集、进程管理、文件操作和 SHELL 等功能,最早于 2023 年 3 月被 ExaTrack公司 披露,据信隶属于 APT 组织 Winnti。此次捕获的样本相比旧版本在文件结构和功能层面均有显著升级。文件结构方面,新变种内嵌了一个 RC4 加密的内核级驱动模块,专门用于隐藏活动痕迹,包括样本文件、进程和网络通信。在功能上,新样本在持久化、单一实例机制以及功能号设计方面也有所变化。

通过比较样本中的 RTTI(运行时类型信息),甚至可以看到源码层面的改动。例如,先前样本中的网络连接类名为 TLSSocket,而本次样本的类名已更改为 TlsConn,这暗示 Melofee 可能在安全社区的监测之外被持续重构和使用。

值得注意的是,我们在溯源过程中还发现了一个有趣的误关联。新变种使用的 C2 地址为 filemanage.micrsofts-file.com。根据 PDNS 系统记录,该 C2 的二级域名 micrsofts-file.com 及其关联域名 www.micrsofts-file.com 在 2023 年 11 月至 2024 年 6 月期间解析至 IP 地址 91.195.240.123。该IP也出现在 2024 年 7 月 BlackBerry公司 发布的 APT 组织 SideWinder 分析报告中,且在 VirusTotal 上,它已被多家安全厂商标记为恶意。这是否意味着 Melofee 已在多个组织间流通,成为跨组织使用的工具,而非某个特定组织的专属?

我们认为答案是否定的。91.195.240.123 实际上是域名注册商 NameSilo 提供的 Parking IP,我们认为将其标记为恶意属于误报。NameSilo 会自动将新注册的二级域名及 www 三级域名解析至该 IP,因此,正常域名、不相关的恶意域名及 APT 活动可能共享此 IP,导致误导性的关联

由于视野有限,我们尚不清楚攻击者的具体入侵手段及其后续目的,欢迎知情者提供更多线索,以帮助完善技战术矩阵。鉴于样本及域名的低检测率,以及Melofee家族的高隐匿性我们决定撰写本文,与社区分享我们的发现,共同维护网络安全。

本文将深入分析以下要点:



技术细节

此次发现的新变种,目前我们只捕获了一个样本,它的功能相对直观,此变种的的功能相对直观,可根据运行方式是否带有参数,划分为 感染模式 和 管理模式 两种:

感染模式(无参数启动):当 Melofee无参数启动时,进入感染模式。在此模式下:

管理模式(带参数启动):当 Melofee 带有参数启动时,进入管理模式,接受一个参数控制驱动的隐藏状态。可用参数为:

这种设计使得Melofee可以在感染和管理两种模式下灵活运作,满足不同场景下的隐蔽性和控制需求。下文将围绕解密过程、驱动模块以及后门功能等方面分析 Melofee 的技术细节。


第一部分:解密

Melofee 将 RC4 加密的驱动模块以 drv_overlay 结构体的格式附加在文件尾部,作为 Overlay 部分存储。

    struct drv_overlay{    int encrypted_payload[payload_size];    int payload_size;    char flag[12];}

    在这个样本中flag的值为EV#?YLFAkoip,payload_size为0x6a08,从playload_szie往前的0x6a08字节为encrypted_payload

    使用密钥87JoENDi对encrypt_payload进行解密,就得到了驱动模块kworkerx,可以看出它针对的操作系统为RHEL 7.9,内核版本为3.10.0。

    C2配置同样采取RC4加密,密钥为87JoENDi,解密后为0:filemanage.micrsofts-file.com:443:60,它包含以下4部分:



    第二部分:驱动模块

    解密得到的驱动模块kworkerx,经过分析,我们确定它实际上是由开源项目Reptile修改而来。原生的Reptile支持以下通过12种功能,可以分成隐藏,后门2大类;kworkerx主要使用其中的隐藏功能。

    kworkerx 通过在初始化函数中挂钩 tcp4_seq_show 来隐藏网络通信记录,所有 443 端口的通信都不显示。对于进程、文件和目录的隐藏,kworkerx则通过挂钩 fillonedir、filldir、filldir64 以及 vfs_read 等函数来实现。

    此外,kworkerx 还挂钩了 inet_ioctl 函数,以便与用户空间通信,接收控制命令。

    当用户空间调用ioctl函数时,若传入的第二个参数为 0xE0E0E0E,则会进入kworkerx的处理函数 khook_inet_ioctl。在该函数中,根据第三个参数的值来开启或关闭 kworkerx 提供的各种隐藏功能。

    ARG.CMD
    CAPABILITY
    0
    show all
    1
    hide all
    2
    hide proc
    3
    show proc
    5
    file tamering
    7
    hide file,dir
    8
    unhide_chdir
    9hide_chdir


    第三部分:功能分析

    Melofee通过init_module函数安装kworkerx内核驱动模块后,默认就开启了TCP连接的隐藏,再通过IOCTL发送相应的控制指令,开启进程,目录,持久化的隐藏。

    我们在虚拟机中首次以无参数形式执行该样本,结果显示其成功隐藏了进程、样本文件、持久化脚本及网络连接。随后,使用 show 参数再次运行样本,进程、样本文件和持久化脚本重新显现,但网络连接依然保持隐藏状态。最终,通过 rmmod 命令卸载 kworkerx 模块后,隐藏的网络连接才得以恢复显示。

    Melofee 在安装驱动模块后,会解密 C2 配置并建立通信,等待接收指令并执行。本次捕获的样本支持的功能与 ExaTrack 分析报告中的描述基本一致,但在功能号上存在极大差异。

    CMD ID
    CAPABILITY
    0x11
    uninstall
    0x22
    collect device info
    0x33
    launch new command thread
    0x34
    write file
    0x35
    readfile
    0x36
    create new tcp connection
    0x37
    list directory
    0x38
    create directory
    0x3a
    delete directory
    0x3b
    create process to exec cmd
    0x3c
    exec command with output(including set new c2 ip
    0x3d
    collect process info
    0x3e
    kill process
    0x3f
    launch shell
    0x7b
    ping back


    总结

    Melofee 提供的功能较为简洁,但具备极强的隐匿性。该家族的样本并不常见,攻击者可能将其使用范围限定在高价值目标上。网络管理员可以通过 /tmp/lock_tmp1 文件以及 kworkerx 等实体判断系统是否受到感染。如发现感染迹象,可按照前文描述删除相关驱动、进程、文件和持久化内容。

    我们欢迎读者提供新的见解和情报,如您对我们的研究感兴趣,可通过留言与我们联系。


    阅读原文

    跳转微信打开

    Fish AI Reader

    Fish AI Reader

    AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

    FishAI

    FishAI

    鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

    联系邮箱 441953276@qq.com

    相关标签

    Melofee 后门木马 RHEL APT
    相关文章