概括
在 Zscaler ThreatLabz,我们一直在密切监视 APT37(也称为 ScarCruft 或 Temp.Reaper)的工具、技术和程序 (TTP)——一个总部位于朝鲜的高级持续威胁行为者。这个威胁行为者在 2023 年 2 月和 2023 年 3 月一直非常活跃,目标是韩国各个组织的个人。
在我们的威胁搜寻研究期间,我们遇到了一个 GitHub 存储库,该存储库由威胁参与者组的成员拥有。由于威胁行为者的操作安全 (OpSec) 故障,我们能够访问有关该 APT 组织使用的恶意文件的大量信息,以及他们最早可追溯到 2020 年 10 月的活动时间表。
最近,Sekoia在这里分享了他们对 APT37 工具集的发现。在我们的博客中,我们披露了在深入调查威胁参与者的 GitHub 存储库后发现的更多详细信息。
我们通过攻击者的 GitHub 存储库识别出的大量样本也不存在于 OSINT 来源(例如 VirusTotal)中。这使我们能够更深入地了解这个威胁行为者以前未记录的攻击媒介、动机、目标和使用的主题。
在这篇博客中,我们将提供对感染链的高级技术分析、我们发现的新加载器以及对该 APT 小组使用的主题的详细分析,这些主题是在查看 GitHub 提交历史时发现的。尽管威胁行为者经常从存储库中删除文件,但我们能够检索所有已删除的文件并对它们进行分析。
关键点
APT37 是一个以朝鲜为基地的高级持续威胁组织,主要针对韩国组织中的个人。
它的主要目标是网络间谍活动,它通过威胁参与者感兴趣的选定文件格式的数据泄露来实现这一目标
它使用各种攻击向量分发基于 Chinotto PowerShell 的后门。
我们发现了 APT37 的 GitHub 存储库,并发现了该组织使用的许多以前未记录的攻击向量、工件和主题
APT37 滥用的文件格式包括 Windows 帮助文件 (CHM)、HTA、HWP (Hancom office)、XLL (MS Excel Add-in) 和基于宏的 MS Office 文件。
除了分发恶意软件外,该组织还专注于凭据网络钓鱼攻击
该组织已于 2023 年 1 月下半月恢复活动,此后通过鱼叉式网络钓鱼电子邮件积极针对韩国用户
对于 C2 基础设施,它经常破坏韩国的公告板系统 (BBS) 网站并使用它们
该小组不断改进其工具、技术和程序,同时试验新的文件格式和绕过安全供应商的方法
攻击链
APT37 在此活动中使用了多种攻击媒介。图 1 和图 2 显示了攻击链的 2 个示例。我们在“最近的 TTP”部分中描述的其他攻击媒介。
图 1:使用 CHM 文件格式启动感染链的攻击链
APT37 的 Opsec 失败
威胁演员的 GitHub 存储库概述
我们最初的发现是 APT37 的 GitHub 存储库,该存储库用于暂存多个恶意负载。图 3 显示了威胁参与者的 GitHub 存储库的预览
图 3:威胁参与者的 GitHub 帐户
自述文件的内容被选择为显示为 Android 软件相关存储库。在自述文件的末尾,我们注意到一个 base64 编码的字符串,前面有一个标记
在查看提交历史记录时,我们注意到威胁参与者经常更新此编码字符串。虽然我们无法确定此编码字符串的确切用途,但我们相信它会被端点上的有效负载获取。
图 4 显示了 GitHub 提交,其中威胁参与者正在更新编码令牌。
图 4:GitHub 提交显示威胁参与者更新 README 中的编码令牌
恢复已删除的文件
当我们查看 GitHub 存储库的提交历史记录时,我们注意到威胁行为者经常从中删除恶意文件。图 5 显示了与删除事件相关的提交日志。
图 5:GitHub 提交历史显示威胁行为者经常删除的文件
我们一直追踪这个提交历史直到它的起源,并观察到第一次提交发生在 2020 年 10 月。这让我们感到惊讶,因为威胁者能够维护一个 GitHub 存储库,经常在 2 年多的时间里没有被检测到或被删除。
图 6 显示了提交历史记录日志中的第一次提交。
图 6:首先在 GitHub 帐户中提交。活动于2020年10月开始
我们的下一步是从 GitHub 存储库中检索所有已删除的文件。我们在妥协指标 (IOC) 部分包含了哈希列表和原始文件名。
主题和目标分析
从 GitHub 存储库中检索到的大量信息让我们深入了解威胁行为者用作社会工程诱饵的主题类型,并且我们能够对活动的潜在目标做出有根据的猜测。
根据我们对文件名和诱饵内容的分析,我们总结了以下主题以及示例。这不是一个详尽的列表
诱饵主题示例
我们在下面列出了威胁行为者使用的一些诱饵主题。这些是尚未在公共领域记录的示例。因此,我们希望通过这些信息分享更多关于活动中使用的主题的见解。
地缘政治
图7显示了一个与韩国INSS(国家安全战略研究所)相关的诱饵文件。此诱饵 PDF 与存档文件中的 CHM 文件一起发送,文件名称为:[INSS] 国家安全与战略(2022 年冬季).rar
图 7:与地缘政治主题相关的诱饵
教育和学术机构
图 8 显示了与韩国经济发展主题试题相关的诱饵文件
图8:与教育主题相关的诱饵
金融
图 9 显示了与 Hanwha General Insurance(韩国一家主要保险公司)相关的诱饵文件。此诱饵文件与存档文件中的 CHM 文件一起发送 - BoanMail.rar
图 9:与金融主题相关的诱饵
最近的 TTP
攻击向量 - CHM
众所周知,APT37 使用基于 Chinotto PowerShell 的后门,该后门通过恶意 Windows 帮助文件 (CHM) 部署在端点上。这些 CHM 文件分布在存档文件中。大多数这些存档文件包含两个部分——恶意 CHM 文件和要显示给受害者的诱饵文件。
在大多数情况下,诱饵文件受密码保护。打开诱饵文件的密码由CHM文件显示。
下面的图 10 显示了 CHM 文件中的代码示例,它负责向受害者显示诱饵文件,从攻击者的服务器下载恶意 HTA 文件并执行它。
图 10:用于启动 MSHTA 和下载 HTA 的 CHM 文件中的代码
新的攻击媒介 - MS Excel 加载项
到目前为止,在大多数部署 Chinotto PowerShell 后门的 APT37 活动中,他们利用了分布在存档文件中的 CHM 文件。
有趣的是,在 2023 年 3 月 15 日,也就是我们调查期间,威胁行为者将恶意 Microsoft Excel 加载项上传到 GitHub 存储库。此加载项是一个 XLL 文件。XLL 文件是 DLL,可作为 Microsoft Excel 应用程序的插件。
我们之前从未见过 APT37 使用的这种攻击向量,我们相信这是记录在案的第一个案例。
XLL文件的技术分析
出于技术分析的目的,我们将使用具有 MD5 哈希的 XLL 文件:82d58de096f53e4df84d6f67975a8dda
XLL 文件在被 MS Excel 应用程序加载时被激活。Microsoft 提供了各种回调函数,允许 XLL 文件与 Excel 应用程序通信。最常见的函数之一是 xlAutoOpen(),一旦 DLL 被 MS excel 应用程序加载和激活,它就会被调用。
下面的图 11 显示了我们案例中 XLL 文件中的代码。
图 11:恶意 MS Office Excel 加载项的 xlAutoOpen() 子例程
以下是此 XLL 文件执行的主要步骤。
从其资源部分中名为“EXCEL”的条目中提取 XLS 文件,并将其放在路径中的文件系统中:C:\programdata\20230315_SejeongSupport.xls
显示上面丢弃的 XLS 文件,它是一个诱饵,用作社会工程诱饵
启动 MSHTA 从 URL 下载 HTA 文件:hxxp://yangak[.]com/data/cheditor4/pro/temp/5.html
这个 HTA 文件包含名为 Chinotto 的 PowerShell 后门
最终,我们看到这个 XLL 文件的目标也是部署 Chinotto PowerShell 后门。但是,它现在不使用 CHM 文件,而是使用 XLL 文件。
攻击向量 - LNK
我们从 GitHub 存储库中恢复了一些 LNK 文件,这些文件于 2022 年 8 月上传,显然在同一时间段内用于野外攻击。这些 LNK 文件存在于 RAR 压缩包中。除了 LNK 文件,还有一个 HTML 文件伪装成韩国公司 LG 的登录页面。
我们观察到的两个 LNK 文件都使用了双重扩展名——“html.lnk”和“pdf.lnk”。
这些 LNK 文件用于执行 MSHTA 并从攻击者的服务器下载恶意 HTA 文件。攻击链的其余部分与最终导致基于 Chinotto PowerShell 的后门的其他案例类似。
我们使用 LECmd 工具分析了 LNK 文件的元数据,发现这两个 LNK 文件都是在运行 VMWare 的虚拟机上生成的,Mac 地址为:00:0c:29:41:1b:1c
由于威胁行为者重复使用同一个虚拟机来生成多个有效负载,因此此信息可能有助于将来的威胁搜寻和威胁归因。
图 12 和 13 显示了 LECmd 工具的输出,突出显示了 LNK 执行的目标命令和其他重要元数据
图 12:使用 LECmd 提取的 LNK 目标命令行和元数据
图 13:使用 LECmd 提取的 LNK 机器详细信息
图 14 显示了与 LNK 文件一起打包在同一档案中的诱饵 HTML 文件。
文件名:LG유플러스_이동통신_202208_이_선.html
翻译:U+_Mobile_Communication_202208_Lee_Seon.html
图14:与LG相关的诱饵文件
攻击向量 - 基于宏的 MS office 文件
2022 年 3 月,一个基于宏的 MS office Word 文件被上传到 GitHub 存储库。该宏将启动 MSHTA 以下载基于 PowerShell 的 Chinotto 后门。从中获取 HTA 文件的目标 URL 也与前一种情况相同。这表明威胁行为者使用多种初始文件格式和攻击向量来部署相同的后门。
文件名:NEW(주)엠에스북스 사업자등록증.doc
文件名翻译:NEW MS Books Business Registration Certificate.doc
图 15 显示了相关的 VBA 宏代码。
图 15:用于启动 MSHTA 以下载恶意 HTA 文件的 VBA 宏
攻击向量 - 带有嵌入式 OLE 对象的 HWP 文件
APT37 用来在端点上部署基于 Chinotto PowerShell 的后门的另一种攻击媒介是使用带有嵌入式 OLE 对象的 HWP 文件。这些 OLE 对象包含恶意 PE32 二进制文件,它执行 MSHTA 从 C2 服务器下载基于 PowerShell 的后门。
使用 Hancom Office 查看时,嵌入的 OLE 对象在文档正文中采用可单击元素的形式。
APT37 利用误导性诱饵图像诱使用户单击 OLE 对象元素,这是导致在这些对象内执行恶意 PE 有效负载所需的操作。
图 16 显示了此类文档的示例,它出现在 Hancom Office 中。
图 16:APT37 的恶意 HWP 文档。韩语对话框是假的 - 它实际上是一个 OLE 对象,由对话框的静态图像表示。单击它时,会弹出一个真实的对话框 - 提示用户确认有效负载的执行。
攻击链的其余部分与之前的案例类似。
出于技术分析的目的,我们将考虑具有 MD5 哈希的 HWP 文件:a4706737645582e1b5f71a462dd01140
文件名:3. 개인정보보완서약서_북주협.hwp
翻译文件名:3. 个人信息安全承诺_Bukjuhyeop.hwp
图 17 显示了 HWP 文件中存在的 OLE 对象流。
图 17:HWP 文件中存在的恶意 OLE 对象流
HWP 文件中的对象流是 zlib 压缩的。解压后,我们从中提取了 PE32 二进制文件。
提取的二进制文件的 MD5 哈希:
d8c9a357da3297e7ccb2ed3a5761e59f
文件名:HancomReader.scr
PDB 路径:
E:\Project\windows\TOOLS\RunCmd\Release\RunCmd.pdb
图 18 显示了 HancomReader.scr 中的相关代码
图18:HancomReader.scr中用于下载执行PowerShell后门的相关代码
Zscaler 沙箱检测
图 19 显示了 Zscaler 沙箱中的 HTA 文件检测。
图 19:Zscaler Cloud Sandbox 报告
图 20 显示了在 Zscaler 沙箱中检测基于宏的 MS Office Word 文件。
图 20 显示了 Zscaler 沙箱中基于宏的文档文件检测。
Zscaler的多层云安全平台除了沙盒检测外,还检测了各个层级的指标:
HTA.Downloader.ChinottoVBA.Downloader.ChinottoWin32.Backdoor.Chinotto结论
正如我们在此博客中讨论的那样,APT37 是一个主要针对韩国实体的威胁行为者。从它在初始阶段使用的多种文件类型可以看出,它不断更新其策略、技术和程序。这个威胁行为者使用的主题范围从地缘政治、时事、教育到金融和保险。它还对与朝鲜半岛有关的时事和活动特别感兴趣。我们将继续监控该威胁行为者的活动,并确保我们的客户免受 APT37 攻击。
内容来自:zscaler威胁情报实验室-点击阅读原文跳转至原文