VulnneTroasted

En esta sala nos enfrentaremos a una maquina Windows en el cual tenemos que explotar un directorio activo. Enumerando encontraremos un directorio compartido por smb en el enumerando encontraremos algunos archivos con nombres de la cual generaremos una lista de usuario para luego realizar un ataque asreproast attack el cual nos dara un hash el cual podremos crackear y luego seguir enumerando los directorios de smb en el cual encontraremos un archivo con credenciales. Las credenciales que encontramos podremos ingresar con la herramienta evil-winrm y poder dumpear la sam

20240229193953.png

Enumeración

Iniciaremos con la enumeración de los puertos abiertos de la maquina victima

  • -p-: esta opción indica a Nmap que escanee todos los puertos, desde el puerto 1 hasta el puerto 65535. El guion (-) especifica el rango de puertos completo.

  • --open: esta opción le indica a Nmap que muestre solo los puertos que están abiertos. Esto filtra la salida para mostrar solo los puertos accesibles.

  • --min-rate 5000: esta opción establece la velocidad mínima de envío de paquetes a 5000 paquetes por segundo. Esto puede acelerar el escaneo de puertos al enviar paquetes más rápidamente.

  • -vvv: esta opción activa el modo de verbosidad máximo, lo que significa que Nmap mostrará una cantidad significativa de información sobre el progreso del escaneo y los detalles de los puertos y hosts descubiertos.

  • -Pn: esta opción le indica a Nmap que no realice el descubrimiento de hosts, lo que significa que no enviará pings para determinar si los hosts están activos. Esto es útil si el objetivo no responde a los pings, pero aún queremos escanear sus puertos.

  • -n: esta opción le indica a Nmap que no realice la resolución de DNS inversa para las direcciones IP encontradas. Esto ayuda a acelerar el escaneo evitando la búsqueda de nombres de host.

  • -oG allportsScan: esta opción le indica a Nmap que genere la salida en formato "grepable" y guarde los resultados en un archivo llamado "allportsScan". Este formato es adecuado para el procesamiento posterior de los resultados del escaneo.

Luego de tener la lista de los puertos abiertos debemos de enumerar los servicios que se ejecutan en los puertos.

  • -p53,88,135,139,389,445,464,593,636,3268,3269,5985,9389,49665,49668,49669,49670,49683,49696: esta opción especifica los puertos que se escanearán. En este caso, se están escaneando los puertos 53, 88, 135, 139, 389, 445, 464, 593, 636, 3268, 3269, 5985, 9389, 49665, 49668, 49669, 49670, 49683 y 49696.

  • -sC: esta opción activa el escaneo de scripts de Nmap, lo que implica ejecutar scripts prediseñados para detectar vulnerabilidades y recopilar información adicional sobre los servicios que se están ejecutando en los puertos escaneados.

  • -sV: esta opción activa la detección de versión, lo que significa que Nmap intentará determinar las versiones de los servicios que se están ejecutando en los puertos escaneados.

  • -PN: esta opción le indica a Nmap que realice el escaneo incluso si no puede detectar si el host está activo mediante ping. Es decir, realizará el escaneo incluso si el host no responde a los pings.

  • -n: esta opción le indica a Nmap que no realice la resolución de DNS inversa para las direcciones IP encontradas. Esto ayuda a acelerar el escaneo evitando la búsqueda de nombres de host.

  • -vvv: esta opción activa el modo de verbosidad máximo, lo que significa que Nmap mostrará una cantidad considerable de información sobre el progreso del escaneo y los detalles de los puertos y servicios descubiertos.

  • -oN servicesScan: esta opción le indica a Nmap que genere la salida en formato normal y guarde los resultados en un archivo llamado "servicesScan". Este formato es adecuado para la revisión manual de los resultados del escaneo.

Luego de enumerar los puertos encontramos que el servicio smb se ejecuta, por lo cuale procederemos a enumerar haciendo uso del un usuario guest.

  • smbmap: el comando para invocar la herramienta smbmap.

  • -H [IP]: esta opción especifica la dirección IP del host que se va a escanear para identificar los recursos compartidos a través del protocolo SMB.

  • -u 'guest': esta opción especifica el nombre de usuario que se utilizará para autenticarse en el servidor SMB. En este caso, se está utilizando el usuario 'guest', que es un usuario invitado comúnmente utilizado para acceder a recursos compartidos sin necesidad de proporcionar una contraseña.

20240229195642.png

Podemos ver tenemos acceso a dos carpetas en estas podremos encontrar archivos que son:

20240229200208.png

En estos archivos encontraremos nombres de usuarios del cual haremos uso para generar usuarios.

20240229202240.png

Luego de generar los usuarios con el script en python scriptarrow-up-right

20240229202219.png

Explotación

Con los usuarios podremos realizar un asreproast attackarrow-up-right en el cual podremos obtener un hash que se crackeable.

Ejecutando podremos obtener lo siguiente:

20240229204337.png

Luego de obtenerel hash podremos crackearlo con john the Ripper

Crackeando podremos obtener la contraseña que es :

Haciendo uso de las credenciales seguiremos a enumerando los si tenemos permisos para conectarnos a la maquina y obtener una shell, para esto haremos uso de crackmapexec

20240229204544.png
20240229204604.png

Escalada de privilegios

Usuario t-skid

Enumerando el servicio de smb y winrm, luego de esto podremos ver que no podemos ingresar pero las credenciales son validas. Ahora enumeramos los directorios compartidos y encontraremos uno en la que tenemos permisos de lectura

20240229204628.png

En este directorio encontramos un directorio que es scripts que contiene un archivo credenciales

20240229210204.png

El archivo el que contiene credenciales es ResetPassword.vbs

20240229211315.png

Usuario: a-whitehat

Teniendo estas credenciales podremos seguir enumerando:

Haciendo uso de evil-winrmarrow-up-right podremos conectarnos a la maquina victima.

20240229211915.png
20240229212311.png

Procederemos a enumerar el sistema y nos encontraremos con lo siguiente:

20240229214223.png

Luego de enumerar con whoami /priv y ver que tenemos muchos permisos el cual no es comun enumeraremos el servicio smb

Nos encontraremos con que el usuario del cual contamos las credenciales tiene permisos de administrador.

20240301090153.png

Otra manera de enumerar o observar esto es con net user a-whitehat

20240301091038.png

Secretsdump

Como el usuario a-whitehat pertenece al grupo Admins podremos dumpear la sam de todo el dc con la herramienta impacket-secretsdump.

20240301090506.png

Usuario : Administrador

Luego de obtener los hash, podremos hacer passtheHash y conectarnos a la maquina victima como el usuario administrador.

20240301091100.png

Last updated