🟠Funbox
Write-up de la máquina Funbox de Proving Grounds #writeup #walkthrough
Last updated
Write-up de la máquina Funbox de Proving Grounds #writeup #walkthrough
Last updated
Vamos a comenzar la resolución de la máquina Funbox enumerando que puertos tiene abiertos el sistema objetivo.
La máquina tiene servicios abiertos en los puertos 21,22,80 y 33060. El siguiente paso será la enumeración profunda de estos cuatros servicios.
La máquina objetivo estaba ejecutando un servicio Web en el puerto 80. Vamos a enumerar su contenido.
Al introducir la IP en nuestro navegador, esta es redireccionada a un dominio.
Vamos a registrarlo en el archivo /etc/hosts.
Y ya podremos acceder al sitio Web.
Parece que el sitio Web está montado sobre un CMS WordPress. El siguiente paso será por un lado enumerar archivos y directorios interesantes, y por otro, enumerar más información interesante utilizando la herramienta especializada para este CMS, wpscan.
Comenzamos por la enumeración de directorios con dirsearch.
Interesante, tenemos un archivo robots.txt y un directorio /secret. Veamos su contenido.
Nos indica el directorio /secret que encontramos en la enumeración con dirsearch.
Nothing por aquí. Vamos a enumerar información interesante con wpscan.
Después de un momento, encontramos dos usuarios del CMS, admin y joe.
Sabiendo esto, vamos a tratar de realizar un ataque de fuerza bruta para encontrar credenciales que nos permita iniciar sesión en el Panel de Administración del sitio Web.
Pero tras su ejecución, no encontramos credenciales.
Tenemos dos nombres de usuario, y dos servicios, FTP y SSH, ejecutandose en la máquina objetivo. Vamos a tratar de encontrar credenciales con un ataque de fuerza bruta utilizando hydra.
Vamos a tratar de acceder al sistema a través de FTP, con las credenciales que encontramos anteriormente.
Descargamos estos archivos en nuestra máquina.
Encontramos la flag local.txt.
Veamos también el otro archivo descargado.
Es una copia de un correo electrónico. Parece que hay un usuario llamado "funny" que está esperando un script de respaldo. Buscaremos el directorio del usuario "funny", a ver si podemos encontrar alguna información relacionada.
La shell que recibimos tras conectarnos a través de SSH, es restringida. Vamos a saltarla haciendo la terminal interactiva con Python3.
Una vez hecho esto, ya podremos movernos sin limitaciones por los diferentes directorios.
En el directorio /home, encontramos dos usuarios, "joe" y "funny". Veamos el contenido del directorio del usuario "funny".
Dos archivos interesantes, reminder.sh y backup.sh. Veamos su contenido.
Vamos a verificar si el script .backup.sh está siendo utilizado por algún proceso y quién lo está utilizando. Para realizar esta verificación, podemos emplear la herramienta "pspy". Pspy es una herramienta que permite observar los procesos en ejecución sin necesidad de contar con permisos de root. Transferimos el ejecutable pspy64 a la máquina objetivo.
Y ejecutamos.
Como puede observar, el archivo "/home/funny/.backup.sh" se ejecuta tanto con el UID=1000 (Funny) como con el UID=0 (raíz). Por lo tanto, vamos a modificar el archivo y esperaremos una conexión entrante.
Los primeros intentos no tuvieron éxito y obtuvimos solo el usuario. Pero en el último intento, obtuvimos acceso como usuario "root".
Y ya estaría terminada la máquina funbox de la plataforma Proving Grounds.