Una entrada que debió de estar disponible por el mes de Mayo y para varia demoramos un mes y algo, ya que estuve presente en HackOrGame con una charla sobre el proceso de evaluación de una infraestructura Windows, y como el Active Directory puede darnos información para realizar ataques más elaborados, tengo pensado ir trayendo bastantes entradas aquí para el blog relacionado al tema.
Como siempre pedirles si tienen alguna duda o algun tema en específico que desearian que se aborde pueden hacerlo en los comentarios o en el grupo de Telegram HackySec.
Requisitos para el laboratorio
El laboratorio contará con 3 máquinas inicialmente, ten en cuenta que requieres memoria RAM para que funcione correctamente, en mi caso cuento apenas con 8 GB de memoria RAM da lo justo para un Server y un Kali.
- Windows Server: Puedes usar la ISO de 180 días que te brinda Microsoft, durante las pruebas que vendran usaremos 2019.
- Windows 10 o 7: Te recomendaria una de las maquinas ya elaboradas de Microsoft o realices tu mismo la instalación.
- Maquina atacante, la distribución que gustes o Sistema Operativo.
Respecto al ultimo punto, tengo pensado ir viendo los ataques tanto en Windows como en Linux por lo tanto una instalación de cada escenario no vendría mal.
Si ven en las capturas que esta sniferl4bs. com, es debido a que esta entrada debia de salir con dos meses de anticipación y se tuvo dos entornos diferentes para las capturas de pantalla.
Configurando el AD Vulnerable
Active Directory Domain Services
Para que funcione adecuadamente requerimos que este Active Directory Domain Services habilitado,
Lo primero que necesitamos hacer es, verificar si en nuestro AD se encuentra instalado con los servicios necesarios para empezar con la configuración, ejecutamos
|
|
Como es totalmente nueve nuestro ambiente procederemos a instalar con el comando.
|
|
El resultado final de la instalación sera el siguiente:
Instalación y descarga del Script Vuln-AD
Inicialmente para las pruebas que lleguemos a realizar, de esta serie de entradas que vendrán solo necesitaremos el windows server que será nuestro Controlador de dominio, en esta entrada veremos como configurar a traves de un script algunas vulnerabilidades las cuales son.
- Abusing ACLs/ACEs
- Kerberoasting
- AS-REP Roasting
- Abuse DnsAdmins
- Password in AD User comment
- Password Spraying
- DCSync
- Silver Ticket
- Golden Ticket
- Pass-the-Hash
- Pass-the-Ticket
- SMB Signing Disabled
Iremos viendo con el transcurso de las próximas entradas como explotarlas, previamente necesitamos aprender desde 0, empezando la serie de Active Directory 101.
Cualquier parecido con la realidad pueden ver los primeros registros en el repositorio.
El script a utilizar es del repositorio de WazeHell, el cual tiene realizado el proceso para configurar y tener listo nuestro entorno pero antes debemos de hacer un par de configuración previas las cuales estan descritas en el repositorio.
|
|
-DomainName “dino. corp”
-DomainNetbiosName “dino”
Descargamos el script en el equipo, y llamamos al mismo como Invoke-VulnAD, previamente llamandolo con invoke-module vulnad.ps1
o como se muestra a continuación.
IEX ((new-object net. webclient). downloadstring ("https://raw.githubusercontent.com/wazehell/vulnerable-AD/master/vulnad.ps1"));
Invoke-VulnAD -UsersLimit 100 -DomainName "dino.corp"
En este caso estamos indicando que nos cree un total de 100 usuarios como limite.
Como veran en la salida del script tenemos los grupos que son creados, también los ACL mal configurados, y las cuentas para hacer Kerberoasting.
Adicionalmente se tiene algunas cuentas privilegiadas con fallas de seguridad que iremos explotando en próximas entradas.
En unos 10 minutos (como máximo) tenemos nuestro entorno listo para trabajar y hacer pruebas inicialmente, por ejemplo con esta configuración se realizó la prueba de concepto sobre el exploit PrintNigthmare, por lo tanto si deseas probar en un laboratorio local
Estuve revisando el entorno creado y por lo visto los SPN no son creados correctamente, o algunos de los mismos, durante este proceso de ir armando la infraestructura ire modificando este script como base tratando de que todo el proceso sea realizado de manera automática, no sea necesario la intervención la idea inicialmente será ir actualizando esta entrada con los comandos a ejecutar para la configuración y posteriormente ir actualizando el script original, e incluso quizas sea un error entre el teclado y la silla y no este haciendo correctamente la configuración del entorno.
Regards,
Snifer