{"id":4858,"date":"2024-10-09T09:03:38","date_gmt":"2024-10-09T14:03:38","guid":{"rendered":"https:\/\/estafalert.com\/2024\/10\/ekuwu-no-es-solo-otro-ad-cs-esc\/"},"modified":"2024-10-09T09:03:38","modified_gmt":"2024-10-09T14:03:38","slug":"ekuwu-no-es-solo-otro-ad-cs-esc","status":"publish","type":"post","link":"https:\/\/estafalert.com\/2024\/10\/ekuwu-no-es-solo-otro-ad-cs-esc\/","title":{"rendered":"EKUwu: No es solo otro AD CS ESC"},"content":{"rendered":"


\n<\/p>\n

\n

TL;DR<\/strong> – Utilizando plantillas de certificado integradas predeterminadas interpretaci\u00f3n 1, un atacante puede crear una CSR para incluir pol\u00edticas de aplicaci\u00f3n que sean preferidas a los atributos de uso de esencia extendido configurados especificados en la plantilla. El \u00fanico requisito son los derechos de inscripci\u00f3n y se puede utilizar para producir autenticaci\u00f3n de cliente, agente de solicitud de certificados y c\u00f3digos de dise\u00f1o de certificados utilizando el Servidor web<\/em><\/strong><\/span> plantilla.<\/p>\n

En 2021, los investigadores Will Schroeder y Lee Christensen de SpecterOps publicaron un documento t\u00e9cnico que detalla ocho (8) t\u00e9cnicas de subida contra los Servicios de certificados de Active Directory (AD CS), a las que denominaron ESC1 – ESC8. Si no ha culto ese documento t\u00e9cnico, h\u00e1galo primero; Har\u00e1 que el resto de esto sea m\u00e1s claro de seguir. Su investigaci\u00f3n innovador condujo a investigaciones adicionales en AD CS y, durante los dos primaveras siguientes, se identificaron t\u00e9cnicas de subida adicionales (ESC9 – ESC14).<\/p>\n

Hora del descripci\u00f3n<\/h2>\n

Son las 4:30 a. m. y el per\u00edodo de prueba finaliza a las 6:00 a. m. Tenemos un punto de apoyo, pero solo paso oficial a un (1) sistema. Entro de forma remota al servidor usando RDP y empiezo a husmear en el MMC. Como tengo paso oficial al sistema, asimismo puedo ver los certificados del sistema. Decid\u00ed revisar si hab\u00eda alguna plantilla que tal vez me perd\u00ed con el escaneo inconsciente de ESC1.<\/p>\n

Entonces not\u00e9 poco. Esto se parece a ESC1 porque le permite proporcionar el tema. Estoy conveniente seguro de que el Servidor web<\/em><\/strong><\/span> La plantilla de certificado no tendr\u00eda configurado el EKU de autenticaci\u00f3n de cliente, que es un requisito para ESC1, pero decid\u00ed hacer clic en Se requiere m\u00e1s informaci\u00f3n para inscribir este certificado. Haga clic aqu\u00ed para configurar los ajustes<\/em><\/strong><\/span>.<\/p>\n

\n
Figura 1: Solicitud de certificado MMC.exe<\/figcaption><\/figure>\n<\/div>\n

Complet\u00e9 los campos de asunto y UPN para que coincidan con el Administrador<\/strong><\/span> cuenta al igual que el ataque ESC1.<\/p>\n

\n
Figura 2 – Ataque manual ESC1<\/figcaption><\/figure>\n<\/div>\n

Fui a revisar que el uso de claves estuviera configurado como autenticaci\u00f3n del servidor,<\/em><\/strong><\/span> como deber\u00eda deber sido configurado por la plantilla, y me di cuenta de que la GUI no estaba atenuada. Pens\u00e9 que era extra\u00f1o, as\u00ed que intent\u00e9 quitar el autenticaci\u00f3n del servidor,<\/em><\/strong><\/span> ayudante Autenticaci\u00f3n del cliente<\/em><\/strong><\/span> a las EKU y solicit\u00f3 el certificado.<\/p>\n

\n
Figura 3: Asesinato de la pol\u00edtica de aplicaci\u00f3n<\/figcaption><\/figure>\n<\/div>\n
\n
Figura 4: Suplemento de la pol\u00edtica de aplicaci\u00f3n<\/figcaption><\/figure>\n<\/div>\n

Pens\u00e9 para mis adentros: “Seguramente eso no funcion\u00f3”. Mir\u00e9 el certificado y todav\u00eda dec\u00eda Autenticaci\u00f3n del servidor<\/em><\/strong><\/span> debajo del campo EKU, pero hab\u00eda poco extra\u00f1o. Hab\u00eda un nuevo campo etiquetado Pol\u00edtica de aplicaci\u00f3n<\/em><\/strong><\/span>. El Autenticaci\u00f3n del cliente <\/em><\/strong><\/span>que hab\u00eda especificado en la solicitud estaba presente en el certificado pero en un campo diferente.<\/p>\n

\n
Figura 5: Certificado ESC1 con administrador de materias<\/figcaption><\/figure>\n<\/div>\n
\n
Figura 6 – EKU innovador<\/figcaption><\/figure>\n<\/div>\n
\n
Figura 7: Pol\u00edtica de certificado de aplicaci\u00f3n agregada<\/figcaption><\/figure>\n<\/div>\n

Decid\u00ed intentar autenticarme en AD con \u00e9l. Con la \u00fatil PKINIT de Dirk-jan,<\/span> Utilic\u00e9 el certificado para solicitar un TGT de Kerberos pero recib\u00ed un error.<\/p>\n

\n
Figura 8: Error de prop\u00f3sito esencia inconsistente<\/figcaption><\/figure>\n<\/div>\n

Pero luego record\u00e9 un blog que mostraba una t\u00e9cnica denominada PassTheCert para usar el certificado para autenticarse a trav\u00e9s de schannel contra LDAP. Milagrosamente, funcion\u00f3. Me autentiqu\u00e9 en LDAP como administrador. M\u00e1s tarde, asimismo confirm\u00e9 que el m\u00e9todo era posible con Certificaci\u00f3n<\/em><\/strong><\/span> con el -ldap-shell<\/em><\/strong><\/span> caracter\u00edstica.<\/p>\n

\n
Figura 9: Ataque ESC1 contra LDAP<\/figcaption><\/figure>\n<\/div>\n
<\/div>\n

Una vez que me di cuenta de que el problema era novedoso, abr\u00ed un caso en el Centro de respuesta de seguridad de Microsoft (MSRC). Mientras esper\u00e1bamos a Microsoft, seguimos investigando.<\/p>\n

Clase del historial de versiones de la plantilla AD CS<\/h2>\n

Durante su inmersi\u00f3n en Windows Server 2000, AD CS incluy\u00f3 varias plantillas predeterminadas para tareas de uso popular, incluida la Servidor web<\/em><\/strong><\/span> plantilla entre otros. Las plantillas integradas eran ejemplos para fines de certificados de uso popular, incluidos Autenticaci\u00f3n del servidor<\/em><\/strong><\/span>. M\u00e1s delante, en Windows Server 2003, se introdujeron las plantillas de la interpretaci\u00f3n 2, que dieron a las plantillas de certificado m\u00e1s funciones, incluida la inscripci\u00f3n cibern\u00e9tica.<\/p>\n

“Un administrador puede configurar plantillas de la interpretaci\u00f3n 2 para controlar la forma en que se solicitan, emiten y utilizan los certificados”. -Microsoft<\/p>\n

Las plantillas de la interpretaci\u00f3n 1 son plantillas muy b\u00e1sicas y no se pueden personalizar. Los \u00fanicos cambios de configuraci\u00f3n que se permiten son los derechos de inscripci\u00f3n. Si necesita personalizar una plantilla de la interpretaci\u00f3n 1, debe clonar la plantilla. Esto crea una copia de la plantilla, pero asimismo convierte autom\u00e1ticamente la plantilla resultante a la interpretaci\u00f3n 2 (esto es importante para m\u00e1s delante).A <\/strong><\/p>\n

<\/div>\n

EKU y pol\u00edticas de aplicaci\u00f3n<\/h2>\n

He aur\u00edcula conversar de una EKU anta\u00f1o, pero \u00bfqu\u00e9 es una Pol\u00edtica de aplicaci\u00f3n? Incluso la documentaci\u00f3n de Microsoft confunde los dos, pero como descubr\u00ed, son atributos muy diferentes. EKU significa Uso extendido de claves tal como se define en IETF RFC5280. Sin secuestro, Microsoft utiliza los t\u00e9rminos Uso extendido de claves y Uso mejorado de claves indistintamente en la documentaci\u00f3n. Interiormente de esta categor\u00eda, Microsoft tiene una extensi\u00f3n propietaria llamamiento Pol\u00edticas de aplicaci\u00f3n bajo el OID 1.3.6.1.4.1.311. Similar al EKU x509, define el prop\u00f3sito del certificado e incluso utiliza los mismos n\u00fameros OID que los EKU x509, por ejemplo, Autenticaci\u00f3n del cliente (1.3.6.1.5.5.7.3.2). Resulta que si hay un conflicto entre una Pol\u00edtica de aplicaci\u00f3n y una EKU, entonces Microsoft prefiere la Pol\u00edtica de aplicaci\u00f3n propietaria.<\/p>\n

“La pol\u00edtica de aplicaci\u00f3n es espec\u00edfica de Microsoft y se negociaci\u00f3n de forma muy similar al uso extendido de claves. Si un certificado tiene una extensi\u00f3n que contiene una pol\u00edtica de aplicaci\u00f3n y asimismo tiene una extensi\u00f3n EKU, la extensi\u00f3n EKU se ignora”. -Microsoft<\/p>\n

Inicialmente, pensamos que el problema se limitaba a schannel, pero al conversar con @_dru1d en conversaciones privadas, nos dimos cuenta de que el problema no se limitaba a schannel y descubri\u00f3 que se pod\u00edan a\u00f1adir otros OID m\u00e1s peligrosos, incluido el Agente de solicitud de certificados (1.3 .6.1.4.1.311.20.2.1).<\/p>\n

En empleo de ser como ESC1, ESC15 en ingenuidad se parec\u00eda m\u00e1s a ESC2, que es mucho m\u00e1s peligroso. No s\u00f3lo puede cambiar el asunto del certificado, sino que asimismo puede cambiar el prop\u00f3sito del certificado.<\/p>\n

<\/div>\n

La diferencia entre ESC2 y ESC15 era que ESC15 estaba oculto a plena clarividencia. Todos los ataques ESC son “configuraciones err\u00f3neas de las plantillas” que permiten el atropello. Pero esto no es una mala configuraci\u00f3n; este es un error que nos permite a\u00f1adir las Pol\u00edticas de la Aplicaci\u00f3n. Es por eso que decidimos darle un nombre a la vulnerabilidad, KUWU<\/em><\/strong><\/span>.<\/p>\n

De forma predeterminada, todas las plantillas de la interpretaci\u00f3n 1 son vulnerables; sin secuestro, para servirse la vulnerabilidad, el atacante debe tener derechos de inscripci\u00f3n. Cuando se envi\u00f3 originalmente el caso MSRC, pensamos que la vulnerabilidad estaba en el interior de LDAP\/schannel y que era solo un ataque de subida de privilegios. Actualizamos MSRC con nuestros hallazgos en tiempo existente a medida que los descubrimos.<\/p>\n

A posteriori de cuatro (4) semanas de pr\u00f3rroga por una modernizaci\u00f3n de Microsoft, TrustedSec ya hab\u00eda confirmado el problema en 10 de los 15 clientes analizados. Recib\u00ed un correo electr\u00f3nico de MSRC que indicaba que la configuraci\u00f3n predeterminada no era d\u00e9bil porque modifiqu\u00e9 los permisos de inscripci\u00f3n. Del porcentaje de nuestros clientes afectados, no estamos de acuerdo con la valoraci\u00f3n.<\/p>\n

\n
Figura 10: correo electr\u00f3nico de MSRC<\/figcaption><\/figure>\n<\/div>\n

Con la ayuda del asesor senior de TrustedSec, Lou Scicchitano (@LouScicchitano), el asesor principal Scot Berner (@slobtresix0) y el l\u00edder de destreza de investigaci\u00f3n, Christopher Paschen (@freefirex2).),<\/span> Descubrimos casos de uso adicionales que utilizan ESC15 como arsenal, incluida la firma de c\u00f3digo. Adicionalmente, se actualizaron los archivos de objetos Beacon (BOF) para favorecer el ataque en marcos C2 extensibles mediante la modernizaci\u00f3n. solicitud_adcs<\/em><\/strong><\/span> y agregando adcs_request_on_behalf<\/em><\/strong><\/span>.<\/p>\n

<\/div>\n
\n
Figura 11 – Ataque ESC3<\/figcaption><\/figure>\n<\/div>\n
\n
Figura 12: Firma de c\u00f3digo<\/figcaption><\/figure>\n<\/div>\n

\u00bfQu\u00e9 se puede hacer?<\/h2>\n

Microsoft todav\u00eda est\u00e1 trabajando en su respuesta oficial, pero lo que TrustedSec ha determinado es que s\u00f3lo las plantillas de la interpretaci\u00f3n 1 que permiten al solicitante proporcionar el tema parecen ser vulnerables a ESC15. Si se clona una plantilla de la interpretaci\u00f3n 1, se actualiza autom\u00e1ticamente a la interpretaci\u00f3n 2 y la plantilla ya no es d\u00e9bil. Se ha creado un script de PowerShell para automatizar la desactivaci\u00f3n de las plantillas vulnerables conocidas. Ayer de deshabilitar cualquier plantilla de certificado, verifique que no se emitan certificados a partir de esas plantillas.<\/p>\n

agradecimiento espec\u00edfico<\/h2>\n

Un agradecimiento espec\u00edfico al Director de Inteligencia de Seguridad de TrustedSec, Carlos P\u00e9rez @carlos_Perez,<\/span> por proporcionar el script de PowerShell para automatizar las mitigaciones.<\/p>\n

Un agradecimiento espec\u00edfico a @freefirex2 por la creaci\u00f3n de un nuevo BOF para habilitar el ataque ESC15 e implementar el ataque del Agente de solicitud de certificado.<\/p>\n

Un agradecimiento espec\u00edfico a @_dru1d de CDW que cre\u00f3 el primero Certificaci\u00f3n<\/em><\/strong><\/span> fork y posterior solicitud de ascendencia.<\/p>\n

Capital adicionales<\/h3>\n

https:\/\/learn.microsoft.com\/en-us\/openspecs\/windows_protocols\/ms-crtd\/44012f2d-5ef3-440d-a61b-b30d3d978130<\/p>\n

https:\/\/learn.microsoft.com\/en-us\/previous-versions\/windows\/it-pro\/windows-server-2012-r2-and-2012\/jj129696(v=ws.11)<\/p>\n

https:\/\/learn.microsoft.com\/en-us\/previous-versions\/windows\/it-pro\/windows-server-2008-R2-and-2008\/cc754305(v=ws.10)<\/p>\n

https:\/\/learn.microsoft.com\/en-us\/previous-versions\/windows\/it-pro\/windows-server-2008-R2-and-2008\/cc731792(v=ws.10)?redirectedfrom=MSDN<\/p>\n<\/div>\n


\n
Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"

TL;DR – Utilizando plantillas de certificado integradas predeterminadas interpretaci\u00f3n 1, un atacante puede crear una CSR para incluir pol\u00edticas de aplicaci\u00f3n que sean preferidas a los atributos de uso de esencia extendido configurados especificados en la plantilla. El \u00fanico requisito son los derechos de inscripci\u00f3n y se puede utilizar para producir autenticaci\u00f3n de cliente, agente […]<\/p>\n","protected":false},"author":1,"featured_media":4860,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[76],"tags":[2202,2204,2203,1119],"class_list":["post-4858","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ingenieria-social","tag-ekuwu","tag-esc","tag-otro","tag-solo"],"_links":{"self":[{"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/posts\/4858"}],"collection":[{"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/comments?post=4858"}],"version-history":[{"count":1,"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/posts\/4858\/revisions"}],"predecessor-version":[{"id":4859,"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/posts\/4858\/revisions\/4859"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/media\/4860"}],"wp:attachment":[{"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/media?parent=4858"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/categories?post=4858"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/estafalert.com\/wp-json\/wp\/v2\/tags?post=4858"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}