🟢Dawn

Write-up de la máquina Dawn de Proving Grounds #writeup #walkthrough

Enumeración

Servicios abiertos

Comenzamos realizando un escaneo rápido de los servicios que tiene abiertos está máquina.

nmap -p- --open --min-rate 5000 -Pn -n -vvv 192.168.139.11

4 puertos abiertos. Vamos a realizar el escaneo profundo de estos servicios.

nmap -p80,139,445,3306 -sVC -vvv 192.168.139.11

Servicios abiertos:

  • Puerto 80 -> HTTP -> Apache httpd 2.4.38

  • Puerto 139 -> SMB -> smbd 3.X - 4.X

  • Puerto 445 -> SMB -> smbd 4.9.5

  • Puerto 3306 -> MySQL -> MySQL 5.5.5-10.3.15-MariaDB

Enumeración Web

Comenzamos viendo el contenido del puerto 80 en el navegador Web.

No contiene información interesante. Si abrimos el código fuente del sitio Web, támpoco hay información relevante.

Seguimos con la enumeración de directorios.

dirsearch -u "http://192.168.139.11/" -i200,301

Tenemos un directorio /logs.

Vemos diversos archivos logs. De los 4 archivos solo tenemos permisos para ver el archivo "management.log". Abrimos el archivo.

Tenemos un archivo de logs. Vemos algunas ejecuciones de archivos que pueden ser interesantes pero de momento, nada concluyente.

SMB (puerto 139 y 445)

Vamos a comenzar la enumeración de SMB con enum4linux.

enum4linux 192.168.139.11

Tenemos un posible directorio al que podemos acceder para ver su contenido.

Y el nombre de dos usuarios de sistema.

Vamos a ver el contenido del directorio /ITDEPT.

smbmap -H 192.168.139.11

En el directorio /ITDEPT, podemos hacer tareas de lectura y escritura.

smbclient \\\\192.168.139.11\\ITDEPT

El directorio no contiene ningún archivo ni directorio. Pero podemos aprovechar que podemos escribir en el directorio para cargar archivos maliciosos en el sistema.

Volvemos al archivo log que descargamos del sitio Web y vemos dos archivos que deberían estar ejecutándose en el directorio /ITDEPT pero que como vimos, no se encuentran en este directorio.

Explotación

¿Y si pudiésemos crear estos archivos para cargar una Shell maliciosa en el sistema? Vamos a ello.

Cargamos los dos archivos creados en el equipo objetivo a través utilizando los permisos de escritura que disponemos. Al mismo tiempo, colocamos dos oyentes nc en los puertos 1337 y 4444.

Transcurrido 1 minuto, tendremos dos Shells reversas.

Buscamos la flag de usuario de bajos privilegios.

Elevación de privilegios

Elevación de privilegios desde www-data

Comenzamos realizando las enumeraciones básicas para la búsqueda de puntos que nos permitan elevar privilegios.

Comenzamos comprobando permisos de sudo en la terminal de www-data.

Nos permite ejecutar sudo sin contraseña. Vamos a intentar explotar esto.

Ya tendremos un usuario con privilegios elevados. Buscamos la flag de usuario con privilegios elevados.

Elevación de privilegios desde el usuario "dawn"

Pero...

Necesitamos una password.

Vamos a continuar enumerando los binarios SUID.

find / -perm -u=s -type f 2>/dev/null

El binario zsh puede ser interesante. Vamos a ver si es útil para elevar privilegios. Consultamos GTFOBins.

Solo quedaría volver a buscar la flag proof.txt

Y ya estaría acabado el CTF Dawn de la plataforma Proving Grounds.

Last updated