信息来源:freebuf 发布日期:2023-07-17 浏览:564
信息来源:freebuf
发布日期:2023-07-17 浏览:564
【关键字】
摩诃草组织
摩诃草,又名 Patchwork、白象、Hangover、Dropping Elephant 等,奇安信内部跟踪编号 APT-Q-36。该组织被普遍认为具有南亚地区背景,其最早攻击活动可追溯到 2009 年 11 月,已持续活跃 10 余年。该组织主要针对亚洲地区的国家进行网络间谍活动,攻击目标包括政府、军事、电力、工业、科研教育、外交和经济等领域的组织机构。
近期,奇安信威胁情报中心在日常样本跟踪分析过程中,发现一批与摩诃草存在关联的恶意样本,攻击者使用的后门并非摩诃草组织此前常用的木马。无独有偶,国外安全研究人员也发现了其中几个样本[1],根据 C2 服务器登录界面的信息将该后门命名为 Spyder,并指出样本与 WarHawk 后门存在相似之处。后者由 Zscaler 在去年 10 月发布的报告[2]中披露,被认为是南亚另一个 APT 组织响尾蛇(Sidewinder)的攻击武器。
根据 Spyder 后门早期样本使用的数字签名和以此关联到的 Remcos 木马样本,我们更倾向于认为背后的攻击团伙是摩诃草。此外我们由攻击者使用的一个 IP 发现了另一款用 C# 编写的轻量级后门。
捕获到的 Spyder 样本基本信息如下:
MD5 | 创建时间 | 数字签名 | 文件名称 |
eb9068161baa5842b40d5565130526b9 | 2023-04-09 19:36:29 UTC | 有 | LIST OF SIGNAL ADDRESSES, CALL SIGN 10 Apr 2023.exe |
87d94635372b874f18acb3af7c340357 | 2023-04-13 09:20:42 UTC | 有 | PN SHIP OVERSEAS DEPLOYMENT PLAN TO FAR EAST CHINA.exe |
1fa3f364bcd02433bc0f4d3113714f16 | 2023-04-30 17:34:16 UTC | 有 | Rocket Launch System THE UPDT LIST OF MLRS PROB-.exe |
1f599f9ab4ce3da3c2b47b76d9f88850 | 2023-06-07 07:24:01 UTC | 无 | Read-Me New Naxal VPN Configration Settings.exe |
53b3a018d1a4d935ea7dd7431374caf1 | 2023-06-13 09:22:05 UTC | 无 | Read-Me New Naxal VPN Configration Settings.exe |
1f4b225813616fbb087ae211e9805baf | 2023-06-13 09:22:05 UTC | 有 | BAF Operations Report CamScannerDocument.exe |
上述样本均以 Word、Excel、PDF 等文档图标进行伪装。按照样本大小、创建时间和代码相似性,可以分为原始版(4 月样本)和新版(6 月样本)两类,新版相比原始版的代码进行了部分改动。结合样本名称、VT 上传地和样本中的配置信息,Spyder 后门的攻击目标包括中国、巴基斯坦、尼泊尔警察局、孟加拉国空军。
6月攻击样本几乎一样,包括 C2 信息,仅部分配置数据不同。以下面样本为例进行分析。
MD5 | 1f599f9ab4ce3da3c2b47b76d9f88850 |
文件大小 | 380928字节(372.00 KB) |
文件类型 | PE32 EXE |
首先获取文件资源 "FONTS" 类别下 "TRUETYPE" 中的数据,用 "ROUND9" 作为异或解密的 key,解密得到一系列配置数据。
解密得到的数据部分如下所示,包括后门 agent 代号(配置数据中最开始的 4 字节,数值为“3”)、互斥量名称和 C2 通信 URL。
除了从配置数据中获得关键字符串,后门还常用如下异或的方式解密所需字符串。
调用 CreateMutexA 创建互斥量之后,后门开始收集感染设备相关信息,收集的信息以及获取方式分别如下:
信息类型 | 获取方式 |
Machine GUID | 查询注册表HKLM\SOFTWARE\Microsoft\Cryptography中MachineGuid的数据 |
主机名 | 调用GetComputerNameExW |
用户名 | 调用GetUserNameW |
系统版本 | 查询注册表HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion中ProductName的数据 |
系统位数 | 调用GetNativeSystemInfo |
杀软信息 | WMI查询root\SecurityCenter2中数据 |
Profile | 从资源区解密的配置数据中获取 |
从资源区解密的配置数据中获取 |
使用 Base64 编码的变体 Y64 对上面信息分别进行编码。
向用于 C2 通信的 URL("hxxp://plainboardssixty.com/drive/bottom.php")发送 POST 请求,回传信息为 Machine GUID 和配置数据中的邮箱名。如果响应为 "1",则直接进入休眠状态。
将当前文件复制为用户 "C:\Users\[user_name]\AppData\Roaming" 目录下的 DllHostcache 文件,创建一系列计划任务,运行时间为第二天指定时间。
回传之前收集的信息。
字段名称 | 含义 |
hwid | Machine GUID |
username | 用户名 |
compname | 主机名 |
osname | 系统版本 |
arch | 系统位数 |
av | 杀软信息 |
agent | 配置数据中的后门agent代号(数值为“3”) |
profile | 配置数据中的profile信息 |
配置数据中的邮箱名 |
然后进入 while 循环,每次循环首先从配置数据中的另一个 URL "hxxp://plainboardssixty.com/drive/chilli.php" 下载文件保存在 Startup 目录中,如果下载成功则运行该文件。
之后与 C2 进行多次交互,下载后续载荷并运行,交互过程如下。
(1) 获取指令
向 C2 发送 "hwid=%s&deploy=1",获取返回指令。后门提供的指令只有字符 "1", "2", "3" 三种,三种指令功能均为获取后续载荷并运行。
(2) 获取包含后续载荷的压缩包名称和解压密码
选择具体指令后,向C2发送"hwid=%s&deploy=%d&bakmout=1",hwid字段仍为编码后的Machine GUID,而deploy字段对应所选指令数字。
此次响应消息为JSON字符串,包含name和pass两个字段,分别对应压缩包名称和解压密码。
(3) 下载压缩包并解压执行
下载 URL 为 "hxxp://plainboardssixty.com/drive/[name].zip" 的压缩包,以 pass 字段保存的密码解压。下载的压缩包和解压出的文件均保存在 "C:\Users\[user_name]\AppData\Local" 目录中,接着运行解压得到的文件。
(4) 通知C2操作结束
向 C2 发送 "hwid=%s&deploy=0",表示已运行下载的载荷,删除下载的压缩包,休眠 2s 后进入下一次循环。
后门指令详细说明如下。
指令 | 说明 |
"1" | 下载压缩包的本地保存名称为slr.zip,压缩包中1.bin文件解压保存为slb.dll,通过rundll32运行该DLL的导出函数CreateInterfaace。 |
"2" | 下载压缩包的本地保存名称为slr_2.zip,压缩包中2.bin文件解压保存为sihost.exe,运行该EXE文件。 |
"3" | 下载压缩包的本地保存名称为slr_3.zip,压缩包中3.bin文件解压保存为secd.exe,运行该EXE文件。 |
其他 | 无操作 |
6 月另外两个样本与上述样本几乎一样,不同之处在于:
配置数据中的互斥量、profile 和 email 的名称不同;
循环开始时从 hxxp://plainboardssixty.com/drive/chilli.php 下载文件的保存名称为 gameinput.exe;
指令 "2" 和 "3" 释放文件保存名称分别为 "Microsoft.Web.PageInspector.exe" 和 "DocumentFormat.OpenXml.exe",保存在 "AppData\Local"的"Microsoft.Web" 子目录下。
4月的原始版样本与6月的新版样本之间的差异不大,主要不同之处在以下几个方面:
(1) 配置用的关键字符串在初始化函数中异或解密,而不是像新版样本从资源区解密得到;
(2) 在创建一系列计划任务和回传收集的信息之前,没有与 C2 交互并根据响应选择是否休眠的操作;
(3) 与 C2 通信的循环开始时,没有从另一个额外的 URL 下载载荷并执行;
(4) 虽然两个版本的样本回传信息的格式一致,但是原始版本中的 profile 只是代号,mail 没有邮箱名,不像新版中具有明确的指向。
4月样本的配置数据如下所示。
MD5 | eb9068161baa5842b40d5565130526b9 |
C2 | (通信) hxxp://gclouddrives.com/spyder/smile.php (下载) hxxp://gclouddrives.com/spyder/[name].zip |
profile | TS-001 |
N |
MD5 | 87d94635372b874f18acb3af7c340357 |
C2 | (通信) hxxp://alibababackupcloud.com/spyder/smile.php (下载) hxxp://alibababackupcloud.com/spyder/[name].zip |
profile | TS-002 |
N |
MD5 | 1fa3f364bcd02433bc0f4d3113714f16 |
C2 | (通信) hxxp://cloudplatfromservice.one/cpidr/balloon.php (下载) hxxp://cloudplatfromservice.one/cpidr/[name].zip |
profile | TS-004 |
N |
值得注意的是,早期样本的 C2 路径中也出现了 "spyder" 字符串,而且样本中的 profile 均为 "TS-" 格式,中间缺失的代号意味着4月的攻击很可能还有其他受害者。
Spyder 与 Zscaler 披露的 WarHawk 后门[2]存在一些相似之处,但后门指令对应的操作有较大差别。
1. 相似之处
(1) 向 C2 发送 POST 请求的函数相似,且使用的 User Agent 相同。
(2) 收集的设备信息相似,并且均以 hwid(即Machine GUID)作为 C2 通信中的受害者标识。
(3) 两者的 C2 指令均以数字字符区分不同操作,且下发的 C2 指令均存在 JSON 格式的字符串。
2. 差异
两种后门的差别体现在后门指令的分发形式和具体功能上。WarHawk 后门在指令循环中依次调用实现每种指令功能的函数,各个函数首先询问 C2 是否进行该操作,然后根据 C2 服务器的回复选择执行或者跳过。下图为 WarHawk 后门的相关代码。
WarHawk 后门支持的功能包括下载并执行后续载荷、命令执行、文件信息收集回传、下载文件。而 Spyder 后门的功能集中在下载并执行后续载荷。
Spyder 后门早期样本(MD5: eb9068161baa5842b40d5565130526b9)带有的数字签名 "Integrated Plotting Solutions Limited" 也被摩诃草的其他样本使用过。
此外,根据另一个 Spyder 后门样本(MD5: 87d94635372b874f18acb3af7c340357)使用的数字签名 "HILLFOOT DEVELOPMENTS (UK) LTD." 关联到一个 Remcos 木马样本。
文件名 | smss.exe |
MD5 | acbae6919c9ce41f45ce0d1a3f3fedd4 |
创建时间 | 2023-04-17 15:47:39 UTC |
数字签名时间 | 2023-04-18 07:24:00 UTC |
文件大小 | 1026840字节(1002.77 KB) |
该样本首先创建一系列计划任务,做法与 Spyder 后门相似。
然后解密出 Remcos 木马的 PE 文件数据,内存加载执行。
而摩诃草组织在此前的攻击活动中也常用 Remcos 木马。综合以上线索,我们认为 Spyder 后门攻击活动背后的团伙很可能是摩诃草。
上述 Remcos 木马样本的 C2 为 192[.]169.7.142:80。
关联到另一个样本与该 IP 通信,为 C# 编写的轻量级后门。
文件名 | - |
MD5 | e3b37459489a863351d855e594df93bf |
创建时间 | 2075-03-07 02:18:38 UTC |
VT上传时间 | 2023-05-26 20:26:23 UTC |
文件大小 | 17408字节(17.00 KB) |
Config 数据如下,与 C2 服务器通信的 URL 格式为 "hxxps://192.169.7.142:4546/search?q=search[<host_name>"。
Main_Load 函数中调用 Fetch 和 Reply 方法实现简单的后门功能。
Fetch 方法通过 GET 请求从 C2 服务器获取指令数据,然后对获取数据进行处理,包括逆序、GZ 解压、消除字符串 "XXPADDINGXXPADDINGXXPADDINGXX"。创建 cmd.exe 进程,代码页设置为 437,执行上述处理后的指令数据。
Reply 方法将 cmd.exe 进程执行命令的结果处理后,通过 POST 请求发送给 C2 服务器。处理过程为添加字符串 "XXPADDINGXXPADDINGXXPADDINGXX"、GZ 压缩、逆序。
该轻量后门功能极其简单,很可能是在攻击过程中结合其他恶意软件使用。更进一步,我们发现该 C# 后门还有其他样本也上传到 VT,实现代码略有不同。
文件名 | not_default_config.exe |
MD5 | 4a25a52244f3360b0fffd0d752833bf1 |
创建时间 | 2098-11-29 07:58:55 UTC |
VT上传时间 | 2023-05-09 10:01:52 UTC |
文件大小 | 56320字节(55.00 KB) |
配置数据中 C2 服务器为内网 IP,意味着该样本可能是测试版本。
南亚地区的多个 APT 组织之间存在千丝万缕的联系,此次攻击多国目标的 Spyder 后门就是一个例子。它与此前披露的响尾蛇组织 WarHawk 后门存在不少相似之处,而根据早期样本的数字证书和关联的 Remcos 木马样本,Spyder 后门更可能是出自摩诃草之手。此外,我们通过攻击者使用的基础设施还发现了其他后门,以上迹象表明攻击者在不断地扩充自己的武器库。
上一篇 : 2023年勒索软件赎金或将创下历史新高
Copyright © 2016 云安全门户 | 南京聚铭网络科技有限公司 旗下产品 | 苏ICP备16021665号-2
Copyright © 2016 云安全门户
南京聚铭网络科技有限公司 旗下产品