Write-ups

Resolución del CTF HEXTHINK SILENT SHADOW


Enumeración

Escaneo de puertos

Realizamos un escaneo de todos los puertos para identificar los servicios activos en el sistema objetivo.

nmap -p- --open -sCV -Pn -n --min-rate 5000 192.168.0.97
  • -p- : Escaneo de todos los puertos. (65535)
  • -sS : Realiza un TCP SYN Scan para escanear rápidamente qué puertos están abiertos.
  • -sC : Escaneo con scripts básicos de reconocimiento.
  • -sV : Detección de servicios.
  • –min-rate 5000 : Escaneo no inferior a 5000 paquetes/segundo.
  • -n : Sin resolución DNS.
  • -Pn : Sin descubrimiento por ping.

Identificamos los servicios SSH (22), HTTP (80), MySQL/MariaDB (3306) y un servicio personalizado en el puerto 9090.

Acceso a base de datos

Desde el servicio web obtenemos el usuario de base de datos ctf_user. Probamos conexión directa y comprobamos que no requiere contraseña.

mysql -h 192.168.0.97 -u ctf_user

Enumeramos las tablas y localizamos hashes MD5 de usuarios, que crackeamos para validar credenciales, aunque no aportan acceso directo adicional.

Extracción de información oculta

En una tabla encontramos un mensaje con una imagen adjunta. Descargamos la imagen y analizamos esteganografía.

stegseek imagen.jpg

Extraemos un archivo de texto con instrucciones para interactuar con el servicio del puerto 9090.

Interacción con el servicio 9090/tcp

Enviamos la cadena indicada al servicio, obteniendo credenciales SSH válidas.

echo -e "LOGIN whisper\nKEY whisper9090" | nc 192.168.0.97 9090

Acceso inicial

Accedemos por SSH con el usuario obtenido y confirmamos acceso al sistema.

ssh [email protected]

Escalada de privilegios

Enumeramos permisos sudo y detectamos ejecución de Python sin contraseña.

sudo -l

Abusamos del binario permitido para obtener una shell con privilegios elevados.

sudo /usr/bin/python3 -c "import os;os.system('/bin/bash -p')"

Con esto comprometemos completamente el sistema como root.


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *