DockerLabs Rubiks
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 el escaneo de la dirección IP, podemos observar que tenemos 2 puertos disponibles y el puerto 80 no indica un nombre de dominio.
Luego de agregar el nombre del dominio en /etc/hosts
e ingresar la dirección en el navegador podemos observar lo siguiente.
Realizamos un escaneo de la dirección y se puede observar un directorio llamado administration
.
Ingresamos al directorio y tenemos acceso al panel sin necesidad de un password.
Al ingresar a configuraciones
podemos observar varios elementos en la barra lateral.
De todos los elementos el único funcional es el console
, pero no nos muestra una página válida.
Si observamos el URL podemos notar que usa myconsole.php
directamente en el dominio. Pero si lo agregamos luego del directorio administration
podemos observar que tenemos acceso a la página.
Ya que nos indica que podemos ingresar comandos, pero debes estar codificados debemos ver en que están codificados. Porque si enviamos de la siguiente manera no vemos ningún resultado.
Probando diferentes codificaciones tanto como base64
probamos con base32
y pudimos observar que tuvimos resultados.
Enviamos el comando y podemos observar que tenemos el resultado de whoami
.
Realizamos un ls -la
y podemos observar varios archivos entre ellos el configuration.php
y un archivo id_rsa
.
Leemos el id_rsa
.
Creamos un archivo y copiamos el contenido dándole permisos.
Necesitamos un usuario, así que listaremos el archivo /etc/passwd
de todos ellos el que llama la atención es luisillo
.
Probamos establecer conexión con luisillo
y podemos observar que accedimos como ese usuario.
Para facilitar las cosas generaremos una nueva shell ingresando el siguiente comando.
script /dev/null -c bash
La consola se vería de esta manera.
Listamos los archivos, pero no vemos nada, así que realizando un sudo -l
podemos observar que podemos escalar como root haciendo uso de cube
.
Probamos ejecutando y parece ser que valida un número.
Leemos el archivo y podemos observar que no válida correctamente el input por lo cual nos podríamos aprovechar.
Para ello agregaremos el siguiente comando para poder ejecutar código arbitrario. Para tener más idea de como funciona visitar el siguiente link arbitrary code
a[$(bash >&2)]+42
Luego de ingresar el comando podemos observar que somos root
, De esta manera culminando esta máquina.
Subscribe to my newsletter
Read articles from Gm4tsy directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by