Navaja Negra CTF 19
Table of Contents
Introdución
La semana pasada, estuve en la Décima edición de la Navaja Negra (NN) en Albacete. Lo que conllevaba a participar en el CTF para probar mis habilidades. Lamentablemente, debido a que me centre más en las charlas que en el propio CTF solo tuve las noches de la NN para poder resolverlo.
Finalmente, solo pude resolver 3 de los retos y he aquí sus soluciones.
Moon Casino
Este reto era bastante sencillo y se notaba que era para principiantes. Entramos en el enlace de la web y nos encontramos con esto.
Al ver esto, rápidamente me puse a ver el código fuente de la web.
Con lo que me encuentro con el siguiente comentario dentro del HTML de la web. Así que, procedo a acceder al index.php con los parámetros mostrados en la imagen.
Mirando un poco en el código fuente, me doy cuenta de que cuando ganas se carga el contenido web de “secret.php”, por lo que procedo a navegar a dicha dirección.
Y ya estaría, conseguimos nuestra primera FLAG.
Planet Steg
Este reto era sobre estegografía. Me descargo el archivo y lo abro con el navegador web.
A lo que veo algo parecido a una flag pero con muchos caracteres random, Por lo que procedo a mirar el código fuente.
Me doy cuenta de que los valores &#… son realmente la flag y que los valores en negro sobran. Así que procedo a eliminar toda la basura insertada en el .html
Finalmente refrescamos el navegador y…
Clown Sterling
Como se puede ver a simple vista se trata de descifrar el mensaje a a través de una clave asimétrica privada. Para ello necesitamos sacar la clave privada a partir de la pública y justamente hay una herramienta llamada RsaCtfTool que puedes descargarte a través del siguiente enlace https://github.com/Ganapati/RsaCtfTool la cual nos ayudará a sacar dicha clave pública.
Antes de descargarla tenemos que crear un documento de clave publica como el siguiente:
Nos descargamos la herramienta:
**$ **git clone https://github.com/Ganapati/RsaCtfTool.git
Accedemos a la carpeta de la herramienta y ejecutamos el siguiente comando
./RsaCtfTool.py --publickey "../\*.pub" –private
Básicamente, lo que hace es sacar la clave privada a través de la clave pública indicadando la ruta como argumento.
Si nos salta el error:
ModuleNotFoundError: No module named 'gmpy2'
Tenemos que instalar los siguientes programas:
**$ ***sudo apt-get install libgmp3-dev libmpc-dev*
pip3 install gmpy2
Una vez instalado todo, volvemos a ejecutar el comando, lo cual nos sacará la clave privada. En mi caso, utilizando un ordenador muy poco ponente no me sacó la clave, así que tuve que coger otro ordenador y correr el programa, otra vez, para obtenerla.
Una vez obtenida la clave privada, vamos a https://8gwifi.org/rsafunctions.jsp para desencriptar el mensaje. Añadimos la clave privada y el texto cifrado y seleccionamos la opción “Decrypt RSA Message “
Para acabar, he de decir que el haber asistido a la Navaja Negra ha sido una de las cosas más enriquecedoras que he vivido sobre el mundo de la ciberseguridad. A pesar de algunas charlas y/o talleres, sin duda alguna las noches de la Navaja Negra es lo que la hace tan especial y que el año que viene siga queriendo ir.