Resolución del CTF RESIDENT
💢 Plataforma: TheHackersLabs💢
❌Nombre: Resident
📈Nivel: Avanzado
💻OS: LINUX
🙋🏽♂️Creador: @r0dgar
Enumeración
Escaneo de puertos
Realizamos un escaneo de todos los puertos para saber cuáles están activos.

Los parámetros utilizados son:
- -p- : Escaneo de todos los puertos. (65535)
- -sS : Realiza un TCP SYN Scan para escanear de manera rápida que puertos están abiertos.
- -sC : Realiz una escaneo con los scripts basicos de reconocimiento
- -sV : Realiza un escaneo en buqueda de los servicios
- –min-rate 5000: Especificamos que el escaneo de puertos no vaya más lento que 5000 paquetes por segundo, el parámetro anterior y este hacen que el escaneo se demore menos.
- -n: No realiza resolución de DNS, evitamos que el escaneo dure más tiempo del necesario.
- -Pn: Deshabilitamos el descubrimiento de host mediante ping.
Haremos un poco de fuzzing para ver a que ns enfrentamos.

Tenemos varios directorios interesantes, pero antes de nada visitaremos el robots.txt.

Lo decodeamos en cybercheef y vemos el resultado final.

Pero por un chivatazo que me dieron resulta ser que hay que añadirle un carácter alfanumérico al final, así que crearemos un script para obtener el diccionario con ese carácter al final.


Y haremos un ataque de fuerza bruta para saber cual es la contraseña real.

Ya podemos iniciar sesión.

Y vemos que reacciona ante un XXS, que si no sabéis que es, os dejo el siguiente articulo.

Y además para que también es vulnerable a SSRF.

Capturaremos la peticion con Bupsuite y vemos que podemos leer archivo con un payload en php aprovechandonos de User-Agent.

Pero parece que no nos deja aprovecharnos de los logs de apache.

Pero haremos una una revshell algo vitaminada vitaminada.

Y conseguimos obtener sesión.

parece que hay un script que se a realizado mal, y nos proporciona un usuario y una contraseña.

Ya que solo hay 3 usuarios en el sistema.

Accederemos con esas credenciales.

Nuevamente tenemos un script el cual copia una contraseña de ram en el /tmp/passwd.

Lo ejecutaremos.

Y nos proporciona un hash.

En este caso podemos utilizar hashcat o un script personalizado para romperlo y obtener la contraseña, os dejare unos días para que lo averigüéis solo.

Especial agradecimiento al compañero R0dgar por la creación y el conocimiento aportado en esta máquina. Un fuerte abrazo!!