XUT_ / MACHINES / THM

0020

Tomghost

THMMACHINENONEEASY

Introduction

tomghost

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.

tomghost

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

tomghost

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

tomghost

Y

tomghost

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

tomghost

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

tomghost

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

tomghost

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.

tomghost


Explotación

Creamos el directorio y lo guardamos:

tomghost

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

tomghost

Le damos a use 1 y miramos las options:

tomghost

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

tomghost

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:

tomghost

Vamos a usarlo.

tomghost

Le damos a exploit:

tomghost

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

tomghost

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.

tomghost

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

tomghost

Vamos a intentar desencriptar el pgp.

tomghost

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

tomghost

Usamos john para crackear la passphrase:

tomghost

Ahora volvemos y lo metemos.

tomghost

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

tomghost

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.

tomghost

Vamos a comenzar con sudo -l.

tomghost

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

tomghost

Ejecutamos el exploit.

tomghost

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.