Hidden - DockerLabs
| OS | Dificultad | Creator |
|---|---|---|
| Linux | Media | ElPinguinoDeMario |
Reconocimiento
Encontramos el puerto 80 abierto.
Dominio
Descubrimos un dominio y lo añadimos al archivo hosts. Ahora exploramos el sitio web.
Usamos gobuster para buscar directorios.
Encontramos varios directorios, pero ninguno interesante. Buscamos subdominios con wfuzz.
Encontramos el subdominio ‘dev’, lo añadimos al hosts y accedemos a él.
Exploramos el subdominio y realizamos otra búsqueda con gobuster para encontrar más directorios.
Descubrimos upload.php e intentamos subir una reverse shell para acceder a la máquina. Usamos una reverse shell PHP, modificamos la IP y el puerto, y cambiamos la extensión a .phtml. Subimos el archivo, nos ponemos en escucha con netcat y accedemos a /uploads para ejecutar la reverse shell.
Exploración y Fuerza Bruta
Encontramos tres usuarios pero no podemos acceder a sus carpetas. Sin curl o wget, subimos archivos desde el panel web. Subimos un script de fuerza bruta y creamos un archivo rockyou_200.txt con las primeras 200 líneas de rockyou.txt.
head -n 200 rockyou.txt > rockyou_200.txt
Subimos el archivo a /var/www/dev.hidden.lab/uploads y copiamos los archivos a la carpeta /tmp.
Credenciales y Escalada de Privilegios
Encontramos la contraseña 123123 para el usuario cafetero.
Ejecutamos sudo -l y vemos que podemos escalar privilegios al usuario john utilizando nano. Usamos GTFObins para encontrar el siguiente comando:
sudo -u john /usr/bin/nano
^R^X
reset; sh 1>&0 2>&0
Ahora somos john. Ejecutamos sudo -l de nuevo y vemos que podemos escalar a bobby con el binario apt.
Para escalar a bobby, ejecutamos:
sudo -u bobby /usr/bin/apt changelog apt
!/bin/sh
Finalmente, usamos el binario find para escalar a root con el siguiente comando:
sudo -u root /usr/bin/find . -exec /bin/sh \; -quit
Ahora somos root.