🐳Dockerlabs (Easy) - Dockerlabs
DockerLabs
Reconocimiento
En primer lugar escaneo los puertos con nmap
❯ nmap -p 0-65535 --open -T5 -A -sT -Pn -n 172.17.0.2 -oX nmapScan.xml && xsltproc nmapScan.xml -o nmapScan.html && open nmapScan.html &>/dev/null & disown
Hay solo un servidor HTTP, por lo que el siguiente paso va a ser visitar la página.

Es un imitación de la página de Dockerlabs, con sus laboratorios, dificultades, buscador...
Después de realizar fuzzing con gobuster
❯ gobuster dir -u 'http://172.17.0.2/' -w /usr/share/wordlists/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt -x php,html,js,txt,db,config,xml,py,bak,conf,java,jar,python -o fuzzing.txt
Doy con un directorio interesante, llamado /machine.php
, que permite la subida de archivos. Al intentar subir mi archivo shell.php
, la página muestra el siguiente mensaje: "No se permite la subida de archivos que no sean .zip".
Explotación
Después de probar varias extensiones y otros métodos durante un rato, puedo subir el archivo malicioso con la extensión .phar
, una vez hecho esto, voy a /uploads
, me pongo en escucha en una terminal con nc -nvlp 443
y clico en el archivo que acabo de subir, ganando una shell como www-data.
Post explotación
Lo primero es sanitizar la shell.

Al hacer sudo -l
veo que puedo ejecutar grep
como root, después de echar un ojo por la máquina encuentro un archivo en la ruta /opt/nota.txt
, lo leo con grep
y veo que indica la ruta a un archivo que contiene la contraseña de root, lo leo de nuevo usando grep
y ya tengo credenciales para autenticarme como root.

Last updated