Skip to main content
HackTheBox machines – Skyfall WriteUp

HackTheBox machines – Skyfall WriteUp

Skyfall es una de las maquinas existentes actualmente en la plataforma de hacking HackTheBox basada en Linux

Skyfall es una de las maquinas existentes actualmente en la plataforma de hacking HackTheBox y es de dificultad Insane.

En este caso se trata de una máquina basada en el Sistema Operativo Linux.

 

Escaneo de puertos

Como de costumbre, agregamos la IP de la máquina skyfall 10.129.218.161 a /etc/hosts como skyfall.htb y comenzamos con el escaneo de puertos nmap.

Descubiertos los puertos abiertos lanzamos un segundo escaneo para obtener más información de los mismos

 

Enumeración

Accedemos a través del puerto 80 a la página web existente y vemos la siguiente ventana

HackTheBox machines – Skyfall WriteUp

 

Revisamos y enumeramos el portal web pero no encontramos mucha cosa así que procedemos a enumerar subdominios

 

Hemos encontrado el subdominio de demo.skyfall.htb así que lo añadimos al fichero hosts y accedemos a través del navegador

HackTheBox machines – Skyfall WriteUp

 

En la misma vemos un formulario de login en el cual aparecen unas credenciales así que las utilizamos para acceder al portal llegando a la siguiente página

HackTheBox machines – Skyfall WriteUp

 

Se trata de un dashboard de una aplicación para el almacenamiento de ficheros, en la cual vemos un enlace a métricas de MinIO, al acceder obtenemos un error 403 (Permission Denied) que podemos saltar de forma sencilla agregando al final de la uri el valor

Una vez accedemos si bajamos al final del listado de variables encontramos un nuevo subdominio

Obteniendo vairables de MinIO

 

Así que vamos a agregar el mismo al fichero hosts de nuevo y accedemos

Probando el nuevo endpoint

Al acceder directamente al dominio nos devuelve un error de acceso, pero si accedemos a la uri que vimos en la página de demo nos devuelve la configuración de MinIO

Acceso a la configuración de MinIO

 

Y entre las mismas podemos ver el commit de la versión utilizada

 

Obteniendo información de MinIO

Vamos a nuestro amigo google y encontramos la vulnerabilidad CVE-2023-28432 que se trata de una vulnerabilidad de Info Disclosure.

https://www.pingsafe.com/blog/cve-2023-28432-minio-information-disclosure-vulnerability/

Así que siguiendo la poc, lanzamos una petición para obtener los datos de MinIO

 

En la petición anterior, si nos fijamos bien, tenemos unas credenciales, así que vamos a conectarnos a MinIO con dichas credenciales y la app MinIO Admin Client

En primer lugar nos conectaremos a MinIO

Y listaremos los ficheros y directorios existentes

Vemos un fichero tar.gz en la carpeta así que nos descargamos todas las versiones que vemos

Revisamos el contenido de los ficheros y en el primero encontramos una clave ssh

 

Y en la segunda encontramos otro subdominio en el fichero .bashrc

 

Conectando a vault

Con lo descubierto hasta el momento vamos a investigar acerca de vault.

Vault nos proporciona una forma de crear una clave de inicio de sesión de un sólo uso y para ello necesitaremos en primer lugar configurarnos la tool vault-ssh-helper.

Una vez configurada utilizaremos las credenciales obtenidas para que el servidor vault las verifique y, al iniciar sesión en este, nos proporcionará un código otp que necesitaremos para conectarnos al servidor.

Con todo esto vamos a descargarnos la herramienta de vault y revisaremos la documentación de la misma para ver como funciona.

Una vez instalada la herramienta y revisada la documentación, exportamos las variables necesarias

Y nos logueamos

Solicitamos entonces el código OTP

Y nos conectaremos por ssh con el código obtenido

 

Obteniendo la flag de user

Una vez dentro vamos a coger la primera flag

 

Escalado de privilegios

Para el escalado a root, revisamos los privilegios del usuario askyy

Y vemos que podemos ejecutar con privilegios elevados la herramienta vault-unseal así que vamos a ejecutar para probar la misma y la salida que devuelve

Revisando la ayuda y documentación de la tool podemos especificar un fichero de debug en el que almacenar el log, así que lo probamos

Y encontramos un token en el fichero de debug generado

 

Con el token obtenido vamos a conectarnos de nuevo a vault

Y encontramos la clave del usuario admin

Así que vamos a repetir el proceso previo, pero en este caso, vamos a obtener el código otp del usuario admin

Y con el mismo conectamos como root al servidor

 

Obteniendo la flag de root

Una vez que ya somos root vamos a por nuestra ansiada flag

Y ya tenemos nuestra flag de root para completar esta máquina y conseguir nuestros puntos.

 

Si eres usuario de HackTheBox y te gustó mi writeup, por favor, dame respeto en el siguiente enlace

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *