Buenas, en este vamos a resolver algunos retos de criptografia de la plataforma https://atenea.ccn-cert.cni.es
Si tenéis alguna duda o corrección no tengáis reparo en poneros en contacto.
Vamos al lio!

Reto 4 – Juegos de guerra

Enunciado:

Se tienen sospechas de que en la siguiente imagen está escondida, de alguna manera, una contraseña. ¿Eres capaz de localizarla?
Fichero: d2FyZ2FtZXMK-d2414dd3b174b6503d59a113c6f02537.jpg

Solución:

Nos enfrentamos al primer reto de esteganografía de la plataforma y ya se empiezan a complicar las cosas.
Una de los primeros pasos al analizar un fichero es mirar los metadatos, como ya nos enseñaban en los Retos Basicos Atenea

exiftool d2FyZ2FtZXMK-d2414dd3b174b6503d59a113c6f02537.jpg

En la ultima linea de la salida de este comando vemos:
Thumbnail Image: (Binary data 6338 bytes, use -b option to extract)
Para extraer este fichero:

exiftool d2FyZ2FtZXMK-d2414dd3b174b6503d59a113c6f02537.jpg -b -ThumbnailImage > output

En los metadatos del fichero extraido vemos que también hay una miniatura adjuntada (Thumbnail), vamos a hacer lo mismo que antes para extraerla

exiftool output -b -ThumbnailImage > output2

Una vez hemos extraido esta tercera imagen tardé un buen rato en ver que el siguiente paso estaba escondido tambien en los metadatos ya que los dos ficheros extraídos contienen unas coordenadas:

37°29'60"N 122°8'43.40W

Vamos a buscar en Google Maps estas coordenadas:

Vemos en el suelo la palabra ‘HACK’, esta sera la clave del flag

Reto 5 – Durin’s Gates

Enunciado:

Tu objetivo será investigar el fichero adjunto .jpg y averiguar si está relacionado con una clave o mensaje de estas características.
Fichero: doors_of_durin-f686f3e1aa18d5e3f4261bea89a24c17.jpg

Solución:

Lo primero que vamos a hacer es abrir la imagen:

En la imagen vemos una famosa frase del Señor de los Anillos, esta nos da una pista así que vamos a buscar sobre la cita:
http://tolkiengateway.net/wiki/Doors_of_Durin
En esta fuente leemos que la contraseña de la que habla es: ‘Mellon’
Tras ver esto pensé directamente en steghide:

Vemos que el comando con la contrasña ‘Mellon’ nos extrae otro fichero: url.txt, vamos a echarle un ojo:

https://pastebin.com/SgaSizcn

En este pastebin encontramos un texto cifrado en base64 bastante largo.
Vamos a descifrarlo y meterlo en otro fichero: key.enc

base64 -d pastebin.txt > file.enc

Con el comando file vemos que se trata de un encriptado por openssl con contraseña.
Tras un buen rato buscando posibles contraseñas, volví a mirar los metadatos del fichero que nos entregan. En ellos vemos:

Artist: 68913499125FAA

Vamos a probar a usar esa contraseña:

openssl enc -aes-256-cbc -d -in file.enc -out file.txt -k 68913499125FAA

Vemos que falla, al parecer esto es debido a que en la versión 1.1 de OpenSSL se cambio el ‘digest’ a SHA256
https://stackoverflow.com/questions/39637388/encryption-decryption-doesnt-work-well-between-two-different-openssl-versions

El comando que nos vale es:

openssl enc -aes-256-cbc -d -md MD5 -in file.enc -out file.txt -k 68913499125FAA

Como veis, el fichero obtenido es un video, vamos a verlo.
El video simplemente nos muestra que la clave es: Minas_Tirith_2017

Reto 6 – Really???

Enunciado:

Durante el estudio del disco duro del ordenador de un sospechoso se ha encontrado un fichero cifrado mediante PGP. Al no encontrarse ninguna clave privada dentro del equipo se sospecha que dicho fichero esté cifrado mediante cifrado simétrico.
Por otro lado, todas las contraseñas obtenidas de varias cuentas del sospechoso (a partir de la investigación de su equipo) tienen las siguientes características:

– Son de longitud 6 o 7
– Sólo contienen letras minúsculas
– Sólo se utilizan estas letras: qwertyiopnmjk
– No se repite ninguna de las letras de la contraseña
– Algunas de ellas contiene únicamente un número entre estos: 013

Ninguna de esas contraseñas ha servido para descifrar el fichero, pero quizás haya sido cifrado con una contraseña con estas mismas características.
No sabemos si el contenido del fichero es relevante para la investigación, pero sólo hay una forma de averiguarlo…
Pista! La lengua materna del dueño del equipo es el inglés

Solución:

Tras leer el enunciado sabemos que necesitaremos un diccionario de palabras con solo 6 o 7 de estos caracteres:
qwertyiopnmjk013
Para ello obtendremos las palabras del rockyou que cumplan estos requisitos:
grep -x ‘[qwertyiopnmjk013]\{6,7\}’ /usr/share/wordlists/rockyou.txt > word.txt

Una vez tenemos el diccionario podemos usar la herramienta https://github.com/kholia/PGPCrack-NG

Si la habeis probado sabreis que es bastante lenta, asi que vamos a utilizar una que me hice para este tipo de retos:
https://github.com/manulqwerty/CrackGPG

Como veis es bastante mas rapida

La ejecución de estos comandos nos devuelve un txt, sabiendo que es un reto de stego y tras probar varias tecnicas vemos que con SNOW(http://www.darkside.com.au/snow/) obtenemos la infomacion oculta:
./snow -C gpg_output

Tras leer la informacion oculta y buscar en google vemos que el flag es: groggrog

¿Me ayudas a compatirlo?