Comprendiendo ADCS 101

Comprenent ADCS 101

Celia Catalán


En aquesta publicació comentarem els aspectes bàsics sobre ADCS, així com la tècnica d'explotació ESC1.

Introducció a ADCS

Active Directory Certificate Services (ADCS) és un rol del servidor de Windows que proporciona serveis personalitzables per a l'emissió i la gestió de certificats d'infraestructura de clau pública (PKI) utilitzats en sistemes de seguretat de programari. Permet a les organitzacions assegurar la comunicació de xarxa, autenticar usuaris i dispositius i garantir la integritat de les dades mitjançant serveis criptogràfics. ADCS suporta diversos tipus de certificats, com ara certificats SSL/TLS, certificats de signatura de codi i certificats d'inici de sessió amb targeta intel·ligent, entre d'altres.

L'ús d'ADCS és molt útil per a les organitzacions, ja que poden desplegar plantilles de certificats, de manera que els usuaris del domini poden sol·licitar enrolar-se a la plantilla i obtenir certificats, obtenint així accés o privilegis sobre diferents elements del domini. 

Una mala configuració del rol Active Directory Certificate Services i dels seus components com les plantilles de certificats, pot derivar en diferents vulnerabilitats que poden arribar a permetre una elevació de privilegis al domini

Enumeració de vulnerabilitats

Per revisar els serveis d'ADCS durant un exercici d'auditoria, se solen utilitzar eines com Certify.exe o Certipy .

Aquestes dues eines permeten enumerar i sol·licitar certificats des d'ADCS, facilitant la tasca d'identificar plantilles la configuració de les quals no és correcta i permet algun tipus d'abús. 

Enumeración de entidad certificadora (CA) en un entorno de Directorio Activo con certify.exe.

Durant l'enumeració de vulnerabilitats relatives a ADCS es poden identificar tècniques d'abús diferents en funció de la situació de l'entorn auditat. A aquest tipus de situacions o entorns mal configurats se'ls associen unes tècniques d'escalada (ESC) sent que actualment hi ha un total de 13 (ESC1 – ESC13) els quals poden arribar a permetre una elevació de privilegis en el domini.

Explotació ESC1

ESC1 fa referència a una vulnerabilitat comuna a les configuracions d'ADCS on els permisos d'inscripció estan configurats incorrectament. Aquesta mala configuració pot permetre usuaris de domini sol·licitin certificats en nom de qualsevol altre compte de l'organització, permetent així impersonar qualsevol d'aquestes amb les escalades de privilegis que això comporta. 
Amb Certify.exe és possible enumerar quines plantilles permeten sol·licitar certificats en nom d'un altre usuari de la següent manera: 


Terminal

                Certify.exe cerca /enrolleeSuppliesSubject. 

      


Enumeración Plantilla vulnerable a ESC1.

Un cop detectada una plantilla que permet autoenrolar-se a qualsevol compte de domini autenticat i que permet especificar el nom del compte per a l'obtenció del certificat, és possible obtenir aquest certificat de la manera següent: 

Terminal

              Certify.exe request /ca:'domini'\'entitat certificadora (CA)' /template:"'nom de la plantilla vulnerable'" /altname:'compte de domini a impersonar'

      
Solicitud de certificado en nombre de la cuenta “administrator”.

Després de l'execució de l'ordre anterior, es pot obtenir un certificat a nom de qualsevol compte de domini, en aquest cas és el compte “administrator”. Posteriorment, utilitzant eines com openssl és possible transformar aquest tipus de certificats .pem en certificats .pfx, els quals poden ser interpretats per Rubeus per obtenir un tiquet en nom del compte associat al certificat expedit.

ticket de administrador de dominio obtenido.

Com podem observar, s'ha obtingut el tiquet d'administrador de domini amb el certificat obtingut.
En properes entregues continuarem parlant sobre diferents ESCs i els seus mètodes dexplotació.


Ignacio Sánchez, col·laborador amb Grupo Zerolynx .
Tornar al bloc

Deixa un comentari

Tingueu en compte que els comentaris s'han d'aprovar abans que es publiquin.