DockerLabs Consolelog

DockerLabs Consolelog

Esta es una máquina de DockerLabs de nivel fácil

·

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 3 puertos abiertos.

Ingresamos a la desde el navegador y podemos observar que la pagina principal es una muy sencilla.

Revisamos el código encontramos que tiene un enlace a authentication.js y nos lleva a ver el siguiente texto.

Realizamos un escaneo de directorios y podemos observar que tenemos uno que se llama back-end.

Al ingresar al directorio /backend podemos observar que tenemos diversos archivos.

Entre los archivos hay uno que se llama server.js el cual parece que este servidor escucha peticiones POST en la ruta /recurso/ y devuelve una contraseña si el token proporcionado es correcto.

Esto podemos probarlo usando curl, si enviamos la petición con post podemos observar el password si es correcto y si no es otro texto.

Intentamos con algunas consultas para extraer algún directorio o dirección extra, pero no es posible. Pero como ya tenemos un password que parece ser funcional probaremos con hydra para verificar si están haciendo la reutilización de passwords. Ejecutando hydra podemos observar que obtuvimos el nombre del usuario.

lovely:lapassworddebackupmaschingonadetodas

Nos conectamos por SSH y ya tenemos acceso a la máquina.

Para empezar y ver si podemos escalar privilegios realizamos un listado de archivo, pero no hay nada así también realizamos un sudo -l y podemos observar que no tenemos el comando sudo.

Nos dirigimos a la raíz y realizamos una búsqueda de permisos SUID y podemos observar que tenemos a nano.

 find \-perm -4000 -user root 2>/dev/null

Revisando podemos observar que podemos abusar de este permiso SUID pero es limitado.

Con esto en mente revisaremos si solo tenemos al usuario lovely o debemos acceder como otro usuario. Por ello revisamos el passwd y podemos observar que hay un usuario más.

Pero antes de seguir buscando alguna manera de usar otro usuario para escalar recordemos que tenemos la capacidad de ejecutar comandos como root usando nano y siendo así podemos editar el archivo passwd y quitarle la x para poder acceder sin credenciales.

Luego de borrar la x procedemos a guardar los cambios.

Una vez realizado esto podemos observar que podemos acceder como root sin necesidad de credenciales. De esta manera estamos culminando esta máquina.