DockerLabs Dance-Samba

DockerLabs Dance-Samba

Esta es una máquina de DockerLabs de nivel medio

·

3 min read

Para poder hacer uso de esta máquina primero debemos descargar los archivos y así desplegarlo con Docker.

Descargamos el archivo de la página dockerlabs.es/#

Al momento de descargar esta máquina y descomprimir el archivo, en este caso observamos 2 archivos.

Para desplegar el laboratorio ejecutamos de la siguiente manera, así también podemos ver que nos indica la dirección que tendremos, así también el que hacer cuando terminemos este.

Realizamos un escaneo de la dirección IP y podemos observar que tenemos 4 puertos identificados.

Como podemos acceder al servicio de FTP usando la credencial de anonymous podemos observar un archivo que descargamos.

Abrimos el archivo y podemos observar que tenemos un texto interesante.

Ya que no tenemos donde más buscar, esta vez buscaremos dentro del servicio smb. Usamos rpcclient y listamos los usuarios donde podemos observar que tenemos a macarena que también es el nombre que vimos en el archivo FTP.

Probamos a identificar algún password y observamos que el password era donald el cual también estaba en el archivo txt.

macarena:donald

Listamos los directorios y podemos observar que tenemos el de macarena.

Ya que tenemos credenciales probamos acceder al archivo de smb y podemos observar que accedimos con éxito.

Listamos los archivos y podemos observar que tenemos varios y uno llamado user.txt

descargamos el archivo y al leerlo observamos un texto encriptado al parecer.

Volvemos a escanear el servicio de smb, pero esta vez con smbmap y podemos observar que podemos escribir en el subdirectorio.

Podemos subir una revshell, pero no tenemos como explotarlo, así que la otra opción es probar subir una llave SSH. Para crear el archivo usamos puttygen para crear una clave SSH de 2048 bits en formato OpenSSH y se guardará en el archivo gm4tsy.

Le damos permisos 600 al archivo que generemos.

Luego usamos el siguiente comando para extraer la clave pública del archivo de clave privada gm4tsy y sobrescribir el archivo authorized_keys con esta clave pública

/usr/bin/puttygen gm4tsy -o authorized_keys -O public-openssh

Para que todo nos vaya bien debemos crear un directorio llamado .ssh donde subiremos el archivo authorized_keys.

Luego de subir el archivo iniciamos sesión usando la clave generada y podemos observar que tuvimos éxito.

Realizamos un sudo -l y podemos observar que no podemos porque no tenemos el password.

Regresamos a la carpeta home para ver qué usuarios tenemos y podemos observar uno que es ftp y es la misma información que ya obtuvimos, en secret tenemos un hash que parece estar en base 64.

La llevamos a cyberchef y podemos observar un texto que indica ser un password.

supersecurepassword

Volvemos a realizar un sudo -l y observamos que podemos escalar haciendo uso del binario file.

Vamos a la página de GTFOBins donde encontramos la manera de usar ese binario y es donde podemos leer archivos como root.

Tratamos de leer el archivo id_rsa de root, pero no es posible. Buscamos entre los archivos temporales y observamos que en opt tenemos un archivo llamado password y pertenece a root.

Leemos el archivo observando el password de este usuario.

root:rooteable2

Usamos las credenciales para loguearnos y podemos observar que obtuvimos root culminando esta máquina.