Day 7: Scan-ta Clause - Advent of Cyber 2025

xhetic

xhetic

@xhetic

TryHackMeAdventOfCyberNetwork Discovery
Day 7: Scan-ta Clause - Advent of Cyber 2025

📚 Esta publicación pertenece a las colecciones:

Day 7: Scan-ta Clause - Advent of Cyber 2025

Este writeup pertenece al evento Advent of Cyber 2025 de TryHackMe, una iniciativa gratuita para aprender ciberseguridad durante 25 días. Si quieres seguir toda la serie, consulta nuestra colección completa del Advent of Cyber 2025.


¡Los preparativos navideños están en peligro! HopSec ha comprometido nuestro entorno de QA y nos ha bloqueado el acceso. Sin él, los proyectos de TBFC no pueden probarse y todo el pipeline del SOC-mas está congelado. Para empeorar las cosas, el servidor se está transformando lentamente en un nodo retorcido de "EAST-mas".

Nuestra misión hoy es: descubrir el rastro de HopSec, encontrar una forma de volver a entrar en tbfc-devqa01 y restaurar el servidor antes de que los conejos tomen el control total. Tendremos que revisar cada escondite y cada puerto abierto que hayan dejado desprotegido.

Room: Network Discovery - Scan-ta Clause
Dificultad: Easy
Objetivo: Realizar un escaneo de puertos exhaustivo, enumerar servicios desconocidos y pivotar hasta obtener la flag final.


📡 Fase 1: Reconocimiento (TCP)

Como en cualquier auditoría, empezamos a ciegas. Sabemos la IP del objetivo (10.82.152.204), pero no qué servicios están corriendo. Nuestra herramienta de confianza para esto es Nmap.

Lanzamos un escaneo de todos los puertos TCP, añadiendo la flag --script=banner para que los servicios nos "saluden" y nos den pistas de qué son.

El resultado nos muestra varios puertos abiertos interesantes:

Escaneo Nmap

Tenemos:

  • 22 (SSH)
  • 80 (HTTP)
  • 21212 (FTP)
  • 25251: Un servicio misterioso llamado "TBFC maintd".

Para intentar retomar el control, vamos a ir investigando servicio por servicio.


🕵️ Fase 2: Enumeración y Recolección de Pistas

Puerto 22: Conexión SSH

Esta opción sería la mejor y la más rapida si tuvieramos las credenciales, pero parece que los conejos de HopSec la han cambiado, por lo que por aquí no podemos acceder.

Puerto 80: El Sitio Web Comprometido

Al visitar la web, nos encontramos con un panel de acceso que nos pide una clave compuesta de 3 partes. Además, vemos que el sitio ha sido vandalizado.

Sitio Web Puerto 80

En la cabecera, HopSec ha dejado su firma, lo que responde a nuestra primera pregunta:

Pregunta: What evil message do you see on top of the website?

Respuesta: Pwned by HopSec

Puerto 21212: FTP Anónimo

Continuamos con el servicio FTP.

Los servidores FTP a veces están mal configurados y permiten el acceso con el usuario anonymous y cualquier contraseña. Vamos a probar suerte.

ftp 10.82.152.204 21212
# User: anonymous

Perfecto, hemos podido entrar correctamente como usuario Anonymous. Al listar los archivos (quizás necesites usar passive off si ls falla), encontramos un archivo llamado tbfc_qa_key1. Lo descargamos con get.

Una vez ya en nuestro equipo, podemos analizar su contenido. Con esta información tenemos la respuesta a la siguiente pregunta:

Pregunta: What is the first key part found on the FTP server?

Respuesta: 3aster_

Puerto 25251: El Servicio Misterioso

Nmap nos dijo que en el puerto 25251 corría algo llamado "TBFC maintd v0.2". Como no es un protocolo estándar y no lo conozco, vamos a conectarnos directamente usando Netcat para ver si podemos interactuar con él.

nc -v 10.82.152.204 25251

El servicio nos saluda y nos dice Type HELP for commands. Obedecemos y vemos que tiene un comando GET KEY.

Blanco y en botella.

Respuesta del servicio TBFC
Click para ver imagen

Perfecto, ya tenemos la siguiente pregunta:

Pregunta: What is the second key part found in the TBFC app?

Respuesta: 15_th3_

Puerto 53: Escaneo UDP y DNS

Ya hemos revisado todos los puertos TCP, pero nos falta una parte de la clave. A veces los administradores usan servicios en puertos UDP. Por lo que ahora, vamos a lanzar un escaneo específico para UDP:

nmap -sU 10.82.152.204

Escaneo UDP

Descubrimos un servicio DNS en el puerto 53. El DNS guarda registros de nombres de dominio. En la room nos dan la pista de que podemos buscar un registro de tipo TXT en el dominio key3.tbfc.local.

Usamos dig para interrogar al servidor DNS:

dig @10.82.152.204 TXT key3.tbfc.local +short
Respuesta DNS TXT
Click para ver imagen

Perfecto, ya tenemos la tercera key:

Pregunta: What is the third key part found in the DNS records?

Respuesta: n3w_xm45


🔓 Fase 3: Acceso y Post-Explotación

Juntando las tres partes (3aster_ + 15_th3_ + n3w_xm45), obtenemos la contraseña maestra. La introducimos en el panel web del puerto 80...

Acceso concedido

¡Acceso concedido! Nos redirige a una terminal web (Web Shell) donde somos el usuario tbfcapp.

Consola Secreta

Enumeración Interna

Ahora que estamos dentro del servidor, queremos ver qué más hay. Un buen comando para ver qué está escuchando internamente es ss -ntlp.

Puertos Abiertos

Vemos varios puertos locales, pero uno destaca: 3306. Este es el puerto estándar de MySQL. Las bases de datos suelen requerir contraseña para conexiones externas, pero a menudo, el usuario root o el usuario local no tiene contraseña o usa una por defecto cuando se conecta desde localhost.

Probamos a conectarnos:

mysql

¡Funciona! Estamos dentro de la base de datos. Ahora solo queda buscar el tesoro:

  1. SHOW DATABASES; -> Vemos tbfcqa01.
  2. USE tbfcqa01;
  3. SHOW TABLES; -> Vemos una tabla flags.
  4. SELECT * FROM flags;
Flag encontrada en MySQL
Click para ver imagen

Perfecto, pues ya tenemos la última flag de la room:

Pregunta: Finally, what's the flag you found in the database?

Respuesta: THM{4ll_s3rvice5_d1sc0vered}


🏁 Conclusión

El reto de hoy ha sido un ejercicio clásico de Enumeración. Hemos tenido que:

  1. Escanear puertos TCP y UDP.
  2. Interactuar con servicios estándar (FTP, HTTP) y no estándar (Netcat).
  3. Consultar registros DNS específicos.
  4. Pivotar desde un acceso web a una base de datos interna.

¡El servidor ha sido recuperado y el pipeline de SOC-mas vuelve a fluir!

Mañana publicaré el writeup del Día 8, donde seguiremos investigando nuevos incidentes. Si te has perdido algún día o quieres repasar los anteriores, puedes consultar la colección completa del Advent of Cyber 2025.

¡Nos vemos mañana! 🎄

~ Xhetic