Ir al contenido principal

Entradas

Criptografía (CLXXIII): Solución Reto TUCTF 2019 "Something in Common"

Continúo con las soluciones a los retos correspondientes a la categoría de criptografía de TUCTF 2019, competición tipo CTF de formato 'Jeopardy', en modalidad 'On-line' y por equipos.

En este post es el turno de uno de los retos en el que se ve involucrada la criptografía moderna y en concreto el criptosistema más utilizado actualmente, RSA.

En mi opinión este reto presenta un nivel de dificultad medio (☆☆).

El título del reto es "Something in Common" y su enunciado es el siguiente:
Lo primero que hago es bajarme el archivo que se proporciona como recurso asociado al reto (rsa_details.txt), y veo que contiene lo siguiente:
Es decir, el módulo (n), dos exponentes (e1 y e2) correspondientes a sendas claves públicas y dos criptogramas (c1 y c2) obtenidos respectivamente con el mismo módulo (n) y su correspondiente exponente público (c1 = m1 ^ e1 mod n; c2 = m2 ^ e2 mod n).

A la vista del contenido del fichero proporcionado y considerando el título del reto, par…
Entradas recientes

Criptografía (CLXXII): Solución Reto TUCTF 2019 "Warren"

En este post la solución a otro de los retos correspondientes a la categoría de criptografía de TUCTF 2019, competición tipo CTF de formato 'Jeopardy', en modalidad 'On-line' y por equipos.

En este reto, al igual que en aquel al que se hace referencia en el post anterior que sobre dicho evento he puesto en este blog, se ve involucrada la criptografía clásica; en este caso cinco criptosistemas, en concreto: cifrado Afín, Bacon, César, Atbash y Vigenère, los cuatro primeros de sustitución simple monoalfabética y el último de sustitución simple polialfabética.

En mi opinión este reto presenta un nivel de dificultad muy bajo (☆☆☆☆).

El título del reto es "Warren" y su enunciado es el siguiente:
Me conecto, se me da la bienvenida y se me informa de que debo resolver todos los criptogramas para que se me proporcione la flag. El tiempo límite para ello es de 90 segundos: En el Menú que se muestra (ver figura siguiente) hay una opción para cada uno de los cinco cripto…

Criptografía (CLXXI): Solución Reto TUCTF 2019 "Sonic"

Este fin de semana me he entretenido participando en un evento CTF de formato 'Jeopardy' en modalidad 'On-line'a través de la plataforma CTFTime.

El evento en concreto es TUCTF y se trata de una competición por equipos para desarrollar capacidades en las típicas categorías incluidas en este tipo de eventos: Criptografía, Forense, Web, Reversing, etc.

Tal y como vengo diciendo en este humilde blog, una de las categorías que más me gustan de los retos en este tipo de competiciones es la de criptografía, por lo que en este post comienzo con la solución a uno de los retos correspondientes a dicha categoría en la citada competición.
El título del reto es "Sonic" y su enunciado es el siguiente:
Y en mi opinión presenta un nivel de dificultad bajo (☆☆☆).
Me conecto y se me muestra un criptograma que se me pide que descifre. El tiempo que se me da para ello es muy corto y como no soy capaz de hacerlo tan rápido como se requiere enseguida se muestra un mensaje de erro…

Criptografía (CLXX): Solución Reto 33

En este post la solución al último reto de esteganografía que he puesto en este blog.

El enunciado del reto decía lo siguiente:

"Una técnica esteganográfica relativamente habitual consiste en utilizar el relleno para ocultar información, entendiendo éste como aquellos métodos que introducen información irrelevante con ciertos fines en mensajes, imágenes y, en general, cualquier tipo de objeto. Por ejemplo, tal y como se explicaba en este post, en un archivo bmp los valores correspondientes a cada línea de la imagen se disponen de izquierda a derecha con una longitud de línea múltiplo de 4 Bytes, agregándose en caso necesario los Bytes con valor 0 que se precisen hasta completar la longitud múltiplo de 4. Estos Bytes de relleno se ignoran a la hora de visualizar la imagen, por lo que su contenido no afecta a su visualización, y son precisamente esos Bytes de relleno los que se pueden utilizar para ocultar un mensaje y, por tanto, se podría utilizar la imagen como objeto portador del…

Criptografía (CLXIX): Reto 33

Trasteando un poco con algunos retos de esteganografíauno se da cuenta de que, como bien se dice, las técnicas para ocultar mensajes u objetos dentro de otros son tantas como nuestra imaginación nos permita.

Uno de dicho retos me llamó la atención por su originalidad; aunque una vez explicada la técnica utilizada no es que sea particularmente raro ni difícil, la verdad es que a mí no se me hubiera ocurrido nunca ocultar información ahí.

Tomando como base ese reto, en este post pongo el siguiente reto de esteganografía.

Como siempre, se admiten soluciones en forma de comentarios a esta entrada. Pasado un tiempo iré proporcionando pistas para su resolución, un máximo de tres, y posteriormente actualizaré este post con la solución.

Reto 33: "El secreto está en el relleno".

Una técnica esteganográfica relativamente habitual consiste en utilizar el relleno para ocultar información, entendiendo éste como aquellos métodos que introducen información irrelevante con ciertos fines en me…

Reversing(XVIII): Solución Reto angstromCTF 2019 "I Like It"

En este post la solución a uno de los retos de 'reversing' de angstromCTF 2019.

En mi opinión este reto presenta un nivel de dificultad medio (☆☆).

Su enunciado dice lo siguiente: 'Now I like dollars, I like diamonds, I like ints, I like strings. Make Cardi like it please'.

se proporciona un archivo ejecutable ELF ('Executable and Linkable Format').

Solución: Como ya he dicho en este blog, los retos de 'reversing' no se me dan precisamente bien :), por lo que he catalogado este desafío como de dificultad media, pero seguro que cualquier persona con un poco de destreza para resolver este tipo de retos diría que presenta un nivel de dificultad muy bajo.

Para intentar resolverlo, en primer lugar ejecuto el archivo:
El que se me pida que introduzca una cadena ('string'), junto a la referencia a las mismas que se hace en el enunciado, me lleva a utilizar la utilidad 'strings' para ver si encuentro alguna en el ejecutable que se corresponda co…

Criptografía (CLXVIII): Solución Reto FreeHackQuest "Keyboard password"

Comienzo con éste una serie de posts en los que pondré las soluciones de algunos de los retos de la plataforma FreeHackQuest; en esta primera entrada un desafío bajo la etiqueta 'hashes'.

Al igual que para los retos de este tipo de otras plataformas, los resolveré mediante scripts de python y/o la utilización de alguna herramienta.

El primero de estos retos tiene por título "Keyboard password" y, en mi opinión, presenta un nivel de dificultad bajo (☆☆☆).

Su enunciado dice lo siguiente: 'We know which keys pressed user for password and we have MD5-sum by password, please got password.
Hash: d377e0079ee9e94fc69336a01630b041'.

Como pistas ('Hints') se dan las siguientes:

"Hint 1: Keyboard is english.
Hint 2: Without 'shift'.
Hint 3: Password has 8 characters.
Hint 4: sometimes where you see 'n' possible key 'm' in another keyboards. I hope this give you shans to be successfully".

Solución:

A la vista de las pistas llego a la co…