资讯动态

Anthropic Cybersecurity Skills 实战指南:基于 Windows 事件 4768/4769/4771 检测 Kerberos Pass-the-Ticket 攻击

发布时间:2026/9/13 15:49:08 来源:尧图企业网站定制
Anthropic Cybersecurity Skills 实战指南基于 Windows 事件 4768/4769/4771 检测 Kerberos Pass-the-Ticket 攻击【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI 20 platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-Skills本文是 Anthropic-Cybersecurity-Skills 仓库中 detecting-pass-the-ticket-attacks 技能文档的完整技术展开。文章以该技能文档为骨架结合其 API 参考 与 检测脚本 agent.py 的源码实现系统讲解如何通过 Windows Security Event ID 4768TGT 请求、4769TGS 请求与 4771预认证失败的异常模式识别 Kerberos 票据窃取与重放行为。读完本文你将掌握 PtT 攻击的原理与杀伤链、域控审计日志的开启方法、Splunk 与 Elastic SIEM 的完整检测查询、基于标准差的异常基线建模以及用 Python 对离线事件日志做批量研判的实操方案从而直接落地为 SOC 可运行的检测规则与威胁狩猎流程。背景为什么 Pass-the-Ticket 难以被传统手段发现Pass-the-TicketPtT是 MITRE ATTCK 中编号T1550.003Use Alternate Authentication Material: Pass the Ticket的横向移动技术。攻击者从一台已失陷主机的内存LSASS中窃取 Kerberos 票据TGT 或 TGS然后在另一台主机上重放该票据完成认证——整个过程不需要也不依赖用户密码因此传统的密码破解检测、失败登录告警完全失效。其杀伤链通常如下可参考同仓库的对抗侧技能 conducting-pass-the-ticket-attack 得到印证窃取票据在失陷主机上用 Mimikatzsekurlsa::tickets /export或 Rubeusdump导出票据转移票据以.kirbiMimikatz或 base64Rubeus格式带到目标主机注入重放在目标会话中执行kerberos::ptt注入票据随后访问远程资源完成横向移动。由于 Windows 域环境默认信任 Kerberos 票据本身被重放的票据在认证层面合法有效这就迫使检测方必须依赖行为与协议层面的异常信号。本技能给出的核心思路是将 4768 / 4769 / 4771 三类事件作为主数据源围绕以下三类异常做关联分析RC4 加密降级现代 Windows 环境默认使用 AES0x12出现 RC4-HMAC0x17的票据异常值往往意味着降级攻击跨主机票据重用同一用户在同一时间窗口内从多个来源 IP 请求服务票据TGS 请求量异常单用户/单主机的服务票据请求量显著偏离自身基线。前置条件让检测有据可依要复现本文全部检测能力环境需满足Windows 域控制器开启高级审核策略至少启用 Audit Kerberos Authentication Service审计 Kerberos 认证服务与 Audit Kerberos Service Ticket Operations审计 Kerberos 服务票证操作两类子类别否则不会产生 4768/4769 事件SIEM 平台Splunk 或 Elastic SIEM 正在采集 Windows Security 事件日志端点补充遥测终端部署 Sysmon为进程链、网络连接提供佐证例如识别发起票据重放的进程与工具特征Python 环境Python 3.8 且安装requests库用于离线日志研判脚本运行。事件源剖析三个核心 Event ID 的关键字段对 PtT 检测而言日志字段比事件本身更重要。本技能 API 参考文档对三个事件的核心字段做了完整定义这是所有检测规则的地基。Event ID 4768 —— TGT 请求字段含义TargetUserName请求 TGT 的账户TargetDomainName账户所属域IpAddress请求来源 IPTicketEncryptionType0x12AES256、0x17RC4-HMACPreAuthType15PA-ENC-TIMESTAMP该事件的异常信号包括TGT 请求来源 IP 与票据使用者后续登录 IP 不一致、使用旧式加密类型、非工作时间的高频请求。Event ID 4769 —— TGS 请求字段含义TargetUserName使用票据的账户ServiceName所请求服务的 SPNIpAddress来源 IPTicketEncryptionType0x17表示 RC4 降级TicketOptionsKerberos 票据标志这是PtT 检测最重要的数据源服务票据的每一次使用都会产生该事件跨主机重用、Kerberoasting 的 SPN 枚举、加密降级都能在此体现。Event ID 4771 —— Kerberos 预认证失败字段含义TargetUserName认证失败的账户IpAddress失败来源Status0x18密码错误、0x12账户过期该事件服务于**密码喷洒T1110.003**类前置攻击的关联检测——攻击者往往先用喷洒拿到初始凭据再通过 PtT 横向扩散因此 4771 的失败高峰是完整攻击链的前兆。从源码实现看agent.py 的 parse_evtx_xml 精确提取了上述全部字段TargetUserName、TargetDomainName、IpAddress、ServiceName、TicketEncryptionType、Status、PreAuthType并只保留 4768/4769/4771 三个事件——这与检测规则的数据面完全一致可作为字段提取的权威参照。加密类型速查判断降级的依据结合同仓库 conducting-pass-the-ticket-attack 的 API 参考 与本文档Kerberos 加密类型常量对照如下值算法安全含义0x17RC4-HMAC降级攻击指示器也是 Kerberoasting / 黄金票据的常见特征0x12AES-256现代环境的预期值0x11AES-128可接受的加密值得注意的细节在脚本 detect_rc4_downgrade 中同时匹配了0x17与23两种写法——因为不同导出工具对加密类型字段的序列化格式可能不同十六进制字符串或十进制整数实战中构建规则时应兼容两种表示。七步检测实施流程本技能文档给出的检测落地流程分为七个步骤逐层递进通过组策略在域控制器上启用 Kerberos 审计日志对应上文前置条件中的两类审核子类别将 Event ID 4768、4769、4771 转发至 SIEM 平台Windows 事件转发或通用日志采集器部署 RC4 加密降级检测规则TicketEncryptionType 0x17创建票据跨多来源 IP 重用的关联规则建立每用户/每主机的 TGS 请求量正常基线对票据请求模式的标准差偏离进行告警结合 Active Directory 上下文对标记事件开展调查与富化账户角色、所属组、近期登录、是否属于敏感账户等。其中第 5、6 步的基线 标准差设计直接对应下方 Splunk 查询中的eventstats avg / stdev统计逻辑体现了按用户个性化基线而非全局阈值的检测思路可显著降低误报。Splunk SPL 检测查询实战API 参考文档提供了四类可直接投放的 SPL 查询generate_splunk_queries 中亦有对应的程序化版本其中preauth_failures查询还额外按IpAddress聚合便于定位喷洒来源。1. RC4 加密降级检测indexwineventlog sourcetypeWinEventLog:Security EventCode4769 TicketEncryptionType0x17 | stats count by TargetUserName, IpAddress, ServiceName | where count 3单个 RC4 请求可能是历史遗留应用所致因此先用stats count按三元组聚合再以count 3过滤出高频降级——脚本默认逻辑与之对应detect_rc4_downgrade对每个命中事件单独标记而 SIEM 规则通过聚合抑制低频噪声。2. 跨主机票据重用检测indexwineventlog EventCode4769 | stats dc(IpAddress) as ip_count, values(IpAddress) as ips by TargetUserName | where ip_count 1 | sort -ip_countdc()计算每个用户出现过的不同 IP 数量ip_count 1即命中同一用户从多个来源使用票据。脚本侧 detect_cross_host_ticket_reuse 采用同一逻辑同一用户出现 ≥2 个来源 IP 即标记为critical严重度并会附带请求数与时间戳样本便于快速时间线还原。3. TGS 请求量异常基于标准差indexwineventlog EventCode4769 | bin _time span1h | stats count by TargetUserName, _time | eventstats avg(count) as avg_count, stdev(count) as sd by TargetUserName | where count avg_count (3 * sd)先按小时分桶计算每用户请求数再用eventstats计算该用户的历史均值与标准差最后用3σ 准则超过均值加三倍标准差判定异常。这一查询体现的是个体化基线思想对常年高频请求的服务账户与低频普通用户采用不同标尺。脚本的 detect_anomalous_tgs_volume 提供了无历史数据时的简化替代——按绝对阈值默认 50可由--tgs-threshold调整统计全量 TGS 请求数适合无长窗口历史基线的小环境。Elastic / KQL 检测查询实战RC4 降级KQL 一行式event.code: 4769 AND winlog.event_data.TicketEncryptionType: 0x17适用于 Elastic Security 的 KQL 搜索栏或规则查询语言字段路径遵循 Winlogbeat 默认映射。跨主机重用Elasticsearch 聚合POST security-*/_search { size: 0, query: { term: { event.code: 4769 } }, aggs: { by_user: { terms: { field: winlog.event_data.TargetUserName }, aggs: { unique_ips: { cardinality: { field: source.ip } } } } } }利用cardinality基数聚合近似统计每用户的去重 IP 数效果等价于 Splunk 的dc(IpAddress)size: 0只返回聚合结果不返回明细文档查询开销更小。若需精确值可改用terms嵌套或开启precision_threshold调优基数估计精度。离线研判用 agent.py 自动化 PtT 检测当需要批量分析导出的安全日志例如无 SIEM 的小环境、取证场景或规则验证时仓库提供了完整的 Python 实现 scripts/agent.py其输入为 Windows 导出的 Security 事件日志 XMLwevtutil epl或wevtutil export-log产物。命令行用法# 解析导出的安全事件日志 XML 并检测 PtT 指标 python agent.py --evtx-xml security_events.xml --output report.json # 直接打印内置的 Splunk 检测查询 python agent.py --show-splunk # 自定义阈值 python agent.py --evtx-xml events.xml --tgs-threshold 30 --preauth-threshold 5参数说明参数默认值作用--evtx-xml无导出的安全事件日志 XML 路径必需除非使用--show-splunk--tgs-threshold50TGS 请求量告警阈值--preauth-threshold10预认证失败告警阈值--outputptt_detection_report.json输出报告路径--show-splunkFalse仅打印内置 SPL 查询不执行分析四大检测器与输出结构脚本内聚了四类检测逻辑与上文 SIEM 查询一一对应RC4 加密降级detect_rc4_downgrade逐事件匹配0x17/23严重度high对应 SPL 查询一跨主机票据重用detect_cross_host_ticket_reuse同用户 ≥2 个来源 IP 即告警严重度critical对应 SPL 查询二异常 TGS 请求量detect_anomalous_tgs_volume按阈值统计严重度high对应 SPL 查询三过度预认证失败detect_preauth_failures关联 T1110.003 密码喷洒严重度medium补充 SPL 中的preauth_failures查询。运行后输出 JSON 报告包含{ analysis_time: ...Z, total_kerberos_events: 1234, detections: { rc4_downgrade: [...], cross_host_ticket_reuse: [...], anomalous_tgs_volume: [...], preauth_failures: [...] }, total_alerts: 5, mitre_techniques: [T1550.003, T1558.003, T1110.003], splunk_queries: {...} }每条告警包含mitre_technique、severity、description及原始字段快照可直接作为事件工单或取证报告的证据附件。值得强调的是报告顶层会带上splunk_queries——即使在没有 SIEM 的环境中完成初步研判也能同时输出可供生产环境复用的查询规则实现离线验证 → 线上部署的无缝衔接。MITRE ATTCK 技术映射本技能文档将检测能力显式映射到 ATTCK便于在红蓝对抗、覆盖度审计中直接引用技术ID检测信号Use Alternate Authentication Material: Pass the TicketT1550.003RC4 降级、跨主机票据重用Steal or Forge Kerberos Tickets: KerberoastingT1558.003面向 SPN 的高 TGS 请求量Brute Force: Password SprayingT1110.003预认证失败尖峰在 ATTACK_COVERAGE.md 的仓库级覆盖统计中T1558.003Kerberoasting是全仓被引用最多的技术之一14 个技能引用且 T1550.003 的兄弟技术 T1550.002Pass the Hash在 detecting-pass-the-hash-attacks 中有平行实现——两者结合可覆盖票据偷窃与哈希重用两条主流的凭据横向移动路径。同时本技能在仓库元数据中还关联了NIST CSF 2.0的DE.CM-01、DE.AE-02、DE.AE-06、ID.RA-05覆盖持续监控、异常事件分析、攻击相关性以及D3FEND的 Token Binding、Application Protocol Command Analysis 等对抗技术可作为多框架合规映射的输入。误报抑制与调查收尾建议将上述规则投入生产前建议按以下思路做调优属于技能文档第 5、6 步的落地延伸RC4 降级先与资产清单交叉比对排除遗留应用、旧式服务账户的合法 RC4 使用将规则限定到非白名单主机或要求同用户同时满足多 IP条件再升级告警跨主机重用虚拟桌面/会话主机环境下同一用户从多个跳板 IP 访问服务是常态应结合ServiceName白名单如仅对敏感服务如域控、管理接口告警及会话时长做上下文判断TGS 异常3σ 规则要求足够的基线窗口建议 ≥14 天新账户与系统账户$结尾建议单独建模或排除终局确认对命中用户执行 AD 富化所属敏感组、最近密码修改时间、登录历史配合 Sysmon 进程链确认是否存在 Mimikatz/Rubeus 类工具的注入特征最终以 SKILL.md 定义的 JSON 报告格式输出结论并附 MITRE 技术编号供工单与汇报引用。总结Pass-the-Ticket 攻击的检测核心在于对 Kerberos 事件语义的深刻理解与多维度关联以 4768/4769/4771 三类事件为数据源用 RC4 加密降级、跨主机票据重用、TGS 请求量异常三个信号做交叉印证配合按用户的个性化基线与标准差阈值即可在票据本身合法的前提下捕获攻击者的行为痕迹。本技能文档及其配套的 API 参考与 agent.py 源码提供了一条从日志字段、SIEM 查询到离线批量研判的完整检测落地链路可直接复制进 Splunk/Elastic 规则库或用于 SOC 覆盖度验证与紫队演练。【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI 20 platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-Skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价