在一个月黑风高的夜晚,突然收到邮件说要准备准备,分享一下对Kerberos告警的分析,心里震惊了一下,我都好多年没有正经学习了,写个小作文还是有点困难的,不过,

还好我有Kimi(Kimi K2.6 模型已正式发布,长程代码编写能力更强更稳。)

以下内容可能会有地方说的不够清楚,有啥问题的可以留言一起探讨。

内容 隐藏

一、Kerberos 基本认证流程简单分析

上图中涉及到了三个请求返回过程:Client与KDC的ASClient与KDC的TGSClient与Server,详细的请求响应如下:

Step 1:AS-REQ:Client向KDC(AS)发起一个认证请求,请求的凭据是Client的NTLM Hash加密的时间戳以及身份信息等

Step 2:AS-REP:AS使用Client NTLM HASH进行解密,若检验正确则返回用KRBTGT HASH加密的TGT票据(再TGS-REQ中发送到TGS并用于换取ST),TGT里面包含PAC

Step 3:TGS-REQ:Client获得TGT缓存在本地(不能解密),可用来向TGS换取访问相应服务的ST票据

Step 4:TGS-REP:TGS使用KRBTGT HASH解密TGT,若结果正确,返回用提供服务的服务器的Server Hash(机器用户HASH)加密的ST(server ticket)

Step 5:AP_REQ:Client拿着获得的ST去服务器请求资源

Step 6:AP_REP:Server使用自己的Hash解密ST,若解密正确,则拿着获取的PAC去访问KDC判断Client是否有权限访问。KDC解密PAC后获取用户sid以及所在组的信息,并根据访问控制表(ACL)判断权限。若符合,Server返回资源给Client


名词解释:

Domain Controller 域控制器,简称DC,一台计算机,实现用户、计算机的统一管理

Key Distribution Center 秘钥分发中心,简称KDC,默认安装在域控里,包括AS和TGS

Authentication Service 身份验证服务,简称AS,用于KDC对Client认证

Ticket Grantng Service 票据授予服务,简称TGS,用于KDC向Client和Server分发Session Key(临时秘钥)

Active Directory 活动目录,简称AD,用于存储用户、用户组、域相关的信息。

Client 客户端,指用户。

Server 服务端,可能是某台计算机账户,也可能是某个服务。

黄金票据:黄金票据伪造的是:TGT(Ticket Granting Ticket)而签发 TGT 的关键密钥来自:KRBTGT 账户 Hash,KRBTGT 是域里专门负责 Kerberos 的隐藏账户。只要攻击者拿到:krbtgt NTLM Hash就能自己签发合法TGT。因此黄金票据通常意味着域已经基本沦陷。

白银票据:白银票据伪造的是:TGS(Service Ticket),更多的是为了控制某个服务。但目前这两个方式已经用的比较少了。


 关键概念:

概念通俗解释为什么和攻击有关
SPN (Service Principal Name)服务在 AD 里的「门牌号」,如 MSSQLSvc/db01:1433任何域用户都能为任意 SPN 请求 TGS——这是 Kerberoasting 的根
TGS 服务票据访问某服务的通行证,用该服务账号的密码哈希加密拿到票据 = 拿到一份用服务账号密码加密的密文 → 可离线爆破
加密类型 (Encryption Type)票据加密算法0x17 (RC4) 弱、易破;0x12 (AES256) 强。攻击者会刻意降级请求 RC4
服务账号跑服务用的域账号,常密码弱且长期不改、还常是高权限Kerberoasting 的最终目标

二、MITRE ATT&CK映射

检测规则MITRE阶段风险危害
UC037 – Detect Kerberos Ticket RequestedTA0006 凭据访问 (T1558 Kerberos 票据滥用) / TA0008 横向移动 (T1550.003 Pass-the-Ticket)

这是最早期的信号。攻击者拿到一个普通域账号后通常会枚举SPN
了解有哪些服务账号,判断攻击目标,此时会产生大量:4769
Kerberos Service Ticket Request,所以这条规则更偏向:侦察(Discovery)阶段
批量票据请求 = Kerberoasting 或自动化横向移动工具在跑
异常账号请求高敏服务票据 = 攻击者在为访问关键系统做准备
TGT 异常复用 = Pass-the-Ticket,凭据已被盗用
 [TA0006-R07] Suspicious Kerberos Service Ticket RequestTA0006 Credential Access — T1558.003 Kerberoasting
前置常伴 TA0007 Discovery — T1087 账号枚举 / SPN 扫描

当攻击者确定目标后:请求服务票据(TGS),导出票据,Hashcat破解,此时属于:凭证获取(Credential Access)
服务账号密码一旦破解 → 攻击者获得该服务账号权限;服务账号常被授予高权限甚至域管
整个过程离线破解,域内无任何后续异常,破解成功后才回来直接合法登录,极隐蔽
是从「普通域用户」提权到「高权限账号」的最经典路径之一
 [TA0007-R01] SMB Brute Force Attempt [Internal]TA0007 / TA0008 — T1110.001 密码猜测 / T1110.003 密码喷洒 / T1021.002 SMB 横向

攻击者得到服务账户密码后:会尝试登录服务器或者文件服务器或者域控,这时候会出现4625,4624
,4776,为横向移动准备。
内网爆破说明攻击者已在内网立足,正寻找弱口令扩大战果
命中弱口令 → 横向移动到新主机;若命中特权账号 → 直奔域控
大量失败可能触发账号锁定,造成业务中断(DoS 副作用)
UC037 – Detect Kerberos Ticket Requested within your networkTA0008 横向移动 — T1021 远程服务 / T1550.003 Pass-the-Ticket;TA0006 — T1558 票据滥用

这时候属于横向移动中的Kerberos行为,当攻击者已经开始控制多台机器,会出现不同的机器对其他各种服务器发送TGT请求,这时候产生大量内部Kerberos请求,
横向移动前置:攻击者正在为访问新目标主机申请通行证,下一步就是实际登录/执行
若用盗取的高权限票据请求 CIFS/HOST 票据访问多台机器 = 横向扩散正在发生
是”打到域控”前最值得抓住的早期信号之一
[TA0003-R09] Multiple Windows Account Passwords ChangedTA0003 Persistence / TA0005 防御绕过 — T1098 账号操纵
大规模锁定合法用户出账号则关联 TA0040 Impact(勒索前「锁门」,阻止管理员夺回控制)

如果攻击者获得Domain Admin,
Account Operators,这时候会经常出现批量重置密码,例如管理员账号,服务账号,备份账号,目的是及建立后门,以及为后面的目的做准备。
🚨 这条告警往往出现在攻击链的”后期”
批量改密通常意味着攻击者已经拿到了高权限。它有两种剧本:① 持久化/巩固控制——重置一批账号密码留作后门;② 勒索前的”锁门”动作——批量改密+改域管密码,让管理员无法登录夺回控制权,紧接着就是加密。看到它要按高优先级、可能正在进行的事件处理。

合法用户被锁在门外 → 大面积业务中断
攻击者掌握新密码 → 长期访问后门
若含域管/服务账号 → 全域控制权易主

三、规则详解

规则一:UC037-Detect Kerberos Ticket Requested

MITRE阶段

TA0006
Credential Access

告警说明

检测:

Kerberos票据请求异常

包括:


数据源

数据源说明
域控安全日志主要来源4768(TGT 请求 AS-REQ) + 4769(TGS 请求)
AD 账号/主机基线判断「异常账号/主机」的参照系
EDR源主机进程定位

关键字段

字段研判作用
Account Name / Client Address请求方账号与主机——核心:这个「账号×主机」组合是否符合常态?(财务账号从服务器发起请求 = 异常)
Service Name请求的服务。批量、跨多主机服务、敏感服务(如域管相关)值得关注
请求频率 / 数量本用例核心:单位时间内票据请求数远超基线 = 批量请求
Encryption TypeRC4 降级仍是重要旁证
4768 vs 4769 比例异常的 TGT/TGS 比例可暴露票据滥用(如 Pass-the-Ticket 复用 TGT 大量换 TGS)

告警原理

对 4768/4769 做基线建模,当:
  某 Account / Client Address 的票据请求频率突增 (> baseline × N)
  或 异常账号-主机组合请求票据
  或 单账号短时请求大量不同 Service Name
→ alert(UC037 Kerberos Ticket Requested)

风险

可能正在:


分析步骤

查看请求来源
Source Host

查看请求对象
Service Name

是否批量请求

例如:

100个不同SPN

是否首次出现

SOC中重点关注:

历史未出现账号

建议处置

检查:

Rubeus
PowerShell
Impacket

执行痕迹。

规则二:Suspicious Kerberos Service Ticket Request

告警说明

检测:

异常Kerberos服务票据请求

重点发现:


数据源

数据源说明
域控安全日志 (Domain Controller)主要来源。Kerberos 服务票据请求事件 4769
AD / LDAP 查询日志攻击前常先枚举带 SPN 的账号(SPN 扫描)
EDR / 终端日志定位发起请求的进程(Rubeus、Impacket GetUserSPNs、PowerView)
账号目录信息哪些是服务账号、是否高权限、SPN 清单

关键字段

字段研判作用
Service Name / Service ID被请求票据的服务账号/SPN。Kerberoasting 会针对真实服务账号而非机器账号(机器账号以 $ 结尾,通常排除)
Ticket Encryption Type最强特征0x17 (RC4-HMAC) 高度可疑(现代域默认 AES,攻击者故意降级以便破解);0x12/0x11 (AES) 相对正常
Account Name (请求方)谁在请求。一个普通用户账号短时间请求大量不同服务的票据 = 典型 Kerberoasting
Client Address请求来源 IP,定位发起主机
Ticket Options票据选项标志位,可辅助识别工具特征
Failure Code0x0 成功。Kerberoasting 通常都是成功的(请求本身合法)

告警原理

正常业务中,用户请求服务票据是按需、零散的。Kerberoasting 的异常在于统计特征


同一 Account Name 在短时间内:
  请求大量不同 Service Name (≥N 个) 的 TGS
  且 Ticket Encryption Type = 0x17 (RC4)
  且 目标多为带 SPN 的用户型服务账号(非机器账号 $)
→ alert(Suspicious Kerberos Service Ticket Request)

⚠️ 检测靠组合,不靠单条单独一条 RC4 的 4769 毫无意义(很多老旧应用就用 RC4)。告警价值在于「同账号 + 短时间 + 多 SPN + RC4」的组合统计。研判时一定要拉出该账号的请求时间序列和 SPN 列表,看是不是”批量扫荡”。


风险危害

服务账号通常:

破解成功后可能获得:


常见触发场景

正常:

异常:


分析步骤

1 查看请求账号
Account Name

是否普通用户。


2 查看请求数量

统计:

5分钟内
4769数量

例如:

300+

明显异常。


3 查看SPN

例如:

MSSQLSvc/*
HTTP/*
CIFS/*

是否出现批量枚举。


4 查看加密类型

重点:

0x17
RC4

Kerberoasting常见目标。


5 查询威胁情报

调查:

是否关联:


6 查找关联告警

是否同时出现:


建议处置

短期

隔离主机,重置服务账号密码


长期

使用:

服务账号改用 gMSA(自动轮换强密码)、禁用 RC4、关注 SPN 最小化授权

规则三:SMB Brute Force Attempt [ Internal ]

MITRE阶段

TA0006
Credential Access

对应:

T1110
Brute Force

SMB简介

SMB用于:

端口:

445

数据源

数据源说明
Windows 安全日志(目标主机/域控)主要来源。登录失败 4625、成功 4624(Logon Type 3 网络登录)4776 NTLM认证
防火墙 / NetFlow内网 445 会话量、源对目标的扇出关系
EDR源主机发起 SMB 连接的进程
AD 账号锁定日志4740 账号锁定,爆破的副作用

关键字段

字段研判作用
Source Address / Workstation爆破源主机——内网爆破说明已有据点,这台机器很可能已失陷
Target Account Name被猜的账号。单账号多密码=密码猜测;多账号同密码=密码喷洒(更隐蔽,避免锁定)
Logon Type3=网络登录(SMB 典型);关注 3 的密集 4625
Failure Reason / Status / Sub Status0xC000006A=密码错,0xC0000064=用户不存在,0xC0000234=账号锁定,0xC0000072=账号禁用——分布能区分喷洒 vs 枚举
失败次数/频率核心阈值:短时间大量 4625
紧随的 4624最关键:一连串失败后突然成功 = 爆破命中弱口令,立即升级

告警原理


同一 Source Address 在时间窗内:
  对单个或多个目标主机产生大量 4625 (Logon Type 3)
  失败次数 > 阈值
→ alert(SMB Brute Force [Internal])
强信号:失败序列后出现 4624 成功(爆破成功)

⚠️ 区分密码猜测 vs 密码喷洒密码猜测=盯一个账号狂试(易锁定、易告警);密码喷洒=拿一个常见密码(如 Spring2026!)去试一大批账号,每账号只试 1-2 次,不触发锁定、单账号看很正常,必须从「源主机/源 IP」维度横向聚合才能发现。研判时一定要按源聚合,而不是按账号。


风险危害

可能意味着:


常见触发场景

正常:

运维脚本密码配置错误

异常:

CrackMapExec
NetExec

批量尝试。


分析步骤

查看失败账号

是否:

administrator
svc_sql
backup

查看成功记录

搜索:

4624

确认是否爆破成功。


查看横向移动

关联:

PsExec
WMI
RDP

日志。


建议处置

规则四: UC037 – Detect Kerberos Ticket Requested Within Your Network

MITRE阶段

TA0008
Lateral Movement

告警说明

关注:

内网主机之间
Kerberos服务票据请求

风险

可能表示:


数据源

数据源说明
域控 4768/4769、内网流量(NetFlow)、EDR、AD 资产基线

关键字段

字段内容
Service Name本条尤其关注面向横向移动的服务:CIFS(文件共享/SMB)、HOST、RPCSS、WSMAN/PowerShell Remoting、MSSQL 等——请求这些服务票据常是要去访问/控制目标主机
Client Address → Service 主机本条核心:构建”源主机→目标主机”的票据请求关系图,发现一台主机短时间为多台不同目标主机请求 CIFS/HOST 票据 = 横向移动踩点
Account Name用哪个账号在横移?是否为刚被 Kerberoast/爆破到的账号?
Encryption Type / Ticket OptionsRC4 降级、异常票据选项辅助识别工具

Windows 域环境中的 Kerberos 与认证攻击检测分析


内网范围内监测 4769,当:
  单 Client Address / Account 短时间为多个不同目标主机
  请求 CIFS/HOST 等横移相关服务票据
  或票据请求路径偏离该账号/主机的正常访问基线
→ alert(UC037 within network)

分析重点

请求来源

是否:


请求服务

是否出现:

CIFS
HOST
MSSQLSvc
LDAP

是否伴随横向移动

关联:

4624 Type3

网络登录。


是否出现远程执行

关注:

PsExec
WinRM
WMI

相关日志。


建议处置

确认:

  1. 是否授权访问
  2. 是否存在异常票据请求
  3. 是否已出现登录成功
  4. 是否已形成横向移动链路

规则五:[TA0003-R09]Multiple Windows Account Passwords Changed

MITRE阶段

TA0003
Persistence

对应:

T1098
Account Manipulation

告警说明

检测:

短时间大量密码修改

数据源

数据源说明
域控安全日志主要来源4724(管理员重置他人密码)、4723(用户改自己密码)、4738(账号属性变更)
AD 变更/审计日志操作者、目标账号、时间
IT 工单/变更系统核对是否为已审批的批量运维操作
EDR操作者主机进程(脚本批量改密 vs GUI 手动)

关键字段

字段研判作用
Subject Account (操作者)第一关键:谁在改?是 IT/HelpDesk 管理员(可能正常)还是普通账号/异常账号(高危)?
Target Account (被改账号)被改的是谁、共多少个、是否包含特权账号/域管/服务账号
Event ID 4724 vs 47234724=他人重置(攻击者控他人账号常用);4723=自助修改
变更数量/速率本规则核心:短时间内大量账号被改 = 批量操作
操作时间非工作时间/凌晨的批量改密尤其可疑

告警原理


同一 Subject(操作者) 在时间窗内:
  产生大量 4724/4723 (针对不同 Target Account)
  数量 > 阈值
→ alert(Multiple Windows Account Passwords Changed)
加权:操作者非授权管理员 / 非工作时间 / 含特权目标账号

风险危害

攻击者获得管理员权限后:

批量重置密码

实现:


分析步骤

操作者是谁

SubjectUserName

修改范围

几个账号?

几十个账号?

管理员账号?


是否为计划运维

核实:


是否关联提权

查看:

4672
4728
4732

建议处置

总结

这5条规则实际上可以串成一条完整攻击链:

账号泄露

Kerberos Ticket Requested

Kerberoasting

密码破解

SMB Brute Force

横向移动

Password Changed

权限维持

Leave a Reply