发布日期:2024 年 5 月 13 日
撰稿人:Matthew Kosinski
Kerberoasting 变得越来越常见。根据 X-Force Threat Intelligence Index,IBM® X-Force 安全分析师发现,2022 年至 2023 年期间,Kerberoasting 事件增加了 100%。这种增长是黑客滥用有效帐户破坏网络的大趋势的一部分。网络和端点安全的增强使得直接攻击变得更加难以得手。
一些其他因素也推动了 Kerberoasting 的流行。许多目录服务和云计算系统都使用 Kerberos,这意味着黑客可以利用该协议访问关键网络基础架构。
具体而言,Kerberos 是 Microsoft Windows Active Directory 的标准,许多 Keberoasting 攻击都以 Active Directory 域为目标。此外,手动创建的服务帐户往往具有弱密码和高权限,因此成为有吸引力的目标。
Kerberoasting 攻击很难被发现,因为它们利用了 Kerberos 的预期设计。Kerberoasting 攻击中最可疑的部分,即解密被窃取的票据,此操作是离线进行的。网络安全专家无法完全消除 Kerberoasting 的可能性,但他们可以部署主动防御措施来减轻威胁。
获取重要见解,帮助您的安全和 IT 团队更好地管理风险并限制潜在损失。
Kerberoasting 通常是一种权限提升手段,而不是最初的入侵策略。在黑客获得域用户帐户的控制权而进入网络后,他们使用 Keberoasting 来扩大他们的访问范围。
大多数 Kerberoasting 攻击都遵循同一种基本方法:
要了解 Keberoasting 为何有效,必须先了解 Kerberos 的基础知识。
Kerberos 是一种身份验证协议,可让用户和服务(例如,应用程序、数据库和服务器)在 Active Directory 和其他域中安全地进行身份验证和通信。
Kerberos 身份验证过程使用票据系统。该系统的核心是密钥分发中心 (KDC),在网络的域控制器上运行。
KDC 本质上是域的守门人。它对网络上的用户和服务进行身份验证,并向它们发放票据。票据是证明用户身份并允许他们访问网络上其他资源的凭据。用户和服务交换这些票据,以相互验证。
当用户登录到域时,首先使用 KDC 进行身份验证并收到票据授予票据 (TGT)。利用此 TGT,用户将能够请求访问域服务。
当用户要访问一个服务时,他们会向 KDC 的票据授予服务 (TGS) 发送请求。TGT 随附此请求以担保用户的身份。
作为响应,KDC 会发出一个服务票据,也称为“TGS 票据”,该票据使用服务帐户密码加密。这样做是为了确保只有目标服务才能验证用户的访问请求。用户向目标服务提供此服务票据,目标服务将对用户进行身份验证并开始安全会话。
Kerberos 的设计中有一些细节,使其容易受到 Kerberoasting 攻击。
首先,KDC 不会检查用户是否有权访问服务。任何用户都可以请求任何服务的票据。执行权限和阻止未授权用户的工作由各个服务负责。因此,黑客不需要夺取域管理员或其他特权用户的帐户。使用任何被盗帐户都可以达到一样的目的。
其次,Kerberos 域中的每项服务都必须与负责在域上运行该服务的服务帐户关联。利用服务帐户,Kerberos 将能够对服务进行身份验证、发放服务票据并执行安全控制。这些帐户也是黑客的目标,因为它们往往拥有很高的权限。
第三,Kerberos 票据被加密,使用相关帐户的密码哈希作为密钥。重要的是,对于 Kerberoasting,服务票据使用相关服务帐户的密码哈希。
帐户密码是方便的对称加密密钥,因为只有 KDC 和相关服务才能知道该密码。但是,由于票据是使用密码哈希加密的,因此,黑客可以通过破解票据的加密方式来对服务帐户密码进行逆向工程。
此外,手动配置的服务帐户通常会启用“密码永不过期”标志。在存在已久的网络中,这可能意味着服务帐户使用非常旧的密码,这些密码遵循过时的安全准则,因此很容易被破解。
当黑客进入网络时,他们会搜索服务帐户。他们通常通过查找具有服务主体名称 (SPN) 的帐户来实现这一目的。SPN 是将服务与其在 Kerberos 域中的服务帐户相关联的唯一标识符。由于只有服务帐户具有此属性,因此,枚举具有 SPN 的帐户是黑客查找目标的便捷方法。默认情况下,每个域帐户都可以枚举 SPN。
黑客可以使用 PowerShell 命令和轻型目录访问协议 (LDAP) 查询来显示具有 SPN 的帐户。他们还可以使用专门的黑客攻击和渗透测试工具。例如,Impacket 工具包中包含一个名为 "GetUserSPNs.py" 的脚本,该脚本可生成域中的服务帐户列表。
黑客使用被劫持的域帐户为其目标服务请求服务票据。
黑客不会使用这些票据来访问这些服务。虽然可以这样做,但他们只拥有可能被盗的低级别用户帐户的有限权限。取而代之的是,黑客将这些票据从网络中转移到他们控制的计算机上。
黑客对窃取的票据进行解密来检索服务帐户的密码。
由于票据使用服务帐户的密码作为加密密钥,因此,黑客通常会采用暴力攻击来完成这项工作。他们成系统地使用不同的密码来生成用于被盗票据的加密密钥(“哈希”)。如果一个加密密钥有效,则生成该密钥的密码就是服务帐户的密码。
黑客可以通过使用常用密码的词汇表来加快解密速度。他们还使用各种工具将破解过程自动化。一些最常见的 Kerberoasting 工具包括:
Impacket:专为渗透测试人员设计的 Python 工具包。其中包括一些黑客可用来造成实际伤害的脚本。
Rubeus:旨在利用 Kerberos 进行渗透测试的工具集。像许多道德黑客工具一样,它可以被不道德的黑客用于恶意目的。
John the Ripper 和 Hashcat:可以进行暴力攻击的密码破解工具。
Mimikatz:帮助黑客提取和破解 Kerberos 票据。
票据破解是 Kerberoasting 过程中最大的风险,但它通常在目标网络之外由黑客控制的设备上进行。各组织的安全工具无法检测到它。
有了服务帐户的密码,黑客就可以登录该帐户并使用其权限访问敏感资源,进行内网漫游等。
例如,如果黑客破解 SQL 服务器服务帐户的密码,他们就可以控制该服务器上托管的数据库。
虽然 Kerberoasting 通常需要一个被盗域用户帐户,但安全研究员 Charlie Clark 发现了一种攻击技术,在适当的条件下,黑客无需劫持帐户即可窃取服务票据。1
回想一下,在用户收到服务票据之前,他们必须向 KDC 进行身份验证并获得允许他们请求服务访问权限的 TGT。使用 Kerberos 漏洞利用工具 Rubeus,Clark 得以修改此初始身份验证请求,从而要求提供服务票据而不是 TGT。这种方法奏效了,KDC 提供服务票据作为回应。
这种方法的应用确实有限。为了使该方法发挥作用,黑客必须假装从 Kerberos 中不需要预先身份验证的帐户发送身份验证请求。需要预先身份验证的帐户(大多数都需要预先身份验证)甚至需要用户凭据才能发送 Clark 修改的初始身份验证请求。尽管如此,这种方法还是为攻击者开辟了一条潜在途径。
在过去几年的一些最重大的网络攻击中,黑客都使用了 Kerberoasting 技术。
在 2020 年的 SolarWinds 攻击中,俄罗斯黑客将恶意软件伪装成 SolarWinds Orion 基础架构管理平台的合法更新来进行传播。黑客入侵了多家公司和政府机构,包括美国国务院和司法部。Mitre 声称,黑客利用 Kerberoasting 提升了他们在被入侵系统中的权限。2
同样,与 Akira 勒索软件相关的黑客经常使用 Kerberoasting 来扩大访问范围并保持对他们入侵的网络的访问权限。截至 2024 年 4 月,Akira 已攻击全球 250 家组织,总共勒索 4200 万美元的赎金。3
虽然黄金票据攻击也针对 Kerberos 身份验证过程,但与 Keberoasting 不同。
在 Kerberoasting 中,黑客窃取并破解票据以获取密码并接管服务帐户。
在黄金票据攻击中,黑客首先在域中获得管理员级别的权限。这样,他们将能够访问 krbtgt 帐户的密码,该帐户是 KDC 用于加密 TGT 的帐户。黑客使用这些权限来创建恶意 Kerberos 票据,让他们可以假装任何用户并获得对网络资源几乎不受限制的访问权限。
Kerberoasting 攻击很难被发现,因为攻击者花费大量时间伪装成合法帐户。他们的票据请求与真实的票据请求混合在一起,而实际的密码破解在网络之外进行。
也就是说,各组织可以使用一些工具和实践来降低攻击成功的机会,并更好地拦截正在进行的 Kerberoasting。
由于 Kerberoasting 攻击会夺取域帐户的控制权,因此,使用增强的 IAM 控制保护这些帐户有助于阻止一些违规行为。
强密码策略和实践,包括集中式密码管理解决方案,可以增加黑客破解密码的难度。例如,MITRE ATT&CK 框架建议服务帐户密码长度至少为 25 个字符,足够复杂并定期更改。4
在 Active Directory 中,各组织可以使用组托管服务帐户。这些服务帐户会自动生成、管理和定期更改密码,因此,管理员无需手动管理密码。
自适应或多因素身份验证 (MFA) 等强身份验证也可以帮助保护用户帐户免遭盗窃。也就是说,将 MFA 用于服务帐户通常具有挑战性且效率低下。
特权访问管理工具可以帮助为特权帐户的凭据提供额外的安全性,例如 Kerberos 服务帐户和其他高价值目标。
通过限制服务帐户权限,只提供所需的权限,各组织可以最大限度地减少黑客入侵这些帐户可能造成的损害。
此外,可将服务帐户限制为非交互式登录,并且仅限于特定的服务和系统。
恶意票据请求通常会与合法票据请求混合在一起,但黑客可能会留下能说明问题的迹象。例如,一个帐户同时请求许多服务的多个票据,可能正在执行 Kerberoasting 攻击。
Windows 事件查看器或安全信息和事件管理(SIEM) 系统等事件日志可以帮助安全团队检测可疑活动。用户行为分析 (UBA) 解决方案等监控用户的工具可以帮助检测已劫持合法帐户的黑客。
通过将监控工具与信息系统相匹配,安全团队可以捕捉到更多的威胁活动。例如,可以配置工具,以便服务帐户在其预定义范围之外的任何登录尝试都会触发警报并需要调查。
许多 Kerberos 实例仍然支持 RC4 加密算法。不过,这种较旧的加密标准相对容易被黑客破解。
启用更强大的加密类型(如 AES)可以使黑客更难破解票据。
一些组织会创建蜜标,伪装注定要被入侵的域帐户。当黑客攻击蜜标时,系统会自动发出警报,以便安全团队采取行动。
蜜标旨在将注意力从真实帐户上转移开,通常是通过看起来具有较弱的凭据和高权限。
根据每天监控 130 多个国家/地区的超过 1500 亿个安全事件所获得的洞察和观察结果,从全球安全团队面临的挑战和获得的成功中学习。
身份编排是一种软件解决方案,用于将来自多个身份提供商的不同身份和访问管理 (IAM) 系统协调为顺畅的工作流程。
安全团队和员工对不同类型的网络安全威胁了解得越多,就能越有效地预防、防备和应对网络攻击。
所有链接均为 ibm.com 外部链接
1 Charlie Clark“新的攻击路径?如请求的服务票据”。Semperis 公司。2022 年 9 月 27 日。
2 SolarWinds 入侵。MITRE ATT&CK。2023 年 4 月 14 日。
3 StopRansomware:Akira 勒索软件。网络安全和基础设施安全局 (CISA)。2024 年 4 月 18 日。
4 窃取或伪造 Kerberos 票据:Kerberoasting。MITRE ATT&CK。2023 年 3 月 30 日。