Malwarebytes 威胁情报团队发现了一种新的新型远控木马,命名为 Woody RAT ,野远研究人员发现其在野已经存在至少一年。控木
攻击者最近利用 Follina 漏洞来针对俄罗斯的针组织实体发起攻击 ,根据注册的对俄虚假域名推测 ,攻击目标应该为名为 OAK 的航空航天俄罗斯航空航天与国防组织。
分发方式Woody RAT 使用两种方式进行分发 :压缩文件与利用 Follina 漏洞的新型 Office 文档文件。
早期的野远样本在 ZIP 文件中,伪装成俄罗斯特组织的控木文件 。当 Follina 漏洞出现时 ,源码库针组织攻击者也利用其进行分发恶意软件。对俄整体攻击流程如下所示:

攻击流程
压缩文件Woody RAT 被打包在压缩文件中发给受害者 ,航空航天这些压缩文件是新型通过鱼叉邮件进行传播的 。一些压缩文件如下所示 :
anketa_brozhik.doc.zip:其中包含同名的野远 Woody RAT 文件:Anketa_Brozhik.doc.exe
zayavka.zip :其中包含 Woody RAT 伪装的程序 :selection.doc.exe
Follina 漏洞恶意文档(Памятка.docx)使用 Follina 漏洞(CVE-2022-30190)来传播 Woddy RAT ,诱饵文档名意为“信息安全备忘录” ,控木其中列举了关于密码和机密信息有关的安全措施 。

诱饵文档
Woody RAT攻击者在样本中留下了 PDB 路径的调试信息:

调试信息
许多 CRT 函数都是静态链接的,这使 IDA 产生了大量的高防服务器分析噪音 。在初始化前,恶意软件通过以 0x8007 作为参数调用 SetErrorMode 来有效地屏蔽所有错误报告。

主函数
CookieWoody RAT 使用 HTTP 与 C&C 服务器进行通信。为了标识每台失陷主机,恶意软件会根据主机信息生成 Cookie 值 。主机信息包括网卡信息 、计算机名称 、卷信息,并且追加八字节的随机字符 ,尽量使 Cookie 能够成为唯一值 。
使用 GetAdaptersInfo、GetComputerNameA 和 GetVolumeInformationW 获取信息后 ,生成的 Cookie 会随着每个 HTTP 请求一起发送 。模板下载

get_cookie_data 函数
数据加密恶意软件使用 RSA-4096 和 AES-CBC 来加密发送到 C&C 服务器的数据 ,其中 RSA-4096 的公钥硬编码在二进制文件中,恶意软件在运行时利用 BCryptImportKeyPair 函数导入。
恶意软件在运行时通过生成 32 字节随机值获取 AES-CBC 的密钥,使用 RSA-4096 算法对这 32 字节加密回传 C&C 服务器 。恶意软件和 C&C 服务器同时使用这些字节利用 BCryptGenerateSymmetricKey 生成 AES-CBC 的密钥,该密钥在随后的 HTTP 请求中用于加密和解密数据 。

RSA 加密

AES 加密
C&C 请求恶意软件向 C&C 服务器发出的第一个 HTTP 请求是 knock ,为带有 Cookie 的云计算 POST 请求。请求中包含 32 字节随机值 ,用于生成 AES-CBC 密钥 ,而这 32 个字节是经过 RSA-4096 加密的。

请求头
返回的响应在解密后 ,包含此后该主机与 C&C 服务器通信的 URL 路径 。
随后,恶意软件发起 submit请求,将失陷主机相关环境信息回传,数据经过 AES-CBC 加密 。环境信息如下所示:
操作系统
架构
已安装的反病毒软件
计算机名称
操作系统构建版本
.NET 信息
PowerShell 信息
Python 信息(安装路径 、亿华云版本等)
存储驱动器信息
环境变量
网络接口
管理员权限
正在运行的进程列表
代理信息
用户名
所有用户帐户的列表
目前恶意软件通过注册表项检测六个反病毒软件,分别为:Avast Software、Doctor Web 、Kaspersky、AVG、ESET 和 Sophos。
最后,恶意软件会定期向 C&C 服务器发出 ping请求。如果响应 _CRY就继续保持轮询,如果响应 _ACK就会包含继续执行的命令 。
C&C 命令恶意软件使用一个特定线程与 C&C 服务器通信,并使用另一个线程来执行从 C&C 服务器接收到的命令。服务器租用为了保持线程同步,恶意软件利用事件和互斥锁 。必须强调的是,所有通信都是经过 AES 加密的。

命令执行
_SET 命令PING :此命令用于设置对 C&C 服务器的 ping 请求之间的睡眠周期
PURG:未知命令
EXIT:退出命令执行线程
_REQ 命令EXEC:创建两个命名管道并将输入和输出重定向到这些管道 ,使用 ReadFile 从命名管道读取命令的输出,然后将_DAT附加到此数据 ,再进行 AES 加密并发送到 C&C 服务器

EXEC 命令
UPLD:下载文件到失陷主机
INFO :重新将submit 的信息发回 C&C 服务器

INFO 命令
UPEX :在失陷主机下载文件并执行(UPLD + EXEC)
DNLD:将失陷主机的文件上传回 C&C 服务器
PROC :直接执行命令 ,不调用 cmd.exe
UPPR:在失陷主机下载文件并执行(UPLD + PROC)
SDEL:删除失陷主机的文件
_DIR:列出指定目录的所有文件与属性(文件名 、类型、所有者 、创建时间、上次访问时间 、上次写入时间、大小、权限)
STCK:一次执行多个命令,按照接收顺序执行
SCRN :屏幕截图后使用 AES-CBC 对图像进行加密并发送到 C&C 服务器
INJC:下发要注入的代码并注入指定目标进程 ,使用 WriteProcessMemory 将代码写入远程内存,然后使用 CreateRemoteThread 创建远程线程

INJC 命令
PSLS:使用 SystemProcessInformation 调用NtQuerySystemInformation 以检索所有正在运行的进程,将相关信息(PID、父进程 PID 、进程名称 、所有者)发回 C&C 服务器
DMON :使用 CreateProcess 创建进程不回传输出
UPDM:上传文件并执行(DMON 方式)
SharpExecutor 和 PowerSession 命令恶意软件还内嵌了两个 .NET 实现的 DLL 文件 ,分别为 WoodySharpExecutor 和 WoodyPowerSession。WoodySharpExecutor 支持恶意软件运行从 C&C 服务器接收的 .NET 代码, WoodyPowerSession 支持恶意软件执行从 C&C 服务器接收的 PowerShell 命令和脚本 。WoodyPowerSession 使用管道来执行这些 PS 命令:

SharpExecutor 和 PowerSession 命令
DLL 支持的命令有:
DN_B :使用 RunBinaryStdout 方法执行汇编代码
DN_D :接收由代码 、类名 、方法名和参数组成的 base64 字符串数组,为攻击者提供对执行更精细的控制,如不将输出回传
PSSC :接收 base64 编码的 PowerShell 命令并执行
PSSS:接收 base64 编码的 PowerShell 脚本并执行
PSSM :接收 base64 编码的字符串数组,解码后导入命令管道并调用
恶意软件清理创建命令线程后,恶意软件就会使用 ProcessHollowing 技术从磁盘中删除自身。首先创建一个挂起的记事本进程,然后使用 NtWriteVirtualMemory 将 Shellcode 写入挂起的进程。再使用 NtSetContextThread 重置线程入口点并恢复线程 。

自行删除
未知攻击者研究人员未能对该恶意软件进行归因 ,暂时没有任何可靠的证据能指向特定的攻击者开发了 Woody RAT。
IOC982ec24b5599373b65d7fec3b7b66e6afff4872847791cf3c5688f47bfcb8bf0
66378c18e9da070629a2dbbf39e5277e539e043b2b912cc3fed0209c48215d0b
b65bc098b475996eaabbb02bb5fee19a18c6ff2eee0062353aff696356e73b7a
43b15071268f757027cf27dd94675fdd8e771cdcd77df6d2530cb8e218acc2ce
408f314b0a76a0d41c99db0cb957d10ea8367700c757b0160ea925d6d7b5dd8e
0588c52582aad248cf0c43aa44a33980e3485f0621dba30445d8da45bba4f834
5c5020ee0f7a5b78a6da74a3f58710cba62f727959f8ece795b0f47828e33e80
3ba32825177d7c2aac957ff1fc5e78b64279aeb748790bc90634e792541de8d3
9bc071fb6a1d9e72c50aec88b4317c3eb7c0f5ff5906b00aa00d9e720cbc828d
ffa22c40ac69750b229654c54919a480b33bc41f68c128f5e3b5967d442728fb
kurmakata.duckdns[.]org
microsoft-ru-data[.]ru
194.36.189.179
microsoft-telemetry[.]ru
oakrussia[.]ru
garmandesar.duckdns[.]org:444/uoqiuwef.html
fcloud.nciinform[.]ru/main.css