SpyGlace 攻击滥用 GitHub、GitLab 和其他可信服务

APT-C-60 发起了新的 SpyGlace 攻击,该攻击使用受信任的开发人员平台和云服务来隐藏来自网络安全工具的恶意软件下载。

该活动通过鱼叉式网络钓鱼电子邮件针对日本的组织。受害者会直接收到恶意存档,或通过 Proton Drive 链接获取包含 Windows 快捷方式的 RAR 文件。

打开 LNK 文件会启动使用合法 Windows 和开发人员工具的多级感染链。然后,攻击者通过 GitHub、GitLab、jsDelivr 和 Codeberg 等服务下载 SpyGlace 组件。

APT-C-60 带着更新的 SpyGlace 攻击回归

JPCERT/CC在调查针对日本组织的持续 APT-C-60 活动时发现了该活动。

该威胁组织至少自 2024 年起就在攻击中使用 SpyGlace。其最新操作改变了部分初始交付流程,并扩展了用于托管恶意组件的在线基础设施。

研究人员观察了 SpyGlace 版本 3.1.15、3.1.17 和 3.1.18。他们发现最近的变体和之前分析的版本之间没有重大的功能差异。

活动详情寻找
威胁组织APT-C-60
恶意软件间谍格蕾丝
主要目标日本的机构
初始访问鱼叉式网络钓鱼电子邮件和 Proton Drive 链接
恶意附件包含 LNK 文件的 RAR 存档
滥用服务GitHub、GitLab、jsDelivr、Codeberg 和 StatCounter

恶意 LNK 文件启动 mshta.exe

当收件人打开存档内的 Windows 快捷方式时,攻击就会开始。 LNK 文件复制自身并启动 mshta.exe,这是一个能够执行 HTML 应用程序内容和脚本的合法 Windows 组件。

APT-C-60 将 JavaScript 隐藏在快捷方式中并使用 mshta.exe 来运行它。这种技术让攻击者可以滥用受信任的 Windows 二进制文件,而不是在原始存档中放置明显的脚本解释器。

MITRE ATT&CK 将此行为跟踪为通过 Mshta 签名的二进制代理执行。安全产品可能允许 mshta.exe,因为 Windows 包含它,使其父进程和命令行活动成为重要的检测信号。

  1. 受害者打开通过电子邮件或 Proton Drive 收到的 RAR 存档。
  2. 恶意 LNK 文件复制自身并启动 mshta.exe。
  3. 隐藏的JavaScript下载一个名为contributing1.txt的文件。
  4. 该脚本解码并提取下载的内容。
  5. git.exe 的合法副本会启动另一个恶意脚本。
  6. 几个文件片段重建了一个额外的下载器。
  7. 稍后的下载器和加载器检索并执行 SpyGlace。

攻击者在感染期间使用git.exe

提取的文件包括 git.exe 的合法副本。恶意脚本使用它来启动感染的另一个阶段,而不是仅依赖传统的 Windows 命令工具。

下一个脚本结合多个数据库文件来重建下载器。该下载程序在最终 SpyGlace 有效负载运行之前检索更多组件。

使用合法程序可以减少链中明显恶意的可执行文件的数量。当防御者在没有更广泛背景的情况下检查单个事件时,它还可以使流程活动类似于正常的开发人员工作。

APT-C-60 在 GitHub、GitLab、Codeberg 和 jsDelivr 内容交付网络上托管攻击组件。这些服务每天处理大量的合法开发流量。

许多组织允许访问代码托管平台,因为开发人员、自动化构建工具和业务应用程序依赖于它们。阻止整个域可能会扰乱正常工作。

攻击者通过将编码文件和恶意软件组件放置在存储库中来利用这种信任。除非防御者识别出其背后的进程、用户操作和下载内容,否则与这些服务的连接可能看似无害。

  • GitHub 托管攻击者控制的存储库和文件。
  • GitLab 提供了额外的存储库基础设施。
  • Codeberg 托管了更多恶意项目内容。
  • jsDelivr 从攻击者控制的存储库传递文件。
  • Proton Drive 提供了一些最初的网络钓鱼档案。
  • StatCounter 基础设施出现在观察到的活动中。

受信任的服务使简单的域阻止效果降低

对 GitHub 或 jsDelivr 的请求不会自动指示恶意活动。然而,启动 mshta.exe 并从这些服务之一下载编码内容的快捷方式会产生更强烈的警告信号。

安全团队应该评估整个序列,而不是仅仅因为流量到达熟悉的域就批准流量。进程祖先、命令行、下载的文件类型和源电子邮件提供了必要的上下文。

SpyGlace 活动展示了为什么防御者应该将网络控制与端点监控结合起来。即使服务提供商本身不受影响,受信任的域仍然可以托管攻击者控制的内容。

SpyGlace 使用长阶段交付链

在受害者打开快捷方式后,该活动不会立即下载最终的恶意软件。它通过 JavaScript、编码文本、提取的实用程序、数据库片段、下载器和加载器。

这种结构为 APT-C-60 提供了多次更改各个组件的机会,而无需替换原始的网络钓鱼附件。当研究人员发现存储库时,该小组还可以删除存储库或重定向后期阶段。

MITRE 将恶意工具和有效负载的检索分类为入口工具传输。防御者应该监视由脚本引擎、系统实用程序和开发人员工具发起的意外下载。

阶段观察到的活动
送货网络钓鱼电子邮件、Proton Drive 链接或附加存档
初始执​​行LNK 文件启动 mshta.exe
脚本执行隐藏的 JavaScript 下载并解码内容
工具滥用合法的 git.exe 启动另一个脚本
下载器组装多个数据库片段重构一个下载器
有效负载交付开发者平台托管后续组件
最终执行加载程序运行 SpyGlace

为什么存档中的 LNK 文件仍然很危险

Windows 快捷方式可以包含命令行参数并启动系统实用程序。攻击者经常将它们放置在存档中,因为当用户查看文件时 Windows 可能不会显示完整的命令。

LNK 文件还可以使用文档样式的图标或误导性的文件名。这使得它看起来像普通的报告、通知、电子表格或商业文档。

该活动遵循鱼叉式网络钓鱼附件攻击者定制消息并包含旨在触发恶意执行的文件的模式。

组织如何检测 SpyGlace 活动

电子邮件系统应标记或隔离包含 LNK 文件的外部档案。不需要通过电子邮件使用 Windows 快捷方式的组织应考虑完全阻止它们。

当 LNK 文件启动 mshta.exe 时,端点工具应发出警报,尤其是从下载、临时或提取的存档目录启动时。他们还应该调查在批准的开发人员工作流程之外运行的 git.exe。

网络团队应确定哪个进程启动与代码托管平台的连接。访问项目页面的浏览器与 mshta.exe 或下载编码文件的未知脚本有很大不同。

  • 监视从 RAR 和 ZIP 存档中提取的 LNK 文件。
  • 当快捷方式文件启动 mshta.exe 时发出警报。
  • 记录 mshta.exe 命令行和父进程。
  • 调查从临时或异常文件夹运行的 git.exe。
  • 检查从存储库下载的 TXT、DB、DAT、TMP 和编码文件。
  • 查看从未知发件人收到的 Proton Drive 链接。
  • 监视新创建的脚本和重建的可执行文件。
  • 将存储库流量与电子邮件和端点事件相关联。

行为监控可以捕捉不断变化的基础设施

IP 地址、存储库名称、电子邮件发件人和文件哈希等指标可以帮助团队找到已知的活动活动。然而,APT-C-60 可以快速取代这些指示器。

更持久的检测机会来自于感染行为。打开意外的快捷方式、启动 mshta.exe、运行隐藏的 JavaScript、启动 git.exe 并检索编码文件会创建可识别的序列。

JPCERT/CC 的威胁研究还表明,该组织继续完善以前成功的方法,而不是依赖新披露的软件漏洞。

检测相关活动的组织应隔离受影响的端点并保留其电子邮件、进程、文件和网络记录。单独删除原始快捷方式不会删除链中稍后下载的组件。

调查人员应搜索意外的脚本文件、临时有效负载、复制的 Git 实用程序、编码的数据库片段以及与该活动的命令和控制服务器的连接。

团队还应该检查收到相同电子邮件或访问相同云存储链接的其他设备。一次成功的鱼叉式网络钓鱼活动可能会针对一个组织内的多名员工。

  1. 断开受影响设备的网络连接。
  2. 保留网络钓鱼电子邮件并存档以供调查。
  3. 收集 LNK 文件、脚本、下载器、加载器和最终负载。
  4. 查看涉及 mshta.exe 和 git.exe 的进程活动。
  5. 搜索网络日志以查找与观察到的存储库和服务器的连接。
  6. 检查其他邮箱是否有匹配的发件人、主题、链接和附件。
  7. 确认受损后,重置受影响系统上使用的凭据。
  8. 当无法验证完全删除时,从可信映像重建端点。

可信平台需要上下文感知的安全性

SpyGlace 活动并不依赖于受攻击的 GitHub、GitLab、jsDelivr 或 Codeberg。它依赖于攻击者控制的帐户和通过合法服务托管的存储库。

这种区别很重要,因为阻止每个受信任的开发平台可能无法提供实际的防御。组织需要考虑用户、设备、进程和所检索内容类型的策略。

监控可疑的姆什塔处决可以暴露链的开头,同时检测意外的有效负载传输可以揭示后期阶段。

安全意识也仍然很重要。员工应将意外的云存储链接和快捷方式文件视为高风险,尤其是当它们到达压缩档案时。

阻止已知的活动指标可以支持立即响应,但防御者不应仅依赖静态列表。 APT-C-60 可以快速创建新的存储库、发送者帐户、有效负载文件和命令服务器。

围绕网络钓鱼附件技术随着活动的变化,可疑的 Windows 实用程序使用以及不寻常的开发者平台下载提供了更广泛的保护。

FAQ

什么是 SpyGlace 恶意软件?

SpyGlace 是 APT-C-60 威胁组织在针对性攻击中使用的恶意软件。最新版本包括 SpyGlace 3.1.15、3.1.17 和 3.1.18。

SpyGlace 攻击是如何开始的?

攻击从包含存档或 Proton Drive 链接的鱼叉式网络钓鱼电子邮件开始。该存档包含启动感染链的恶意 Windows LNK 文件。

APT-C-60 滥用哪些可信服务?

该组织使用 GitHub、GitLab、jsDelivr、Codeberg、Proton Drive 和其他合法在线服务来托管或传递攻击组件。

为什么 mshta.exe 在 SpyGlace 活动中很重要?

恶意LNK文件启动mshta.exe来执行隐藏的JavaScript。由于 Windows 包含 mshta.exe,因此它的使用可以与受信任的系统活动混合在一起,除非防御者检查其父进程和命令。

组织如何检测 SpyGlace 攻击?

团队应监控包含快捷方式、启动 mshta.exe 的 LNK 文件、异常 git.exe 活动、隐藏脚本以及来自开发人员平台的编码下载的存档。