Navaja Negra CTF 19

Cover Image for Navaja Negra CTF 19
Marmeus
Marmeus

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.