Whatsapp
Retos (CTF) – Cyber.Co 2020 – Comando Conjunto Cibernético – Parte 7

Retos (CTF) – Cyber.Co 2020 – Comando Conjunto Cibernético – Parte 7

06 agosto 2020

RETO # 29 – Points of Color

Descripción del Reto: “Mediante un trabajo coordinado con el equipo de inteligencia hemos obtenido un apk con códigos de acceso a uno de los servidores de una organización cibercriminal. Tu misión es encontrar esta información”.

Nivel de dificultad: Difícil

Puntos asignados: 500

Formato de bandera: QMISSION{flag}

Archivo adjunto del reto:

PointsofColor.apk

Solucionario:

Al descargar la aplicación e instalarla en nuestra emulador android procedemos a ejecutarla y navegar entre ella visualizamos las siguientes pantallas:

Al ver que solo nos muestra la tonalidad de colores, procedemos a analizar el código de la aplicación con la herramienta apktool y de d2j-dexjar para la obtención del jar.

Una vez con el jar procedemos a utilizar jd-gui para visualizar la estructura de la aplicación con el fin de analizar el código de manera mas fácil.

Identificamos que tenemos 6 Activitys los cuales son las pantallas de la aplicación, pero la aplicación solo nos muestra 4, analizamos el código y visualizamos que desde el Activity3 el método goActivity realiza el llamado al Activity5 y no al Activity4 el cual sería un orden lógico, esto nos genera sospecha y por ende los que necesitamos realizar es que el activity4 sea llamado desde el activity3 desde el método goActivity.

Abrimos el archivo “Main3Activity.smali” con el fin de modificar la línea de código para que el llamado que está realizando a Main5Activity quede a Main4Activity.

Una vez realizado el cambio procedemos a compilar la aplicación.

Generamos un Keystore para firmar la aplicación.

Firmamos la aplicación.

Una vez firmada la aplicación, desinstalamos la aplicación original del emulador e instalamos la nueva apk modificada.

Al correr la aplicación probaremos nuevamente el comportamiento de la app:

Podemos visualizar que en la pantalla 4 se representa un cambio de actividad y nos proyecta el Main4Activity con la flag en binario:
“0100110101010011010010100101001100110011010000110101001000110011010101000100111101010011”

Procedemos a traducir el mensaje en binario que nos muestra la aplicación:

Como resultado obtenemos en la parte izquierda de la imagen el mensaje decodificado el cual es: “MSJS3CR3TOS”. Una vez identificado el mensaje lo acomodamos a el formato de flag establecido quedando de la siguiente manera.

Flag: QMISSION {MSJS3CR3TOS}

RETO # 30 – Hello Samuel

Descripción del Reto: “Encuentra el mensaje”

Nivel de dificultad: Difícil

Puntos asignados: 400

Formato de bandera: QMISSION{flag}

Archivo adjunto del reto:

hello_samuel.zip

Solucionario:

Descargar el zip y analizar la imagen. Completar cabecera del PK a partir del final del JPEG FF D9

Para un ZIP 50 4B.

Extraer el audio y decodificar el morse: Para esto se debe tener en cuenta que el audio esta a un sample rate de 11025, 15 WPM y 750 Hz.

Completar la cabecera del GIF89 47 49 46 38 39

Reconstruir la imagen.

La flag se hace visible.

Flag: QMISSION{ INTO_the_ HOLE }

RETO # 31 – El Grial

Descripción del Reto:El grial es un objeto místico que queremos encontrar, existen mucho, pero el verdadero está oculto y se dice que en el camino está la respuesta que necesitaras para seguir adelante, pero ten cuidado ya que existen muchos caminos.

Nivel de dificultad: Fácil

Puntos asignados: 200

Formato de bandera: QMISSION{flag}

Archivo adjunto del reto:

Encuentrame.rar

Solucionario:

Para este desafío se nos da un .rar que contiene una gran cantidad de archivos dentro, se encuentran 100 carpetas y dentro de
estas otras 100 y dentro de estas otras 100 carpetas.

Dentro se aplica el filtro .* para extraer los archivos con todas las extensiones posibles, como se puede ver existen diversos archivos pero hay uno que sobresale de los demás el cual es pista.rar

El archivo pide una contraseña para extraer la pista dentro, en la descripción del reto se nos explica que “en el camino está la respuesta que necesitarás para seguir adelante” esto confirma que vamos por buen camino, en cuanto la contraseña probamos los números de las carpetas donde está el archivo.

972357

Dentro de la carpeta se encuentra otro archivo desconocido y se puede ver que el archivo es uno de tipo wave entonces se agrega la extensión .wav.

Y cuando se reproduce se escucha un morse, el cual se puede hacer a mano o con alguna aplicación en internet.

Esta no es la flag ya que Xiao es una herramienta de esteganografía con la cual se puede ocultar información en archivos .bmp o .wav, esta herramienta si la aplicamos a el audio morse.

Y dentro tiene un archivo .bmp y finalmente se extrae el archivo.

Finalmente se obtiene la flag.

Flag: QMISSION{1_h4v3_1t}

RETO # 32 – A ciegas

Descripción del Reto:Encuentra la flag.

Nivel de dificultad: Fácil

Puntos asignados: 100

Formato de bandera: QMISSION{flag}

Archivo adjunto del reto:

Reto.mp4

Solucionario:

Para este reto se nos da un video con un audio inteligible el cual contiene una imagen que aparece muy rápido, la cual podemos encontrar reduciendo la velocidad del video.

Se toma captura de pantalla y se la convierte a texto mediante una herramienta online o se puede copiar a mano.

Una vez en texto plano se lo envía a un decodificador de base 64.

Ciertamente cuando lo decodificamos no nos da la flag directamente pero nos da una pista de donde puede estar.

Como es un video y se debe extraer el audio, para esto se usa VLC con el fin de extraer el audio.

Convertimos a formato de audio mp3 y extraemos el archivo.

Finalmente se analiza el espectro con audacity.

Ya con esto se puede notar que es braile y se debe decodificar de manera manual.

Finalmente se obtiene la flag.

Flag: QMISSION{ BL1ND_FL4G }

Contacto