【翻译】威胁狩猎:国内威胁行为者的新后门Noodle RAT
字数 3342 2025-08-22 22:47:39
Noodle RAT 恶意软件分析与防御指南
1. Noodle RAT 概述
Noodle RAT(又称ANGRYREBEL或Nood RAT)是一种跨平台后门恶意软件,存在Windows(Win.NOODLERAT)和Linux(Linux.NOODLERAT)两个版本。该恶意软件自2016年起活跃,但长期被错误归类为Gh0st RAT或Rekoobe等已知恶意软件的变种。
1.1 历史时间线
- 2016年7月:Windows版本v1.0.0编译
- 2016年12月-2017年4月:Linux版本v1.0.1编译
- 2018年:首次被报告但错误归类
- 2019年:针对泰国的间谍活动中使用
- 2020-2021年:针对印度、日本、马来西亚和台湾的间谍活动
- 2024年:仍有新样本上传至VirusTotal
2. Win.NOODLERAT 技术分析
2.1 基本特性
- 内存中的模块化后门,以shellcode形式存在
- 必须通过专用加载程序执行(MULTIDROP或MICROLOAD)
- 主要功能:
- 文件上传/下载
- 运行额外内存模块
- 作为TCP代理
2.2 加载机制
- MULTIDROP:恶意软件投放器,2019年针对泰国活动中使用
- MICROLOAD:
- 被合法Microsoft应用程序Oleview.exe加载
- 解密注册表项HKCR\Microsoft.System.UpdateColl\UpdateAgent中的加密有效载荷
- 使用RC4算法解密
- 注入到svchost.exe
2.3 C&C通信机制
- 支持协议:TCP、SSL、HTTP
- 加密算法:RC4 + 自定义算法(XOR和AND指令组合)
- 数据包结构:
- 头部(header)
- 有效载荷(payload)
头部加密过程:
- 初始化头部字段(cmd_id, payload_len, const_val)
- 生成3个随机32位整数
- 结合负载长度与随机值生成部分RC4密钥
- 使用预设密钥进行XOR编码
- 转换数值为十六进制字符串并拼接
- 使用生成的密钥加密头部前24字节
有效载荷加密过程:
- 复制cmd_id和const_val
- 使用XOR和AND对数值编码
- 转换为十六进制字符串并拼接
- 使用生成的字符串作为RC4密钥加密有效载荷
2.4 后门命令分类
根据命令ID分为两类:
类型0x03A2(共享版本)
- 具备除自毁外的大部分功能
- 被Iron Tiger等组织使用
类型0x132A(专属版本)
- 具备全部功能
- 仅被Calypso APT使用
2.5 命令功能对照表
| 操作 | 类型0x03A2 | 类型0x132A |
|---|---|---|
| 认证成功 | 0x03A2 | 0x132A |
| 命令结束 | 0x0AC3 | 0x1AC3 |
| 初始化模块元数据 | 0x194C | 0x294C |
| 接收模块数据 | 0x1AF2 | 0x2AC8 |
| 无管道模块启动 | 0x1397 | 0x230E |
| 删除模块元数据 | 0x1D50 | 0x2D06 |
| 上传文件 | 0x390A + 子ID | 0x590A + 子ID |
| 递归列出目录 | 0x390A + 0x35C5 | 0x590A + 0x55C5 |
| 下载文件 | 0x390A + 子ID | 0x590A + 子ID |
| 写入管道 | 0x2099 + 子ID | 0x3099 + 子ID |
| 启动TCP服务器 | 0x2099 + 0x2CBD | 0x3099 + 0x3CD0 |
| 删除自身 | N/A | 0x1C1C |
3. Linux.NOODLERAT 技术分析
3.1 基本特性
- ELF格式后门
- 部署方式:通常作为对外应用程序漏洞利用的一部分
- 主要功能:
- 反向shell
- 文件上传/下载
- 调度执行
- SOCKS隧道
3.2 安装过程
- 复制自身到/tmp/CCCCCCCC
- 覆盖argv数组实现进程名欺骗
- 使用硬编码密钥"r0st@#$"通过RC4解密内嵌配置
3.3 C&C通信
- 加密算法与Win版类似(RC4 + XOR/AND)
- 认证机制:
- 接收40字节数据,分为两个20字节块
- 每个块与预设字符串结合计算SHA1哈希
- HMAC_SHA1值作为AES密钥和IV
- 接收并解密另外16字节数据
- 验证解密数据与预设质询匹配
3.4 后门命令分类
根据命令ID分为两类:
类型0x03A2(共享版本)
- 被Rocke组织、Cloud Snooper等使用
类型0x23F8
- 归因信息不足
3.5 命令功能对照表
| 操作 | 类型0x03A2 | 类型0x23F8 |
|---|---|---|
| 授权成功 | 0x03A2 | 0x23F8 |
| 启动后门 | 0x2099 | 0x4799 |
| 反向shell | 0x1 + 0x2186 | 0x1 + 0x5186 |
| 目录列表 | 0x2 + 子ID | 0x2 + 子ID |
| 文件操作 | 0x2 + 子ID | 0x2 + 子ID |
| 上传文件 | 0x3 + 子ID | 0x3 + 子ID |
| 递归列表 | 0x3 + 0x35C5 | 0x3 + 0x35C5 |
| 下载文件 | 0x3 + 子ID | 0x3 + 子ID |
| 创建目录 | 0x3 + 子ID | 0x3 + 子ID |
| SOCKS隧道 | 0x4/0x5 | 0x4/0x5 |
| 显示时间 | 0x6 + 0x2186 + 0x1 | N/A |
| 下载特定文件 | 0x6 + 0x2186 + 0x2 | N/A |
4. Noodle RAT 与相关恶意软件对比
4.1 与Gh0st RAT的关系
- 相似点:
- 使用相同插件
- 类似的加密算法(XOR组合)
- 不同点:
- 核心代码无直接关联
- 应视为独立家族
4.2 与Rekoobe的关系
- 代码复用:
- 反向shell代码与Tiny SHell相同
- 进程名欺骗与Rekoobe v2018相同
- 不同点:
- 其余代码显著不同
- 应视为独立家族
5. Noodle RAT 服务器端分析
5.1 控制面板
- "NoodLinux v1.0.1"
- 密码保护(默认"hello!@#")
- 支持TCP和HTTP协议
5.2 构建器
- 版本:v1.0.1和v1.0.2
- 功能:使用自定义配置构建Linux.NOODLERAT
- 附带中文文档(更新说明、配置文件)
6. 防御建议
6.1 检测指标
- 文件系统:
- Linux:/tmp/CCCCCCCC, /usr/include/sdfwex.h, /tmp/.llock
- Windows:注册表项HKCR\Microsoft.System.UpdateColl\UpdateAgent
- 网络:
- RC4加密通信
- 特定端口上的TCP/HTTP活动
- 进程:
- 可疑的svchost.exe子进程
- 进程名欺骗行为
6.2 防御措施
-
端点保护:
- 部署能够检测shellcode注入的EDR解决方案
- 监控异常进程行为(如Oleview.exe加载异常模块)
-
网络防御:
- 检测RC4加密流量模式
- 阻止与已知C&C服务器的通信
-
漏洞管理:
- 及时修补面向公众的应用程序
- 特别关注Linux服务器的安全更新
-
日志监控:
- 记录和分析进程创建事件
- 监控注册表关键位置的修改
-
意识培训:
- 提高对中文来源恶意软件的认识
- 培训安全团队识别Noodle RAT特有行为
7. 总结
Noodle RAT是一个长期被低估的跨平台后门恶意软件家族,具有以下关键特点:
- 存在Windows和Linux版本
- 使用复杂的加密通信机制
- 被多个威胁组织用于间谍活动和网络犯罪
- 具有专业的开发和支持基础设施(控制面板、构建器)
- 部分代码复用自其他恶意软件但核心功能独立
安全团队应将其视为独立威胁,并针对其特有行为部署专项检测和防御措施。