DecoyMini 技术交流社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 漏洞模板
查看: 3475|回复: 0

[样本分析] 源头在哪?QAKBOT 使用有效的代码签名

[复制链接]

188

主题

35

回帖

30

荣誉

Rank: 9Rank: 9Rank: 9

UID
2
积分
354
精华
1
沃币
2 枚
注册时间
2021-6-24

论坛管理

发表于 2022-11-8 15:29:47 | 显示全部楼层 |阅读模式

代码签名证书能够帮助我们确保文件的有效性和合法性,但是,攻击者可以利用它来对付我们。在本篇文章中,了解 QAKBOT 如何使用这种策略并学习如何防御它。

QAKBOT 和 EMOTET 在过去几年中一直很活跃,自 2007 年首次观察到它以来,有大量关于它们的报道。我们过去曾报道过其中一些,但是 ,关于这种威胁,我想到了两件事。即 Black Basta 勒索软件运营商如何使用 QAKBOT 作为进入手段以及他们如何使用名为 Follina 的 CVE-2022-30190 漏洞。

我们最近观察到他们使用由公共可信证书颁发机构颁发的有效证书进行有效代码签名的模块,这表明攻击者拥有用于代码签名的特定有效证书的私钥。

有关更多信息,以下是我们观察到的感染时间表之一:



以下将讨论我们的发现以及如何应对这种攻击者的方法,该方法在 2022 年 6 月至 7 月期间得到了积极观察。

关键发现


检查与 QAKBOT 相关的模块会显示已使用多个有效代码签名证书签名的多个示例。查看被滥用的证书还可以发现,它们不是发给不存在的组织进行滥用的,而是通过适当的程序发给真实存在的组织的有效证书。

这不是我们第一次观察到有效代码签名证书的滥用,但仍然不常见,值得注意的是,单个攻击者会继续间歇性地获取多个有效代码签名证书及其私钥。

证书和私钥的来源目前未知,但至少有两种可能:

  • 使用传统方法,包括从受感染的计算机中转储和窃取私钥
    • QAKBOT 对收集与我们过去研究中提到的证书相关的数据很感兴趣,并且它有能力这样做,如果受害者在证书颁发步骤中不使用硬件令牌生成密钥,则允许攻击者窃取它们。此外,他们有时会在操作中使用 Mimikatz,它具有用于转储证书和私钥的内置功能。
    • 但是,尚不清楚他们是否在其操作中积极进行私钥转储,因为攻击者可能通过滥用证书颁发过程而不是通过私钥转储直接收到证书。
  • 滥用证书颁发过程,包括可能的身份盗用
    • 被滥用的证书发给了微型公司,其中包括一些与农民等技术无关的公司。
    • 我们还在滥用证明包含的信息中发现了一些不寻常的细节:
      • 相同的免费电子邮件服务用于不同的证书。
      • 在颁发证书之前,电子邮件地址的域名被分配了一个新的 IP 地址。

代码签名用于建立信任,但安全团队需要意识到应注意滥用信任。由于有效的代码签名不足以确定模块是否安全,因此可能需要更深入地检查证书,以防恶意软件可能具有有效代码签名。

回顾代码签名恶意软件的历史及其激活方式


我们最近发布了一份关于一个 案例的报告,其中一个合法的反作弊驱动程序通过有效的代码签名被滥用来绕过特权,过去还发生过其他涉及滥用代码签名证书和私钥的案件。

最早的一个备受瞩目的案例在 2010 年以 Stuxnet 的形式出现,它使用了从几个真实存在的公司窃取的有效代码签名证书和私钥。

Flame 恶意软件是另一个值得注意的案例,在该案例中,使用哈希冲突来造假。在这种情况下,MD5 哈希冲突创建了一个最受信任的证书,即 Microsoft 代码签名证书,然后用于对 APT 恶意软件进行签名。这项技术非常复杂,但可以识别,因为证书的细节与原件不同。

除了上述内容,我们在 2018 年的研究 还涵盖了获得有效可信证书的其他方法。研究发现,威胁行为体可以模仿合法组织获得由可信证书颁发机构 (CA) 颁发的证书,这些证书和私钥在黑市上出售。

最后,马里兰大学的 Kim Doowon 在计算机和通信安全会议 (CSS’17) 上发表了一项题为 "证书恶意软件:衡量 Windows 代码签名 PKI 中的信任漏洞" 的研究,发现了 72 个私钥被盗的证书,22 个由合法公司的身份盗用颁发的证书,以及当时发给空壳公司的五份证书。该报告包含了 188421 个恶意软件案例,并从其数据集中分析了 14221 个代码签名的恶意软件案例:至少在 StuxNet–2010 年至 2017 年期间 (不包括 PUA),提交给 VirusTotal 的 10 多个阳性样本。

被滥用的证书数量在七年内达到了 72 份,似乎比预期的要少。然而,这表明 QAKbot 攻击者更加积极地检索证书和私钥,因为我们观察到 QAKbot 在此活动最活跃的两个月 (2022 年 6 月至 2022 年 7 月) 内至少使用了七个证书。

在 MITRE 网站上,我们可以查看过去观察到代码签名滥用的操作。我们还可以看到一些使用特定少数证书的 APT 案例。几年来,QAKbot 能够断断续续地访问多个合法证书。

QAKbot 使用的证书种类


从本文开头时间线中观察到的样本来看,它似乎是一家存在于捷克共和国的微型公司。证书中包含的电子邮件地址使用了免费的电子邮件服务。还有另一个滥用的证书使用了这个免费的电子邮件服务。



一个特殊的细节是在颁发证书的同时为域名分配新 IP 地址的方式。同时,该域名不承载任何与公司相关的内容。这些可能是使我们怀疑证书是通过不寻常的程序颁发的指标。



这不是一个单一的发行人问题,上市公司以外的发行人在英国注册为微型公司的公司证书也被滥用。



被滥用证书的来源


这些证书的来源目前未知,但我们可以怀疑两种可能性:

QAKbot 具有枚举和转储证书和私钥的功能,因此如果受害者在证书颁发步骤中不使用硬件令牌生成密钥,就有能力窃取它们。我们的分析表明,他们正在使用 PFXExportCertStore() 之类的 API,用于转储私钥。



Cobalt Strike 有时用于他们的操作,包括一个内置的 Mimikatz,它提供证书和私钥转储功能。然而,目前尚不清楚他们是否真的在他们的操作中积极进行私钥转储。

然后将被滥用的证书颁发给微型公司,其中包括一些与技术无关的证书。滥用证书颁发过程的可能性可能包括身份盗用。从观察到的滥用证书看来,攻击者似乎是在冒充合法组织,并直接由公共受信任的 CA 颁发证书。

还观察到向农民注册的公司颁发的另一份证书,尽管为他们的业务颁发证书并非不可想象,但攻击者也有可能窃取他们的身份,使用它和/或滥用颁发过程直接由公众信任颁发的有效证书 CA。



保护用户的私钥


在这种情况下,假设攻击者是通过滥用证书颁发过程直接颁发证书的假设比窃取私钥的嫌疑更大,但用户侧的私钥保护仍然是一个挑战。

在代码签名证书的使用上,用户侧的私钥保护随着时间的推移而增强,但要归类为万无一失,还有很长的路要走。

如上所述,我们可以在 QAKbot 中看到一个使用 PFXExportCertStore() API 检索受害者私钥的函数,该函数只有在使用可导出标志存储在 Windows 证书存储中时才能导出私钥。换句话说,如果使用满足特定条件 (IC 卡、HSM、TPM 等) 的硬件令牌执行密钥生成,则私钥不会存储在 Windows 证书存储中,因此没有提供导出和重用的方法私钥,因为它存储在令牌中。

有一个文档 "公共信任的代码签名证书 (v.3.1) 的颁发和管理的基线要求" 定义了与代码签名证书相关的内容。本文档之后是颁发代码签名证书并要求 CA 鼓励用户使用符合标准的令牌来保护其私钥的 CA。据此,在 2022 年 11 月 15 日之前,CA 必须向用户建议他们使用符合标准的硬件令牌保护他们的私钥,并且必须从用户那里获得他们将通过使用经过认证的硬令牌或至少以某种方式将密钥与计算机物理分离,直到可以开始签名会话。

到目前为止,我们已经确认许多销售代码签名证书的公司以将密钥存储在智能卡或其他硬件设备上的方式颁发它们,在这种情况下,私钥无法远程导出。

尽管每个人都知道硬件密钥生成提供了更强的保护,但无需使用硬件令牌即可轻松备份 PKCS#12 文件类型的软件密钥生成在用户端仍然很流行。直到今天,一些证书颁发者仍继续提供此方法作为选项。作为最后的保护,如果用户真的将其导入到代币中并保持离线,则留给用户自己。

持续观察到攻击者主动滥用的情况需要重新考虑密钥生成和证书颁发方法。基线要求将从 2022 年 11 月 15 日开始对私钥保护提出更高的要求。根据基线要求,CA 应确保在该日期之后使用合适的硬件生成用户的私钥。虽然与将最后留给用户的场景相比,这是一个进步,但软件中的私钥存储不再常见的那一天可能还远一点。

WebKPI 是怎样工作的?


在前面的章节中,我们提到了证书颁发过程被滥用的可能性,包括身份盗用。攻击者可能冒充真实组织然后直接获得证书的问题也可能发生在 WebPKI 中,它提供用于 HTTPS 通信的 TLS 证书。

WebPKI 从 2015 年左右开始引入证书透明度 (CT),这意味着所有用于 HTTPS 的公共可信服务器证书的颁发都会公开记录在 CT 日志中。这允许来自 Internet 的任何人验证 CT 日志,并有助于检测域名所有者不知道的证书的颁发。

因此,虽然 WebPKI 可以使用 CT 日志为组织检查证书的意外问题,但是,由于尚未为代码签名证书引入 CT 机制,因此无法以相同的方式检查代码签名证书。

关于证书吊销


为了对付滥用已经颁发的证书,一种选择是吊销证书。

根据 Doowon Kim 和 Bum Jun Kwon 于 2018 年进行的题为 "The Broken Shield: Measuring Revocation Effectiveness in the Windows Code-Signing PKI" 的研究,即使代码签名证书被撤销,由于具体情况,签名可能仍然有效。撤销和验证方法,这是一个机械挑战。

在这种情况下,所有被观察到被滥用的证书均已被吊销。

如何应对滥用的代码签名证书


对于用户:

首先要保护你的私钥,执行代码签名的人使用现代最佳实践存储他们用于代码签名证书的私钥。私钥与适当的硬令牌一起存储,并在签名过程开始之前保持离线状态。现代实践还提供了存储私钥和登录云的服务。

第二,保护你的身份。虽然目前尚不清楚被滥用证书的来源,但受害者可能以他们完全不知道的公司名义被冒充,发给他们的证书可能已被滥用。因此,如果我们能够仔细监控我们周围发生的与身份盗窃有关的奇怪事情,那将是当务之急。事情需要一些时间才能解决,但在证书颁发者弄清楚为什么会发生这种情况时保护自己将是避免滥用证书颁发的关键。

攻击者可能获得了与真实公司的公司名称相似的域名,并利用他们拥有该域名的事实来获得颁发的证书。不幸的是,目前还没有有效的方法来检查这种情况,因为与 WebPKI 不同,CT 尚未用于代码签名证书。

检测和监控滥用信任

安全团队需要意识到已经观察到滥用信任,由于有效的代码签名不足以确定模块是良性的,因此可能需要仔细检查,以确保具有有效代码签名的不是冒充合法模块的恶意软件。

本案确认被滥用的证书具有以下属性:

  • 公司名称与技术无关
  • 发给世界各地的微型公司
  • 为其电子邮件地址使用了免费的电子邮件服务
  • 使用的电子邮件地址包含一个看起来像公司名称的域名,但该域名不包含任何内容
  • 所用域名的顶级域在企业中并不常见,如 "co"
  • 在颁发证书之前分配了一个新的 IP 地址

幸运的是,如果仔细检查,这些证书可能会被认为是不寻常的。

结论和趋势科技解决方案


QAKbot 正试图演变成一种更具侵入性的恶意软件,它使用有效的代码签名可能难以确定哪些文件是真实的,并且它的持久性可能会对机器和它所连接的网络造成进一步的危险,而证书颁发者会找到一种方法来抵消木马正在做的事情。

由于 QAKbot 会 Excel 文件文件传播,因此请确保在 Microsoft 应用程序中禁用宏。此外,检查发件人和电子邮件地址的格式,以防止电子邮件欺骗。如需进一步保护,请安装包含电子邮件检查工具的趋势科技 Deep Discovery。对于端点,趋势科技 Vision One 可以检测到可能的持久性,因为 QAKbot 通过 .DLL 文件插入。

IoC


Trojan.Win32.QAKBOT.DRSOadadda4d61188c53c25323a3561db52d14a5dbb2585a53e18b33882f1013b9ee
TrojanSpy.Win32.QAKBOT.YXCGSZ78bc13074087f93fcc8f11ae013995f9a366b6943330c3d02f0b50c4ae96c8a7
TrojanSpy.Win32.QAKBOT.SMYXCFJZ42bc9b623f70e46d6aab4910d8c75221aecf89a00756a61b21f952eea13a446c
TrojanSpy.Win32.QAKBOT.YXCCBZ37e973699f119ce5a2047281aa6f52429bc15164abdfe110f3340ee02d4c21b5
TrojanSpy.Win32.QAKBOT.SMYXCFHZ362e56855844fb2be3dfae4b566ab676f6ec681fad1c1a2e8eb6d245d56b83f5
TrojanSpy.Win32.QAKBOT.YXCCQZ20839bc89ca241bcd77ea69a2e36e40d7c1bd0dd91952502de8cd1db6fe771e1
TrojanSpy.Win32.QAKBOT.SMYXCFJZ1beb6f15f403fe31392012b506ce1bb38424482d3e8123f0f80ae439484fffe7

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|小黑屋|DecoyMini 技术交流社区 (吉沃科技) ( 京ICP备2021005070号 )

GMT+8, 2024-11-23 18:05 , Processed in 0.064783 second(s), 27 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表