Search

Escribe para buscar.

en
HackConRD CTF 2024: Forensics Instructions

HackConRD CTF 2024: Forensics Instructions

Junior Restituyo
0xR3iko

Este reto nos entrega un documento docm, que tenemos que analizar en busca de código malicioso.

El documento .docm malicioso que entrega el reto

Intentamos abrir el documento para ver su contenido. Solo tiene dos páginas, que no nos dan nada interesante.

El documento abierto, mostrando dos páginas sin nada útil

Investigando en Google, encontramos que podíamos analizar las macros y el memory leak usando un paquete de Python: oletools.

oletools es un paquete de herramientas de Python para analizar archivos OLE2 de Microsoft (también llamados Structured Storage, Compound File Binary Format o Compound Document File Format), como documentos de Microsoft Office o mensajes de Outlook, principalmente para análisis de malware, forense y depuración.

Usamos el comando olevba sin ninguna opción para ver toda la información de las macros.

bash
olevba vpn_instructions.docm

Acá encontramos un fragmento de código que literalmente nos da una URL con nuestra flag, información que tendremos que decodificar para obtener la flag en texto plano.

Salida de olevba revelando la macro VBA con la URL de la flag

Revisando el código, vemos que el tipo de ofuscación que usa es cambiar las letras a su formato ASCII.

El código de la macro ofuscando caracteres con Chr()/Asc()

Usando la tabla de todos los códigos Chr(), cambiamos el código por la letra correspondiente y obtuvimos:

HTB{n3w_VPN_n3w_b4ck

La otra parte la obtuvimos de la siguiente línea del código, que cambia la letra o por 0, y la concatenamos al final del texto anterior.

La línea de la macro que reemplaza o por 0 para completar la flag

Completando nuestra flag con la información que obtuvimos:

HTB{n3w_VPN_##########}

Gracias por leer.