XUT_ / MACHINES / THM

0048

Gallery

THMMACHINENONEEASY

Introduction

gallery

Intenta explotar el sistema de galería de imágenes.

Getting the Flags

Reconocimiento Inicial

Comenzamos realizando un escaneo de puertos abiertos.

gallery

Ahora analizamos dichos puertos más en profundidad.

gallery

Esta flag "not set" nos indica un potencial XSS.

Vamos a ver qué directorios hay.

gallery gallery

En el puerto 80 lo único que parece haber es un directorio llamado gallery, con varios subdirectorios a la vez. Vamos a ver en el aparente proxy (puerto 8080).

text
gallery.thm:8080
    ├── config [200 2KB]
    ├── index [200 81MB]
    ├── 404.html [200 166B]
    ├── create_account.php [200 8B]
    └── login.php [200 2KB]

Vamos a ver cómo se ven las webs.

gallery

Aquí no parece haber nada.


Profundización

Hemos encontrado un panel de login, pero de momento no tenemos usuario y parece que el create_account no está habilitado.

gallery

Si miramos en el directorio uploads del puerto 8080, podemos ver lo siguiente:

gallery


Explotación

Vamos a probar con lo primero que se nos puede venir a la mente cuando vemos un panel de login personalizado: SQLi.

gallery

Escribimos el mismo payload arriba y abajo y...

gallery

Vaya vaya, parece que hemos pasado. SI investigamos un poco, podemos ver que en el perfil hay un campo que nos permite cambiar la imagen de avatar que tenemos.

gallery

Vamos a intentar subir una reverse shell. Nos ponemos en escucha, subimos la shell y...

gallery

Ahora estabilizamos la shell.

gallery

Intentamos leer la flag.

gallery

Pero no nos deja. Habrá que realizar movimiento lateral hacia mike. Antes de todo, vamos a ver si podemos encontrar el hash de la contraseña del administrador, pues nos lo preguntan antes que user.txt. Para ello buscamos la página e intentamos leer config.php.

gallery

Estos "requires" parecen interesantes, vamos a ver qué hay ahí.

gallery

Hemos encontrado un par de cosas, vamos a ver si podemos iniciar sesión en la base de datos.

gallery

Ahora seleccionamos las tablas que nos interese mirar.

gallery


Movimiento Lateral

Teniendo ya el hash, vamos a intentar pivotar hacia mike. Si miramos en /var/backups, podemos ver un backup de mike.

gallery

Si listamos archivos vemos que está el historial de comandos. Si leemos el historial:

gallery

Vamos a iniciar sesión con mike por SSH.

gallery

Ahora vamos a leer la flag de usuario.


Escalada de Privilegios

Nos toca escalar privilegios. Primero vamos a ver qué id y grupos tiene mike.

gallery

Nada interesante. Vamos con nuestra checklist de escalada.

gallery

Parece que hemos encontrado un script que podemos ejecutar como root. Vamos a ver de qué se trata.

gallery

Aquí hay un potencial fallo de seguridad, pues nano deja escribir comandos en su interior. Vamos a probar.

gallery

Buscamos en GTFOBins:

gallery

Vamos a probar.

gallery

Y nos da la shell.

gallery

Vamos a leer la flag.


Conclusión

Una máquina divertida y sencilla en la que hemos tocado varios temas