Solución al Desafío 24 de ESET Latinoamérica

Después de una semana de haber publicado nuestro desafío 24 que simulaba una posible fuga de información confidencial, presentamos primero una forma de cómo se podía resolver al desafío y aprovechamos para felicitar a Edinson Arteaga (Inspector) quien en esta ocasión fue la primera persona que respondió correctamente el desafío.

Tal como lo sugería el enunciado, el análisis debería estar centrado en la imagen que se encontraba en los diferentes correos electrónicos. Lo primero que se puede analizar de una imagen son sus metadatos. Utilizando exiftool, se puede ver esta información tal como se muestra en la siguiente captura.

Información en los metadatos

En algunos de los metadatos hay unas cadenas de caracteres que por su forma nos lleva a pensar que están cifrados en base64, lo cual es extraño para este tipo de datos. Si desciframos estas tres cadenas, obtenemos la siguiente información:

Base-8
Parte 1/2 -> 10, 22, 2136
Para encontrar la información restante hay que mirar la imagen desde adentro

Esta pista nos da la idea de que hay más información. Si probamos abrir el archivo JPG con un editor de texto para “mirar la imagen desde adentro”, encontramos al final unas cadenas de caracteres que no corresponden a un archivo normal JPG.

Información dentro del archivo

Si desciframos estas cadenas obtenemos la siguiente información:

Mejor hacer cuentas en Base-10
Parte 2/2 -> 6056, 402026, 10226162506, 4417346042546
La clave esta en el termino 9 de la serie para el algoritmo 3DES (ECB)

Siguiendo estas pistas, obtenemos la siguiente serie, que está cifrada en base8: 10, 22, 2136, 6056, 402026, 10226162506, 4417346042546. Si acatamos el consejo de que es “mejor hacer cuentas en base10″, pasamos esta serie a este sistema numérico para obtener una nueva que se acomode mejor a lo que estamos habituados a ver: 8, 18, 1118, 3118, 132118, 1113122118, 311311222118.

Para poder llegar a descifrar el texto cifrado con 3DES (ECB), debemos obtener el término 9 de la serie. Primero debemos entender que un nuevo término de la serie se forma a partir del anterior, describiendo la cantidad de dígitos consecutivos. Así como primero hay un 8, el segundo término es un 8, es decir 18, el tercer término sería un 1 y un 8, es decir 1118, el cuarto término serían tres 1 y un 8, es decir 3118. Podríamos seguir formando esta cadena de números manualmente, o utilizar un pequeño algoritmo que nos la genere:

Código para generar la serie

En este caso generamos los primeros catorce términos. Tomamos el noveno que de acuerdo a las pistas es la clave para obtener la información. Utilizando una herramienta en línea como Online Domain Tools nos podemos dar cuenta que el texto cifrado contenía realmente información sensible. Por lo tanto la empresa tendría las pruebas suficientes para iniciar un proceso disciplinario a su empleado.

Texto descifrado

Como se pudieron dar cuenta, en esta oportunidad el desafío estaba más enfocado en diferentes formas de cifrar y ofuscar información, muchas de las cuales suelen ser utilizadas por algunos cibercriminales para ocultar datos en diferentes contextos.

Además del ganador, queremos mencionar a Daniel Correa, Andrés Pérez-Albela Hernández y Matias que lograron resolver correctamente el desafío. A todos los que participaron del desafío esperamos que lo disfrutaran y ¡estén atentos que próximamente volveremos a publicar nuevos desafíos!

H. Camilo Gutiérrez Amaya
Especialista de Awareness & Research

Autor , ESET

  • who

    Para que el programa? la serie se puede deducir facilmente…

    • Si es verdad que no eran muy complicada la serie. La idea de generar el dígito con un sencillo script es minimizar los riesgos de equivocarse haciéndolo a mano.

  • Ruddy

    ahh con que asi era .

Síguenos