En el siguiente WriteUp, vamos a resolver la máquina de la plataforma de DockerLabs VACACIONES, clasificada con nivel de seguridad “Muy Fácil”.
Técnicas aplicadas para la resolución de la máquina:
- Escaneo de Puertos
- hydra -l
- Metasploit
Descargar la máquina docker
megadl https://mega.nz/file/YCEGAISD#y6iWUG_auH4vUApClb9ix7H6JmOCKm4vAYS2TjQn59g
Descomprimir la máquina:
- unzip vacaciones.zip
Desplegamos el laboratorio:
- sudo bash auto_deploy.sh vacaciones.tar
Comprobamos la conectividad de red con maquina objetivo :
observamos que la respuesta del ttl es de 64, por lo que ya podemos deducir que la máquina objetivo se trata de un sistema linux.
ESCANEO DE PUERTOS:
Lo que observamos tras el escaneo de puertos es que tiene el puerto 22 abierto, que corresponde al servicio ftp, y también el puerto 80 por el que corre el servicio Apache.
Puerto 80:
Encontramos un web en sin contenido:
Tampoco encontramos nada destacable al inspeccionar el código fuente de la misma.
EXPLOTACIÓN:
Trás inspeccionar la web, vamos a intentar vulnerar la máquina haciendo un ataque de fuerza bruta con los dos usuario que nos muestran la inspección del código fuente, “juan” y “camilo”.
Para lo cual haremos lo siguiente.
Crearemos un fichero de texto llamado users.txt con los dos usuarios-
y ahora con hydra y el poderoso rockyou para ver qué encontramos:
hydra -l(Explicación de hydra)
Con el login(camilo) y el password(password1) obtenido con hydra, haremos una intrusión a la máquina mediante ssh, siendo exitoso el intento.
Trás la intrusión investigamos un poco y observamos que hay un tercer usuario llamado Pedro y que Camilo no puede ejecutar ningún comando como sudo. Recordamos que el mensaje del servidor mencionaba un mensaje importante, así que…
Observamos que a la hora de intentar ejecutar comando con privilegios avanzados, nos indica que el usuario camilo, no tiene permisos para ello.
Navegamos por los directorios que tenemos acceso y llegamos hasta el directorio mail de la raíz, en donde encontramos un directorio llamado “camilo”, y dentro un archivo de texto llamado correo.txt
Visualizamos la información de ese fichero para intentar obtener más información:
Vamos a intentar entrar al sistema con el usuario “Juan” y password “2k84dicb” que es lo que nos indica el fichero.
Como podemos observar tenemos acceso a la máquina objetivo, y vamos a ver los permisos que tenemos sobre la misma con el usuario juan.
Ejecutaremos el comando sudo ruby -e ‘exec «/bin/sh»‘.
Con este comando abre una shell (/bin/sh) con permisos de superusuario utilizando Ruby. Es una técnica comúnmente utilizada para obtener acceso root en sistemas donde el usuario tiene permisos sudo para ejecutar Ruby, pero no acceso directo a una shell root.
Tras esté procedimiento daremos la instrucción al máquina por finalizada.