我不是专家,这个答案是基于我目前对实践环境中的这些攻击的了解。
PtT (Pass the Ticket) 怎么可能?您可以轻松获取某人的票,但要使用它,您需要创建一个 Authenticator,这意味着您需要获取客户端拥有的密钥之一(这取决于您所处的步骤),甚至伪造嵌入在票被盗。
当您获得服务帐户的 NTLM 哈希或明文密码时,您可以执行此类攻击。您基本上从域控制器获得 TGS,使用服务的 NTLM 哈希对其进行解密(如果您有哈希密码),修改该 TGS 中包含的您所属的组(修改 PAC),以便获得更多权限,然后再次重新加密票证并将其发送到服务。这张票也称为银票。
在我看来,如果可以访问客户端的计算机内存,您将只提取 Kerberos 票证,而没有会话密钥或明文/散列密码,这听起来不合理
假设您在该计算机上获得了系统权限,您可能希望获得 NTLM 哈希或密码,以便横向移动到您正在攻击的 Active Directory 环境中的其他帐户。我不认为你可以单独用门票做任何事情(但我不确定这个)。
如果您无法获取哈希/密码,那么可能的做法是获取服务(或所有可用服务)的 TGS,将其下载到磁盘,然后尝试对其进行解密以从中获取服务的明文密码(又名 Kerberoasting)。
如果只使用 Kerberos,我将在哪里找到任何 NTLM 哈希来提交 OPtH(Over-Pass the Hash)?
当使用 Kerberos 身份验证或 NTLM 时,当用户当前登录到 Active Directory 环境中的计算机时,您会发现他们的 NTLM 哈希缓存在该计算机中。
现在的Windows操作系统默认不使用RC4_HMAC_MD4的加密,那么我将如何在OPtH中使用NTLM哈希?降级是答案吗?
我不确定 RC4_HMAC_MD4 在哪里使用(我认为它用于加密而不是身份验证),但在使用 NTLM 哈希时,你可以使用它。如果您指的/rc4:<hash>
是 mimikatz 中的选项,那么它采用 NTLM 哈希(我不知道为什么会调用rc4
它)。
我在一些文章中读到,kerberoast 的蛮力阶段是通过尝试不同的 NTLM 哈希来完成的。这看起来很奇怪,所以我假设它是通过尝试明文密码来完成的,该密码将用于生成 NTLM 哈希值,这些哈希值将依次用作密钥,以尝试解密票证的加密。但事实并非如此,默认情况下不使用 RC4_HMAC_MD4。AES 确实如此,并且它具有 PBKDF2 作为哈希算法(假设是 BF 抗性的)。
是的,在 Kerberoasting 中,您首先将候选人哈希到 NTLM,然后尝试使用哈希解密票证。
您可以在请求票证时尝试降级到 RC4 以便能够更快地找到明文密码,但使用 AES 只会变得更慢解密因此找到明文密码,
好文章
当受害者服务器确实检查 PAC 与 DC 时,Silver Ticket 是如何完成的?
从我在这里读到的内容来看,应该仍然可以进行银票攻击。主要是因为 PAC 并不总是针对 DC 进行检查。
有一些方法可以使用银票来阻止横向移动,我知道的一种方法是将管理员和服务帐户配置为“敏感且无法委派”。
Golden Ticket 攻击建立在 TGS 上以与任何给定的 TGT 合作?这意味着即使它是伪造的,它也会在 PAC 上签名?
Golden Ticket 攻击是伪造一个 TGT,这可以在获得加密 TGT 的密钥后实现,该密钥只有域中的密钥分发中心 (KDC) 知道,密钥是域用户帐户的密码哈希krbtgt
。要获取此用户的密码,您需要破坏域控制器以获取该哈希值。
因此,当您能够获得金票时,您基本上已经攻陷了整个 AD 域。