Skip to main content
HackTheBox machines – Agile WriteUp

HackTheBox machines – Agile WriteUp

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

Agile es una de las maquinas existentes actualmente en la plataforma de hacking HackTheBox y es de dificultad Media.

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 Agile 10.10.11.203 a /etc/hosts como agile.htb y comenzamos con el escaneo de puertos nmap.

Hacemos un primer escaneo rápido

Y posteriormente uno más a fondo sobre los puertos detectados

 

Enumeración

Accedemos a través del navegador al puerto 80 y nos redirecciona al site superpass.htb así que lo añadimos al fichero hosts y entramos de nuevo

HackTheBox machines – Agile WriteUp

 

Se trata de una aplicación de almacén de contraseñas, y como no tenemos cuenta, nos creamos una y accedemos

HackTheBox machines – Agile WriteUp

 

Revisamos un poco la aplicación, probamos a crear una clave y exportamos la misma, observando que nos genera un csv con el contenido de nuestras claves, así que vamos a interceptar la petición con burp, y después de algunas pruebas, conseguimos explotar un LFI

Explotando un lfi

 

Revisamos el contenido del fichero passwd obtenido y descubrimos 4 posibles usuarios

Siguiendo con nuestras pruebas, y visto que no conseguimos mucho más, accedemos a un fichero que no existe en el servidor para forzar un error y obtenemos la ruta donde se encuentra la aplicación

Forzando errores en la aplicación

 

Así que vamos a obtener el fichero vault_views.py y su contenido es el siguiente

 

Revisamos a fondo el código y encontramos una parte muy interesante

Según está función, si accedemos a la ruta /vault/row/ indicando el id del usuario podemos obtener las claves del mismo, vamos a verificar que funciona, y funciona, así que vamos a generar un pequeño script que revise en todos a ver que sacamos.

El script es el siguiente

 

Y lo ejecutamos

Y conseguimos las claves de varios usuarios. Tal y como vimos en el fichero passwd, tenemos el usuario corum, así que vamos a probar el acceso por ssh con el mismo.

 

Obteniendo la flag de user

Entramos por ssh con el usuario corum, y cogemos nuestra flag

 

Escalado al usuario edwards

El siguiente paso será enumerar la máquina, en primer lugar, veamos si el usuario tiene permisos de sudo

Pero nada, así que seguimos y encontramos un puerto interesante

El puerto 5555 sólo tiene acceso en local, y si revisamos la configuración del nginx apunta al site test.superpass.htb y sólo escucha en localhost

 

Así que vamos a usar chisel para crear un tunel que nos permita acceder al mismo, ejecutamos el servidor en nuestro kali

Y el cliente en la máquina de agile

Y accedemos al navegador, donde vemos que se trata de otra página igual a la anterior, por lo que podemos explotar la misma vulnerabilidad.

Hacemos una simple consulta al id 1 y obtenemos unas credenciales del usuario edwards

Reutilizando la vulnerabilidad de código

Así que las utilizamos para acceder con el mismo

 

Escalado de privilegios

Bueno, ya queda menos, volvemos a empezar a enumerar, comenzando por los permisos de sudo

Y este usuario tiene permisos para utilizar sudoedit como el usuario dev_admin, así que para verificar si podemos abusar del mismo revisamos la versión instalada de sudo

Así que vamos a buscar en google y encontramos la vulnerabilidad CVE-2023-22809 y un post donde explica como explotarla. Así que vamos a ello.

En primer lugar, buscaremos si hay algún proceso en el sistema del que podamos a provecharnos, y encontramos uno en la ruta /app/venv/bin/activate al analizar los procesos con pspy

Analizando procesos con pspy

 

Así que la utilizaremos para obtener nuestro escalado.

Siguiendo el post, el primer paso será generar la variable EDITOR

Continuaremos con la ejecución de sudoedit

Y añadiremos la siguiente línea al principio del fichero para conseguir permisos de suid en el binario de bash

Guardamos, cerramos y revisamos

Y ha funcionado, ya tiene permisos de suid.

 

Obteniendo la flag de root

Como último paso, escalamos a root y cogemos la 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 *