Este blog es solo para fines educativos y de análisis técnico en CTFs. No promueve actividades maliciosas ni el uso indebido de herramientas descritas.
Entrada

The Mini - UMDCTF2025

Reto basado en descifrar un crucigrama basado en el juego The Crossword.

The Mini - UMDCTF2025

Autor del reto: aparker

Dificultad: Fácil

Enunciado

“Joel Fagliano has nothing on me. (flag is all caps)”

Archivos

En este reto, tenemos el siguiente archivo.

  • the-mini.puz: Contiene el crucigrama en formato .puz

Archivos utilizados aquí.

Analizando el reto

En este reto nos dan un crucigrama del juego The Crossword. Este crucigrama pertenece a la versión mini de dicho juego ya que cuenta con una cuadrícula de 5x5.

En el enunciado se menciona el autor de varios juegos de puzzles llamado Joel Fagliano. Uno de ellos es el mencionado anteriormente Mini Crossword

Solver

Para abrir archivos en formato .puz utilizaremos la herramienta online communicrossings.com la cual nos permitirá realizar el crucigrama de manera interactiva.

img_crucigrama

Al resolverlo finalmente, podremos llegar a la conclusión de que no hay una flag o una cadena legible, es por ello que Daysa en este momento, perdió la mitad de sus increíbles neuronas (haciendo retos de Misc y no de Crypto).

Además si directamente ejecutamos xxd con el archivo proporcionado, podemos obtener la solución directa pero en este caso no tiene relevancia alguna.

La resolución de este ejercicio viene dada por desbloquear la solución final en base a una cadena.

Para ello con un simple script en python podemos desbloquear la solución en base a un entero iterable, hasta que obtengamos la solución que en este caso es la flag.

El script es el siguiente.

1
2
3
4
5
6
7
8
import puz

p = puz.read('the_mini.puz')

for i in range(1000000):
    if p.unlock_solution(i):
        print(i)
        print(p.solution)

Al ejecutarlo, después de varias iteraciones encontramos la solución.

1
2
3
4
5
6
7
8
9
10
┌──(kesero㉿kali)-[~]
└─$ python solver.py

UMDCTFCANYOUBEATMYTIME...
8
UMDCTFCANYOUBEATMYTIME...
9
UMDCTFCANYOUBEATMYTIME...
10
UMDCTFCANYOUBEATMYTIME...

Flag

UMDCTF{CANYOUBEATMYTIME}

Esta entrada está licenciada bajo CC BY 4.0 por el autor.