Rubiks DockerLabs (Intermediate)

Instalación

Cuando obtenemos el .zip nos lo pasamos al entorno en el que vamos a empezar a hackear la maquina y haremos lo siguiente.

unzip rubiks.zip

Nos lo descomprimira y despues montamos la maquina de la siguiente forma.

bash auto_deploy.sh rubiks.tar

Info:

                            ##        .         
                      ## ## ##       ==         
                   ## ## ## ##      ===         
               /""""""""""""""""\___/ ===       
          ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~
               \______ o          __/           
                 \    \        __/            
                  \____\______/               
                                          
  ___  ____ ____ _  _ ____ ____ _    ____ ___  ____ 
  |  \ |  | |    |_/  |___ |__/ |    |__| |__] [__  
  |__/ |__| |___ | \_ |___ |  \ |___ |  | |__] ___] 
                                         
                                     

Estamos desplegando la máquina vulnerable, espere un momento.

Máquina desplegada, su dirección IP es --> 172.17.0.2

Presiona Ctrl+C cuando termines con la máquina para eliminarla

Por lo que cuando terminemos de hackearla, le damos a Ctrl+C y nos eliminara la maquina para que no se queden archivos basura.

Escaneo de puertos

Info:

Si entramos en el puerto 80 veremos que esta bajo un dominio llamado rubikcube.dl, por lo que vamos añadirlo a nuestro archivo hosts.

Lo guardamos y entraremos bajo ese dominio.

Veremos una pagina normal de forma aparente, por lo que vamos a realizar un poco de fuzzing.

Gobuster

Info:

Vemos varias rutas interesantes, entre ellas el llamado /administration, vamos a ver que contiene ese directorio.

Vemos que es un panel de administrador normal, pero si nos vamos a configuration.php veremos la configuracion de algo del panel, pero tendremos otro panel lateral izquierdo:

En dicho panel, veremos una opcion llamada Console que si pinchamos nos llevara al archivo llamado myconsole.php pero nos dara un error:

Vemos que nos esta eliminando la parte de administration, pero si se lo añadimos veremos que funciona:

Veremos como una consola que nos indica que podremos ejecutar comandos, pero de forma codificada, por lo que vamos a probar a codificarlo en Base32 y realizando el siguiente comando:

Codificado

Info:

Vemos que funciona perfectamente, pero si hacemos un simple ls -la veremos lo siguiente:

Vemos que hay un id_rsa que puede ser del usuario luisillo por lo que haremos lo siguiente:

Codificada

Info:

Vemos que hemos obtenido la clave privada del usuario luisillo, por lo que haremos lo siguiente:

id_rsa

SSH

Info:

Cuando ejecutemos eso, estaremos dentro como dicho usuario sin necesidad de introducir una contraseña.

Escalate Privileges

Si hacemos sudo -l veremos lo siguiente:

Vemos que podemos ejecutar el binario cube como el usuario root, por lo que haremos lo siguiente:

Si leemos el binario que se podra leer de forma facil:

Info:

Vemos que tiene una vulnerabilidad para injectar comandos en la entrada del usuario, por lo que haremos lo siguiente:

Info:

Con esto ya seremos root, por lo que habremos terminado la maquina.

Last updated