Introduction

Identifica las vulnerabilidades recientes e intenta explotar el sistema o leer archivos que no deberías poder leer.
Getting the Flags
Reconocimiento Inicial
Comenzaremos realizando un escaneo de puertos abiertos.

Ahora escanearemos dichos puertos abiertos en busca de más pistas.

Vamos a ver de qué se tratan los protocolos que estamos viendo aquí.

Y

Una vez hecho esto vamos a listar directorios de la web, que aparentemente está en el puerto 8080.

Esto es todo lo interesante que hemos encontrado. Vamos a ver qué hay en la web.

Es la página de carga de Apache Tomcat. Vamos ahora a ver qué hay en los directorios que hemos encontrado antes.
Nos hemos metido en cada uno de los directorios y hemos encontrado lo que parecen "pruebas" de funcionamiento de varias funcionalidad, huele a que puede haber alguna vulnerabilidad por aquí.

Además hemos encontrado lo siguiente en el directorio más interesante, /manager/:
Profundización
Vamos a profundizar mirando a ver si existe alguna vulnerabilidad conocida para TomCat 9.0.30.

Explotación
Creamos el directorio y lo guardamos:

Abrimos msfconsole y recargamos los módulos con loadpath /ruta/a/ghostcat.rb. Luego lo buscamos con search ghostcat.

Le damos a use 1 y miramos las options:

Debemos rellenar dichas opciones con los datos necesarios y le damos a exploit.

El módulo que cargamos aparentemente sólo lee cabeceras. Pero recordamos que había otro exploit para esto mismo que ya venía instalado:

Vamos a usarlo.

Le damos a exploit:

Acabamos de encontrar un usuario y una contraseña, vamos a iniciar sesión por SSH con dichas credenciales.

Con la sesión de SSH ya podemos buscar user.txt:
Escalada de Privilegios
Vamos a intentar escalar privilegios, vamos a ver qué hay en nuestro /home.

Vemos que tryhackme.asc es una clave y el archivo pgp está cifrado, seguramente podamos descifrarlo con ella.

Vamos a intentar desencriptar el pgp.

Parece que necesitamos un passphrase, vamos a usar john. Para ello me paso los archivos por scp.

Usamos john para crackear la passphrase:

Ahora volvemos y lo metemos.

Hemos obtenido la contraseña de merlin. Vamos a conectarnos por ssh a su cuenta.

Si buscamos root.txt vemos que no la encuentra, eso es porque esta cuenta era sólo de pivotaje, ahora hay que acceder a root.

Vamos a comenzar con sudo -l.

Parece que podemos usar /usr/bin/zip como admin sin contraseña. Buscamos en GTFOBins.

Ejecutamos el exploit.

Y ahora sí que ya podemos buscar la flag y leerla.
Conclusión
Una máquina divertida y sencillita en la que hemos trabajado:
- La búsqueda de exploits.
- El pivotaje entre cuentas.
- La escalada de privilegios.
