摘要
Menorah 恶意软件被 APT34 组织使用,该组织以中东的组织为目标,并于今年 8 月被趋势科技发现。该恶意软件会创建一个互斥锁,以确保一次只运行一个副本。它提取主机名和用户名,并计算标识受感染计算机的哈希值。实现以下命令:创建新进程、列出特定目录中的文件和子目录、泄露任意文件以及下载主机上的文件。
分析和发现
SHA256: 64156f9ca51951a9bf91b5b74073d31c16873ca60492c25895c1f0f074787345
恶意软件必须使用等于当前目录中前两个字母的参数运行,如下所示。
图1
它创建一个名为“115CF7F6-69B4-49EE-B453-BAF00531AC52”的互斥锁,以确保一次只运行恶意软件的一个副本(图 2)。
图2
该过程将计时器的间隔设置为 32 秒,这确保了与 C2 服务器的持续通信:
图3
检索主机名和用户名,然后恶意软件计算这两个值之间串联的 MD5 哈希值:
图4
图5
以下字符串构造为“d@@HostName|Username“,如图 6 所示。
图6
C2 服务器 “http[:]//tecforsc-001-site1.gtempurl[.]com/ads.asp“在恶意软件中被硬编码(参见图 7)。
图7
图8
图9
二进制文件选择一个介于 3 和 14 之间的随机数,并基于硬编码的“密钥”生成一串字符,如下所示:
图10
图11
标识主机的编码字符串通过 POST 请求泄露到 C2 服务器。使用 GetResponse、GetResponseStream 和 ReadToEnd 函数读取服务器响应:
图12
图13
恶意进程会创建一个处理 C2 服务器响应的新线程:
图14
服务器响应具有以下结构“[@@]”。提取的值使用 XOR 运算符进行 Base64 解码和解密。解密的字符串具有以下结构“Param1@Param2@Param3”。Param2 是可以是 1 或 2 的命令 ID,Param3 是要执行的 Base64 编码的命令。
图15
图16
命令以“+sp”开头 – 创建一个进程并泄露其输出
第三个参数还包含将由恶意软件生成的进程名称:
图17
图18
CommandLineToArgvW API 用于获取指向 cmdline 参数的指针数组。二进制文件使用 CreatePipe 创建匿名管道,并且读取句柄可继承,如下所示:
图19
图20
恶意软件通过对 CreateProcess 函数的函数调用创建一个新进程。使用 PeekNamedPipe 和 Read 方法读取进程的输出,然后泄露到 C2 服务器:
图21
命令以“+nu”开头 – 向 C2 服务器发送特定字符串
以下字符串将发送到 C2 服务器“1.1.1|http[:]//tecforsc-001-site1.gtempurl[.]com/ads.asp“(参见图 22)。
图22
命令以“+fl”开头 – 列出目录中的文件和子目录
第三个参数还包含目录名称:
图23
该过程调用 GetFiles 和 GetDirectories 函数,以从主目录中提取文件和子目录。对于其中每个属性,将提取 LastWriteTime 属性:
图24
图25
文件和子目录的数量也被添加到上面构造的结构中:
图26
命令以“+dn”开头 – 将文件内容发送到 C2 服务器
第三个参数指定将要泄露的文件。该过程使用 ReadAllBytes 方法读取文件内容(图 27)。
图27
文件名以及 Base64 编码的内容将传输到 C2 服务器:
图28
根据是否在本地计算机上找到该文件,将向 C2 服务器发送以下消息之一:
图29
如果命令 ID 为 2,则恶意软件会创建一个文件,其中填充了从 C2 服务器接收的内容(图 30)。
图30
发送到服务器的确认消息包含之前创建的文件路径:
图31
IOC
SHA256
64156f9ca51951a9bf91b5b74073d31c16873ca60492c25895c1f0f074787345
MUTEX
115CF7F6-69B4-49EE-B453-BAF00531AC52
C&C
http[:]//tecforsc-001-site1.gtempurl[.]com/ads.asp
参考链接:https://securityscorecard.com/research/menorah-malware-apt34/
图片来源网络目标可联系删除