Macrome Lector documentos de Macros para Equipos Rojos
Macrome Lector documentos de Macros para Equipos Rojos

Macrome: Lector/Escritor de Documentos de Macros para Equipos Rojos

Una entrada de blog correspondiente que describe lo que esta herramienta hace realmente se puede encontrar aquí. Macrome también proporciona una funcionalidad que puede ser utilizada para revertir muchas de estas ofuscaciones en apoyo de los analistas y defensores de malware. La herramienta iba a incluir originalmente la funcionalidad de procesar macros para ayudar a eludir las fórmulas ofuscadas, pero @DissectMalware ya ha creado una fantástica herramienta llamada XLMMacroDeobfuscator que va más allá de todo lo que estaba planeando colocar.

Ejemplo de uso de Macrome
Ejemplo de uso de Macrome

Instalación / Construcción

Clona o descarga este repositorio, la herramienta puede ser ejecutada usando dotnet – por ejemplo:

dotnet run -- build --decoy-document Docs\decoy_document.xls --payload Docs\popcalc.bin 

O,

dotnet build
cd bin/Debug/netcoreapp2.0
dotnet Macrome.dll deobfuscate --path obfuscated_document.xls

Ten en cuenta que se requiere una versión 5.0+ de dotnet para que funcione como está configurada – puede ser obtenida de https://dotnet.microsoft.com/download/dotnet/5.0.

Las versiones binarias de la herramienta que no requieren dotnet y contienen un binario ejecutable se pueden encontrar en la sección de versiones para Windows, OSX y Linux.

Uso

Ejecute Macrome utilizando dotnet run desde el directorio de la solución (solution.sln), o dotnet contra el binario construido de Macrome. Hay tres modos de operación para Macrome – Build mode, Dump mode, y Deobfuscation mode.

Build Mode o Modo de Construcción

Ejecuta Macrome con el comando build para generar un documento de Excel que contenga una hoja de macros ofuscada utilizando un documento señuelo y una carga útil de macro proporcionada. dotnet Macrome.dll build -h mostrará las instrucciones de uso completas.

Por ejemplo, para construir un documento utilizando el documento señuelo path/to/decoy_document.xls y el shellcode binario x86 almacenado en path/to/shellcode.bin, ejecuta dotnet Macrome.dll build --decoy-document path/to/decoy_document.xls --payload /path/to/shellcode.bin. Esto generará un documento XLS 2003 que tras ser abierto y tener el botón “Enable Content” pulsado, ejecutará el shellcode shellcode.bin.

¿Cómo debo ejecutar esto?

El resto de la documentación explicará cada parámetro/flag en detalle, pero ahora mismo lo “último y mejor” que ofrece Macrome se puede obtener ejecutando:

Macrome build --decoy-document decoy_document.xls --payload beacon.bin --payload64-bit beacon64.bin --payload-method Base64 --method ArgumentSubroutines --password VelvetSweatshop --preamble preamble.txt --output-file-name ReadyToPhish.xls

Dump Mode o Modo Volcado

Ejecuta Macrome con el comando dump para imprimir los registros BIFF8 más relevantes de documentos arbitrarios. Esta funcionalidad es similar a la funcionalidad de volcado de macros de olevba, pero tiene un procesamiento más completo de las entradas Ptg de los edge-cases para ayudar a asegurar que el formato sea lo más parecido a las entradas reales de FÓRMULA de Excel. Esto es lo que he estado usando para depurar algunos de los extraños documentos edge-cases que se ha estado generando mientras se hacía esta herramienta, así que es comparativamente robusto.

Hay toneladas de edge-cases que no son compatibles en este momento, así que si encuentras un documento que no volcar correctamente el contenido de, por favor, abrir un tema y compartir el documento como un archivo zip.

🤞 ¡El Gran Hermano te vigila, pero sabemos cómo detenerlo!

¡No enviamos spam! Lee nuestra Política de Privacidad para más información.

El comando dump sólo requiere un argumento de ruta (path) que apunte al archivo de destino. Un ejemplo de invocación es:

dotnet Macrome.dll dump --path docToDump.xls

La mayoría de las flags que tiene el comando dump son para depuración, pero el dump-hex-bytes puede ser útil para los usuarios que quieran ver las cargas útiles de bytes individuales para los registros relevantes. Esta es una funcionalidad similar a la de BiffView, aunque por defecto sólo se mostrarán las entradas específicas de maldoc.

Deobfuscate Mode o Modo de Desofuscación

Ejecuta Macrome con el comando deobfuscate para tomar un documento binario XLS ofuscado e intentar revertir varios comportamientos anti-análisis. dotnet Macrome.dll deobfuscate -h mostrará las instrucciones completas de uso. Actualmente, por defecto este modo hará lo siguiente:

  • Desocultar todas las hojas independientemente de su estado de ocultación
  • Normalizar las etiquetas especificadas manualmente para todas las entradas Lbl que Excel interpretará como entradas Auto_Open a pesar de que su nombre no coincida con esa cadena.

Por ejemplo, para desofuscar un archivo de macros XLS 2003 malicioso en la path/to/obfuscated_file.xls, ejecuta dotnet Macrome.dll deobfuscate --path path/to/obfuscated_file.xls. Esto generará una copia del archivo ofuscado que será más fácil de analizar manualmente o con herramientas.

NOTA

Esto no hace mucho todavía, es principalmente para demostrar cómo el uso de la biblioteca b2xtranslator modificada puede ayudar a automatizar la desofuscación. Pronto habrá más funciones útiles.

Mi Carro Close (×)

Tu carrito está vacío
Ver tienda