Move
This content is not available in your language yet.
Introducción
Sección titulada «Introducción»En este artículo se documenta la resolución de la máquina virtual Move, diseñada por El Pingüino de Mario y clasificada con un nivel de dificultad fácil. Se aborda de forma estructurada cada etapa del proceso: reconocimiento, explotación y escalada de privilegios.
Información de la Máquina Virtual
Sección titulada «Información de la Máquina Virtual»- Nombre: Move
- Autor: El Pingüino de Mario
- Dificultad: Fácil
- Fecha de creación: 30/06/2024
Paso 0: Instalación y Despliegue
Sección titulada «Paso 0: Instalación y Despliegue»-
Descargamos la máquina desde DockerLabs.
-
Descomprimimos el archivo:
Ventana de terminal unzip Move.zip -
Ejecutamos el script de despliegue:
Ventana de terminal sudo bash auto_deplo.sh Move.tar
Paso 1: Reconocimiento
Sección titulada «Paso 1: Reconocimiento»Identificación de la IP
Sección titulada «Identificación de la IP»Al iniciar la máquina, se muestra directamente su dirección IP, por lo que no es necesario realizar un escaneo ARP.

Configuramos el entorno de trabajo:
mkdir Movecd Movemkt # Crea las carpetas: content, exploits, nmap, scriptsEscaneo de Puertos
Sección titulada «Escaneo de Puertos»Ejecutamos un escaneo de puertos completo con Nmap:
nmap -p- --open -sS --min-rate 5000 -vvv -n -Pn 172.17.0.2 -oG allPortsExtraemos los puertos abiertos:
extractPorts allPorts
Puertos detectados:
- 21 (FTP)
- 22 (SSH)
- 80 (HTTP)
- 3000 (HTTP)
Detección de Servicios
Sección titulada «Detección de Servicios»Lanzamos un escaneo específico de servicios:
nmap -sCV -p21,22,80,3000 172.17.0.2 -oN targeted
Enumeración FTP (Puerto 21)
Sección titulada «Enumeración FTP (Puerto 21)»Se permite el acceso anónimo vía FTP. Al conectarnos encontramos un archivo accesible:

Lo descargamos para su análisis posterior.
Enumeración Web (Puerto 80)
Sección titulada «Enumeración Web (Puerto 80)»Realizamos un escaneo con gobuster:
gobuster dir -u http://172.17.0.2/ \ -w /usr/share/seclists/Discovery/Web-Content/directory-list-lowercase-2.3-medium.txt \ -x php,html,txt,js -t 200
Rutas detectadas:
index.html: página por defecto de Apache.maintenance.html: contiene una pista sobre la ubicación de un archivo.
Enumeración Web (Puerto 3000)
Sección titulada «Enumeración Web (Puerto 3000)»La interfaz en el puerto 3000 corresponde a una instalación de Grafana:

Paso 2: Explotación
Sección titulada «Paso 2: Explotación»Grafana expone una versión vulnerable (v8.3.0), susceptible a lectura arbitraria de archivos. Buscamos el exploit correspondiente en ExploitDB y lo ejecutamos para comprobar la vulnerabilidad.

Se confirma que podemos leer archivos del sistema, como /etc/passwd, donde identificamos al usuario freddy.
Luego, analizamos el archivo encontrado previamente por FTP y referenciado en maintenance.html:

Este contiene la contraseña de freddy, lo que nos permite acceder vía SSH:
ssh freddy@172.17.0.2
Paso 3: Escalada de Privilegios
Sección titulada «Paso 3: Escalada de Privilegios»Revisión de privilegios Sudo
Sección titulada «Revisión de privilegios Sudo»Ejecutamos:
sudo -l
El usuario freddy puede ejecutar /opt/maintenance.py como superusuario con python3.
Escalada con Python
Sección titulada «Escalada con Python»Inspeccionamos el archivo para comprobar si es editable:

Modificamos su contenido para invocar una shell con privilegios de root:
import osos.system("/bin/bash")Luego lo ejecutamos:
sudo python3 /opt/maintenance.pyObtenemos acceso como root:

Conclusión
Sección titulada «Conclusión»La máquina Move combina técnicas clásicas de enumeración y explotación: acceso anónimo vía FTP, explotación de Grafana para lectura de archivos, y escalada mediante un script Python ejecutable como root. Es una máquina ideal para practicar vectores comunes en entornos de red interna y pruebas de post-explotación.