{"id":47,"date":"2022-05-24T22:36:55","date_gmt":"2022-05-24T22:36:55","guid":{"rendered":"https:\/\/jsec-rt.com\/?p=47"},"modified":"2024-07-08T22:52:20","modified_gmt":"2024-07-09T02:52:20","slug":"rt-escenario-basico-de-active-directory-2","status":"publish","type":"post","link":"https:\/\/jsec-rt.com\/index.php\/2022\/05\/24\/rt-escenario-basico-de-active-directory-2\/","title":{"rendered":"RT &#8211; Escenario basico de Active Directory"},"content":{"rendered":"\n<p>Continuaci\u00f3n de la entrada &#8220;Laboratorios &#8211; Creando nuestro primer Active Directory de pruebas&#8221;, donde configuraremos un escenario b\u00e1sico para entender como podemos escalar privilegios en un Active Directory utilizando configuraciones inseguras.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"715\" height=\"291\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/ad-pth-path.png\" alt=\"\" class=\"wp-image-48\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/ad-pth-path.png 715w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/ad-pth-path-300x122.png 300w\" sizes=\"auto, (max-width: 715px) 100vw, 715px\" \/><figcaption>Vector de ataque resumido<\/figcaption><\/figure>\n\n\n\n<p><strong>REQUERIMIENTOS:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Dos nuevas cuentas de dominio (cosme.fulanito y hank.scorpio en mi caso).<\/li><li>Un nuevo administrador local en dos equipos (ATENCION01 y TECNOLOGIA01).<\/li><li>Instalaci\u00f3n funcional de Kali Linux en el mismo segmento de red del dominio.<\/li><\/ul>\n\n\n\n<p>Para configurar el siguiente escenario en el Active Directory que montamos, primeramente debemos crear cuentas de usuario local en los equipos &#8220;ATENCION01&#8221; y &#8220;TECNOLOGIA01&#8221;.<\/p>\n\n\n\n<p>Accediendo como el usuario administrador de dominio.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"632\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-1-1024x632.png\" alt=\"\" class=\"wp-image-49\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-1-1024x632.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-1-300x185.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-1-768x474.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-1.png 1048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Creando al usuario local &#8220;soporte&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"689\" height=\"484\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-2.png\" alt=\"\" class=\"wp-image-50\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-2.png 689w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-2-300x211.png 300w\" sizes=\"auto, (max-width: 689px) 100vw, 689px\" \/><\/figure>\n\n\n\n<p>Agregar al usuario &#8220;cosme.fulanito&#8221; al grupo de administradores locales, se realiza \u00fanicamente a este equipo.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"753\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-7-1024x753.png\" alt=\"\" class=\"wp-image-55\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-7-1024x753.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-7-300x221.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-7-768x565.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-7.png 1126w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Crear el usuario local &#8220;soporte&#8221; en el equipo &#8220;TECNOLOGIA01&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"687\" height=\"579\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-3.png\" alt=\"\" class=\"wp-image-51\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-3.png 687w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-3-300x253.png 300w\" sizes=\"auto, (max-width: 687px) 100vw, 687px\" \/><\/figure>\n\n\n\n<p><strong>IMPORTANTE: <\/strong>Utilizar la misma contrase\u00f1a para el usuario &#8220;soporte&#8221; (o el nombre que decidan darle), es una pr\u00e1ctica de seguridad insegura que explotaremos en este laboratorio.<\/p>\n\n\n\n<p>De la misma manera, agregamos a un usuario de dominio al grupo de administradores locales en &#8220;TECNOLOGIA01&#8221;, en mi caso, tengo al usuario &#8220;hank.scorpio&#8221; que fue creado para esta entrada.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"862\" height=\"663\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-4.png\" alt=\"\" class=\"wp-image-52\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-4.png 862w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-4-300x231.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-4-768x591.png 768w\" sizes=\"auto, (max-width: 862px) 100vw, 862px\" \/><\/figure>\n\n\n\n<p>Agregando al usuario &#8220;hank.scorpio&#8221; al grupo de administradores en el equipo &#8220;BD01&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"681\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-5-1024x681.png\" alt=\"\" class=\"wp-image-53\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-5-1024x681.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-5-300x200.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-5-768x511.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-5-700x465.png 700w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-5.png 1141w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Finalmente, asegurarse de iniciar sesi\u00f3n con el usuario &#8220;Administrator&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"745\" height=\"643\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-6.png\" alt=\"\" class=\"wp-image-54\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-6.png 745w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-6-300x259.png 300w\" sizes=\"auto, (max-width: 745px) 100vw, 745px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">INICIO DE LA EXPLOTACI\u00d3N<\/h2>\n\n\n\n<p>Asumimos que, de alguna manera, se obtuvieron las credenciales del usuario &#8220;cosme.fulanito&#8221; y tenemos acceso a la red interna con nuestro propio equipo de pentesting.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"933\" height=\"555\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-8.png\" alt=\"\" class=\"wp-image-56\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-8.png 933w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-8-300x178.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-8-768x457.png 768w\" sizes=\"auto, (max-width: 933px) 100vw, 933px\" \/><\/figure>\n\n\n\n<p>Como primer paso, con acceso al equipo Windows, enumeramos los usuarios locales.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"637\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-9-1024x637.png\" alt=\"\" class=\"wp-image-57\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-9-1024x637.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-9-300x187.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-9-768x477.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-9.png 1126w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Identificamos ciertos usuarios que no vienen en la instalaci\u00f3n por defecto, como ser &#8220;sshd&#8221;, &#8220;IEUser&#8221;, &#8220;sshd_server&#8221; y &#8220;soporte&#8221;.<\/p>\n\n\n\n<p>Tambien observamos que nuestro usuario, &#8220;cosme.fulanito&#8221;, es miembro del grupo local &#8220;Administrators&#8221;, por lo que podemos utilizarlo para buscar credenciales en el equipo.<\/p>\n\n\n\n<p>Pero, como primer paso, al tratarse de un laboratorio de Active Directory, el primer paso recomendado es la enumeraci\u00f3n del dominio, para identificar usuarios existentes, equipos registrados, la pol\u00edtica de contrase\u00f1as, relaciones de confianza, etc.<\/p>\n\n\n\n<p>Obtenemos el nombre del dominio actual y su posible direcci\u00f3n IP.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"690\" height=\"622\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-12.png\" alt=\"\" class=\"wp-image-60\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-12.png 690w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-12-300x270.png 300w\" sizes=\"auto, (max-width: 690px) 100vw, 690px\" \/><\/figure>\n\n\n\n<p>En el raro caso de que tengamos un servidor DNS distinto al controlador de dominio (Nunca lo vi) o exista m\u00e1s de un controlador de dominio, podemos utilizar el comando &#8220;nslookup&#8221; para obtener una lista de controladores de dominio.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"597\" height=\"111\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-13.png\" alt=\"\" class=\"wp-image-61\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-13.png 597w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-13-300x56.png 300w\" sizes=\"auto, (max-width: 597px) 100vw, 597px\" \/><\/figure>\n\n\n\n<p>Con esta informaci\u00f3n, ya podemos empezar a extraer informaci\u00f3n del controlador de dominio de manera autenticada.<\/p>\n\n\n\n<p>En nuestro host con Kali, ejecutaremos la herramienta &#8220;ldapdomaindump&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"580\" height=\"312\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-11.png\" alt=\"\" class=\"wp-image-59\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-11.png 580w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-11-300x161.png 300w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/figure>\n\n\n\n<p>Los par\u00e1metros utilizados son:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>-u &#8216;Dominio\\Usuario&#8217; (Es necesario utilizar el simbolo &#8220;\\&#8221;, ya que sin el mismo la herramienta falla)<\/li><li>-p &#8216;Password&#8217;<\/li><li>OBJETIVO: IP del controlador de dominio con el servicio LDAP expuesto<\/li><\/ul>\n\n\n\n<p>Obtenemos una serie de ficheros en distintos formatos que tienen la informaci\u00f3n que nos interesa.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"511\" height=\"295\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-14.png\" alt=\"\" class=\"wp-image-62\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-14.png 511w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-14-300x173.png 300w\" sizes=\"auto, (max-width: 511px) 100vw, 511px\" \/><\/figure>\n\n\n\n<p>Si abrimos uno de los ficheros, por ejemplo, &#8220;domain_users.html&#8221; en un navegador web, tenemos desplegada la siguiente informaci\u00f3n.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"334\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-15-1024x334.png\" alt=\"\" class=\"wp-image-63\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-15-1024x334.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-15-300x98.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-15-768x250.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-15-1536x501.png 1536w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-15.png 1674w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>De esta manera, podemos obtener una lista completa de todos los usuarios del dominio objetivo, para ataques de fuerza bruta o password spraying.<\/p>\n\n\n\n<p>De la misma forma, obtenemos la lista de todos los equipos registrados en el dominio.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"368\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-16-1024x368.png\" alt=\"\" class=\"wp-image-64\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-16-1024x368.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-16-300x108.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-16-768x276.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-16.png 1485w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Nos enfocaremos en el movimiento lateral que podemos realizar con la configuraci\u00f3n que realizamos, por lo que el fichero de computadoras registradas en el dominio nos servira m\u00e1s adelante.<\/p>\n\n\n\n<p>Como ya sabemos, el usuario que tenemos es administrador local en el equipo &#8220;ATENCION01&#8221;, por lo que utilizaremos la suite de Impacket para obtener hashes de usuarios locales e informaci\u00f3n almacenada en cache del dominio.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"999\" height=\"607\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-18.png\" alt=\"\" class=\"wp-image-66\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-18.png 999w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-18-300x182.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-18-768x467.png 768w\" sizes=\"auto, (max-width: 999px) 100vw, 999px\" \/><\/figure>\n\n\n\n<p>FORMATO: impacket-secretsdump Dominio\/usuario:password@equipo.dominio<\/p>\n\n\n\n<p>De esta manera, obtenemos los hashes NTLM de dos usuarios locales interesantes, Administrator y soporte.<\/p>\n\n\n\n<p>Ahora, podemos tomar dos caminos.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Utilizar al usuario de dominio para intentar autenticarse sobre el resto de equipos, para ver si es administrador en algun equipo adicional.<\/li><li>Intentar un ataque Pass the hash con los usuarios locales.<\/li><\/ul>\n\n\n\n<p>Para ambos escenarios, necesitamos una lista de objetivos, que la podemos obtener de manera rapida con un poco de &#8220;awk&#8221;:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"483\" height=\"220\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-19.png\" alt=\"\" class=\"wp-image-67\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-19.png 483w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-19-300x137.png 300w\" sizes=\"auto, (max-width: 483px) 100vw, 483px\" \/><\/figure>\n\n\n\n<p>COMANDO: awk -F &#8216;\\t&#8217; &#8216;{print $3}&#8217; domain_computers.grep<\/p>\n\n\n\n<p>Este comando extrae los datos almacenados en el fichero &#8220;domain_computers.grep&#8221;, obtenido a trav\u00e9s de &#8220;ldapdomaindump&#8221;,  la flag <em>-F &#8216;\\t&#8217;<\/em>  marca el delimitador, diciendole a la herramienta que la primera columna va desde el inicio de la linea de texto hasta que se encuentre con una tabulaci\u00f3n, marcada con \\t, la segunda columna va desde esa tabulaci\u00f3n hasta la siguiente. Separando el archivo de texto de esta manera, imprimiremos la columna 3, que contiene el dnsHostName de todos los equipos registrados en el dominio, otorg\u00e1ndonos una lista rapida de objetivos.<\/p>\n\n\n\n<p>Tenemos 4 objetivos identificados de manera r\u00e1pida, sobre los cuales haremos el resto de pruebas.<\/p>\n\n\n\n<p>Para validar el primer escenario planteado, donde se analiza si &#8220;cosme.fulanito&#8221; es administrador local en otros equipos, utilizaremos la herramienta &#8220;crackmapexec&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"118\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-20-1024x118.png\" alt=\"\" class=\"wp-image-68\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-20-1024x118.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-20-300x34.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-20-768x88.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-20.png 1279w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>COMANDO: crackmapexec Protocolo IP\/hostname\/fichero_con_objetivos -u usuario -p password -d dominio O &#8211;local-auth para autenticacion local.<\/p>\n\n\n\n<p>Observamos que nuestro usuario de dominio solo tiene privilegios de administraci\u00f3n en &#8220;ATENCION01&#8221;, por lo que procedemos con el segundo escenario.<\/p>\n\n\n\n<p>Primeramente intentamos utilizar al usuario &#8220;Administrator&#8221; de manera local.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"107\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-21-1024x107.png\" alt=\"\" class=\"wp-image-69\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-21-1024x107.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-21-300x31.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-21-768x80.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-21.png 1291w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Observamos que el usuario existe en dos equipos, pero la cuenta esta deshabilitada, afortunadamente aun tenemos al usuario &#8220;soporte&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"127\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-22-1024x127.png\" alt=\"\" class=\"wp-image-70\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-22-1024x127.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-22-300x37.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-22-768x95.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-22.png 1287w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>El usuario &#8220;soporte&#8221; existe igualmente en el equipo &#8220;TECNOLOGIA01&#8221; y es administrador local, presentando un caso t\u00edpico de Pass the hash.<\/p>\n\n\n\n<p>Replicamos pasos anteriores, obteniendo los hashes NTLM del equipo &#8220;TECNOLOGIA01&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1002\" height=\"607\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-23.png\" alt=\"\" class=\"wp-image-71\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-23.png 1002w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-23-300x182.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-23-768x465.png 768w\" sizes=\"auto, (max-width: 1002px) 100vw, 1002px\" \/><\/figure>\n\n\n\n<p>No observamos nada nuevo en usuarios locales, pero si vemos en la informaci\u00f3n cacheada de dominio que, en alg\u00fan momento, los usuarios &#8220;jseclow&#8221;, &#8220;admin&#8221;, &#8220;Administrator&#8221; y &#8220;hank.scorpio&#8221; se autenticaron a este equipo, por lo que es posible que las credenciales de alguno de estos se encuentren en memoria.<\/p>\n\n\n\n<p>Para dumpear el proceso LSASS y obtener hashes NTLM de memoria, podemos utilizar crackmapexec nuevamente, con uno de sus m\u00f3dulos disponibles &#8220;LSASSY&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"63\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-24-1024x63.png\" alt=\"\" class=\"wp-image-72\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-24-1024x63.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-24-300x18.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-24-768x47.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-24.png 1211w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Obtenemos un error al intentar dumpear LSASS de esta manera, usualmente esto se debe a un antivirus que bloquea la ejecucion de LSASSY.<\/p>\n\n\n\n<p>Podemos intentar deshabilitar el antivirus, asumiendo que es Windows Defender, de manera remota con una sesi\u00f3n de comandos interactiva.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"884\" height=\"155\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-26.png\" alt=\"\" class=\"wp-image-74\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-26.png 884w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-26-300x53.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-26-768x135.png 768w\" sizes=\"auto, (max-width: 884px) 100vw, 884px\" \/><\/figure>\n\n\n\n<p>COMANDO: impacket-wmiexec (*).\/usuario@equipo -hashes HASH_NTLM -shell-type powershell<\/p>\n\n\n\n<p>(*) Como estamos utilizando una cuenta de administrador local, no tenemos que establecer un dominio de autenticaci\u00f3n, por lo que colocamos unicamente &#8220;.&#8221;.<\/p>\n\n\n\n<p>Podemos deshabilitar Windows Defender utilizando Powershell, por esa razon, es necesario que nuestra shell remota sea con Powershell, lo cual se indica con el parametro &#8220;-shell-type&#8221;.<\/p>\n\n\n\n<p>El comando para deshabilitar Windows Defender de manera remota es: Set-MPPreference -disableRealTimeMonitoring $true<\/p>\n\n\n\n<p>No obtenemos un error al ejecutar el comando, por lo que reintentamos obtener los contenidos de LSASS con LSASSY.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"78\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-27-1024x78.png\" alt=\"\" class=\"wp-image-75\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-27-1024x78.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-27-300x23.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-27-768x58.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-27.png 1212w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>De esta manera obtenemos el hash NTLM del usuario &#8220;hank.scorpio&#8221;, por lo que volvemos a plantear los dos escenarios anteriores.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Verificar si el usuario de dominio tiene privilegios administrativos sobre otros equipos del dominio.<\/li><li>Utilizar los usuarios locales para validar la existencia de otros administradores locales.<\/li><\/ul>\n\n\n\n<p>Como no obtuvimos ningun nuevo hash de usuarios locales que valga la pena analizar, exploramos el primer escenario.<\/p>\n\n\n\n<p>Utilizando crackmapexec volvemos a analizar todos los equipos del dominio con el nuevo usuario obtenido.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"123\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-28-1024x123.png\" alt=\"\" class=\"wp-image-76\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-28-1024x123.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-28-300x36.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-28-768x92.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-28.png 1283w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>COMANDO: crackmapexec protocolo IP\/hostname\/lista_de_objetivos -u usuario -H hash_ntlm -d dominio_de_autenticacion<\/p>\n\n\n\n<p>En este caso, al tratarse de un usuario de dominio, utilizamos el parametro &#8220;-d&#8221;.<\/p>\n\n\n\n<p>Observamos que tenemos privilegios administrativos sobre el servidor &#8220;BD01&#8221;, por lo que replicamos pasos anteriores.<\/p>\n\n\n\n<p>Obtencion de hashes NTLM.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"480\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-29-1024x480.png\" alt=\"\" class=\"wp-image-77\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-29-1024x480.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-29-300x141.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-29-768x360.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-29.png 1051w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>No observamos nada nuevo en usuarios locales, sin embargo, vemos que la \u00fanica credencial de dominio cacheada es la del usuario &#8220;JSEC.LOCAL\/Administrator&#8221; indicando que se trata del Administrador de dominio.<\/p>\n\n\n\n<p>Como esta cacheada, es posible que se encuentre en memoria, dumpeamos LSASS nuevamente para validar el caso.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"65\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-30-1024x65.png\" alt=\"\" class=\"wp-image-78\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-30-1024x65.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-30-300x19.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-30-768x49.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-30.png 1230w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Identificamos el hash NTLM del usuario &#8220;JSEC\\Administrator&#8221;, por lo que lo validamos sobre el controlador de dominio.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"412\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-31-1024x412.png\" alt=\"\" class=\"wp-image-79\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-31-1024x412.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-31-300x121.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-31-768x309.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-31.png 1224w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>El hash es valido y podemos personificar al usuario &#8220;Administrator&#8221;, por lo que procedemos a dumpear todos los hashes del dominio, al leer el fichero &#8220;NTDS.DIT&#8221; de manera remota.<\/p>\n\n\n\n<p>COMANDO: crackmapexec procotolo IP\/Hostname\/lista_de_objetivos -u usuario -H hash_ntlm -d dominio &#8211;ntds<\/p>\n\n\n\n<p>Con este nivel de privilegios podemos asegurar nuestra persistencia de una manera no tan sigilosa, al crear un nuevo usuario de dominio y agregarlo al grupo de &#8220;Domain Admins&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"940\" height=\"250\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-32.png\" alt=\"\" class=\"wp-image-80\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-32.png 940w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-32-300x80.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-32-768x204.png 768w\" sizes=\"auto, (max-width: 940px) 100vw, 940px\" \/><\/figure>\n\n\n\n<p>Validamos nuestro acceso.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"59\" src=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-33-1024x59.png\" alt=\"\" class=\"wp-image-81\" srcset=\"https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-33-1024x59.png 1024w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-33-300x17.png 300w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-33-768x45.png 768w, https:\/\/jsec-rt.com\/wp-content\/uploads\/2022\/05\/image-33.png 1224w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Obtuvimos control total del dominio.<\/p>\n\n\n\n<p>Este escenario es b\u00e1sico, pero es muy probable que practicas similares a las observadas ac\u00e1 aun est\u00e9n presentes en organizaciones, explote vectores similares varias veces durante las evaluaciones que realice como Pentester, no de una manera tan sencilla, siempre se tienen controles adicionales que se intentan bypassear o se tiene que acceder a numerosos equipos hasta identificar nuevas credenciales que puedan servir para seguir escalando privilegios, sin embargo, la idea general persiste.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Continuaci\u00f3n de la entrada &#8220;Laboratorios &#8211; Creando nuestro primer Active Directory de pruebas&#8221;, donde configuraremos un escenario b\u00e1sico para entender como podemos escalar privilegios en un Active Directory utilizando configuraciones inseguras. REQUERIMIENTOS: Dos nuevas cuentas de dominio (cosme.fulanito y hank.scorpio en mi caso). Un nuevo administrador local en dos equipos <a href=\"https:\/\/jsec-rt.com\/index.php\/2022\/05\/24\/rt-escenario-basico-de-active-directory-2\/\" class=\"btn-link\">Continue Reading<i class=\"ion-ios-arrow-right\"><\/i><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-47","post","type-post","status-publish","format-standard","hentry","category-p-rt"],"_links":{"self":[{"href":"https:\/\/jsec-rt.com\/index.php\/wp-json\/wp\/v2\/posts\/47","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jsec-rt.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jsec-rt.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jsec-rt.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jsec-rt.com\/index.php\/wp-json\/wp\/v2\/comments?post=47"}],"version-history":[{"count":2,"href":"https:\/\/jsec-rt.com\/index.php\/wp-json\/wp\/v2\/posts\/47\/revisions"}],"predecessor-version":[{"id":402,"href":"https:\/\/jsec-rt.com\/index.php\/wp-json\/wp\/v2\/posts\/47\/revisions\/402"}],"wp:attachment":[{"href":"https:\/\/jsec-rt.com\/index.php\/wp-json\/wp\/v2\/media?parent=47"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jsec-rt.com\/index.php\/wp-json\/wp\/v2\/categories?post=47"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jsec-rt.com\/index.php\/wp-json\/wp\/v2\/tags?post=47"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}