Relevant

En esta maquina nos enfrentaremos a un servidor IIS, servicio de smb del cual tendremos que explotar. El servicio smb, en el cual se tiene un directorio el cual es compartido a la red, pero este tiene permisos de escritura el cual usaremos para obtener una shell en esta. Una vez realizado la intrusión encontraremos que el permiso SeImpersonatePrivilege nos permitirá escalar privilegios hasta el usuario administrador.

20240223231851.png

Enumeración

Iniciaremos enumerando los puertos abiertos de la maquina victima, este lo haremos con la herramienta nmap

Veamos a detalle cada parametro:

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

  • --open: esta opción indica a nmap que muestre solo los puertos que están abiertos. Esto reduce el ruido en la salida al 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 considerable 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 así 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.

  • 10.10.126.60: la dirección IP del objetivo que se está escaneando.

  • -oG allportSScan: esta opción 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 enumerar y saber que puertos están abiertas procederemos a enumerar los servicios y versiones que se ejecutan en cada puerto para explotar cada uno de ellos.

Los parámetros que usamos de nmap fueron :

  • -p80,135,139,445,3389,49663,49667,49670: esta opción especifica los puertos que se escanearán. En este caso, se están escaneando los puertos 80, 135, 139, 445, 3389 y los puertos de rango 49663 a 49670.

  • -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 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.

  • -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 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.

Enumeración de smb

Luego de enumerar los puertos, procederemos a enumerar el servicio smb, haciendo uso de smbmap

20240223233217.png

Podemos ver que el directorio nt4wrksv el cual se tiene acceso a leer y escribir. Ahora con la herramienta de smbcleint ingresaremos con el fin de leer los archivos

20240223233713.png

En el directorio nt4wrksv en el cual tenemos permisos de lectura, encontraremos un archivo passwords.txt en el cual encontraremos lo siguiente:

20240223234022.png

Haciendo uso de base64 podremos dar lectura al texto decodificado.

Teniendo las credenciales intentaremos ingresar con psexec

20240224002613.png

Pero no podemos debido a que el usuario no tiene suficientes permisos

20240224002628.png

Enumerando el sitio web, encontremos con el siguiente directorio en el puerto 49663

20240224010546.png

Anteriormente se había visto el archivo password.txt enumerando el servicio smb en un directorio que teníamos permisos de escritura.

Explotación

En este caso tenemos un servicio web que esta gestionado por un IIS por lo que debemos de subir un fichero en .aspx, para ello tenemos dos casos.

  • Caso 1

En este caso haremos uso de un script el cual haremos uso para obtener una shell

Ahora solo cambiaremos la ip y el puerto.

20240224004552.png

Ingresaremos al directorio con smbclient y agregaremos nuestro archivo malicioso

20240224010416.png
  • Caso 2

Para el segundo caso haremos uso de msfvenom con el cual generaremos nuestro fichero malicioso para luego agregar nuestro archivo el directorio compartido de smb

20240224011012.png

Escalada de privilegios

Luego de hacer la petición al sitio web en el directorio donde se encontraba passwords.txt y cambiemos por nuestro archivo podremos obtener una shell. Luego enumerar con lo siguiente whoami /priv podremos encontrar lo siguiente.

20240224011240.png

El permiso que encontramos es SeImpersonatePrivilege el cual podremos usar para escalar privilegios

SeImpersonatePrivilege

Podemos hacer uso de los siguientes post y poder documentarnos con :

Haremos uso de PrintSpoofer64.exe para poder escalar privilegios, pero antes debemos de subir el archivo

20240224013237.png

Luego podremos encontrar nuestro archivo en la dirección c:\inetpub\wwwroot\nt4wrksv. Ahora podremos copiarnos a un directorio que tenemos privilegios para ejecutar.

Ejecutamos :

Y podremos escalar privilegios

20240224013136.png

Last updated