volvervolver
Inteligencia artificial en Ciberseguridad

POR:
R&D + i Team

COMPARTIR

VBA Stomping

VBA Stomping es una técnica de evasión utilizada por ciberdelincuentes para ocultar código malicioso en documentos de Microsoft Office, específicamente en macros de VBA (Visual Basic for Applications). Esta técnica permite a los atacantes evitar la detección por parte de las soluciones de seguridad al alterar las partes de los archivos de macro que los programas antivirus y otras herramientas de seguridad escanean normalmente.

Definición

VBA Stomping se refiere a la manipulación del flujo de ejecución de un archivo de macro de VBA para que el código malicioso pase desapercibido. Básicamente, los atacantes insertan el código malicioso en partes del archivo que no son analizadas rutinariamente por las herramientas de seguridad, o lo enmascaran de tal manera que parece inofensivo. Esta técnica se aprovecha de la estructura y funcionamiento del lenguaje VBA y de los archivos que lo contienen.

Breve Historia y Origen de la Técnica

El uso de macros de VBA como vector de ataque no es nuevo; se remonta a la década de 1990 con el surgimiento de virus de macro como el famoso "Melissa" en 1999. A medida que las defensas contra estas amenazas evolucionaron, los atacantes desarrollaron métodos más sofisticados para evadir la detección.
El concepto surgió como una evolución natural en la guerra de ingenio entre atacantes y defensores. Mientras que las soluciones de seguridad comenzaron a mejorar en la detección de macros maliciosas, los atacantes idearon formas de modificar los metadatos y la estructura interna de los archivos de macro. De este modo, lograron que el código malicioso permaneciera oculto durante las revisiones de seguridad estándar. Aunque el término "VBA Stomping" es relativamente reciente, la técnica en sí ha estado en desarrollo y perfeccionamiento durante varios años, impulsada por la necesidad de los atacantes de mantenerse un paso adelante de las defensas de seguridad.

Funcionamiento

Se basa en la manipulación de la estructura interna de los archivos de macro. Los documentos de Microsoft Office que contienen macros tienen dos componentes principales:

 • El Código de Macro (VBA): Este es el script que define las acciones automatizadas. Se almacena en un formato de texto claro dentro del documento.

 • Metadatos de Proyecto VBA: Estos son datos adicionales que describen el proyecto VBA, incluyendo referencias a bibliotecas, propiedades del proyecto y firmas digitales.

El proceso generalmente sigue estos pasos:

 • Creación del Documento Malicioso: El atacante crea un documento de Office con una macro maliciosa.

 • Modificación del Documento: Utilizando herramientas especializadas, el atacante modifica los metadatos del proyecto VBA. Esta modificación puede incluir la alteración de referencias o la ofuscación de ciertas partes del código.

 • Inserción del Código Malicioso: El código malicioso se inserta en secciones del archivo de macro que no son escaneadas rutinariamente por las soluciones de seguridad, o se enmascara de manera que parezca inofensivo..

 • Distribución del Documento: El documento malicioso se distribuye a las víctimas a través de correos electrónicos de phishing, sitios web comprometidos u otros vectores de ataque.

 • El resultado es que, cuando el documento se abre, el código malicioso se ejecuta sin ser detectado por las soluciones de seguridad tradicionales que analizan el contenido de las macros y los metadatos.

Comparación con Otras Técnicas de Evasión Similares

VBA Stomping se distingue de otras técnicas de evasión por su enfoque en la manipulación de la estructura interna de los archivos de macro. Aquí hay una comparación con algunas técnicas similares:

Ofuscación de Código VBA

Técnica: Implica la modificación del código VBA para hacerlo menos legible y más difícil de analizar.
Comparación: Mientras que la ofuscación se centra en hacer que el código sea difícil de entender, VBA Stomping manipula los metadatos y la estructura del archivo para ocultar el código malicioso.

DDE (Dynamic Data Exchange) Attack

Técnica: Utiliza la funcionalidad DDE de Microsoft Office para ejecutar comandos sin necesidad de macros.
Comparación: DDE explota una característica diferente de Office y no involucra la modificación de macros o metadatos de VBA. VBA Stomping, en cambio, es específico para macros de VBA.

Macro Packing

Técnica: Incrusta código malicioso dentro de macros empaquetadas o comprimidas.
Comparación: Aunque similar en cuanto a que ambos métodos buscan ocultar el código malicioso, el empaquetado se enfoca en la compresión y la inserción de código, mientras que VBA Stomping se enfoca en la manipulación estructural.

Polyglot Files

Técnica: Crea archivos que pueden ser interpretados de múltiples maneras por diferentes programas, permitiendo que el contenido malicioso pase desapercibido.
Comparación: Los archivos polimórficos se enfocan en la multifuncionalidad del archivo, mientras que VBA Stomping es específico para macros y su estructura dentro de los documentos de Office.

Evolución de la técnica a lo largo del tiempo

La técnica ha evolucionado significativamente desde su aparición, adaptándose y sofisticándose para evadir las crecientes capacidades de detección de los sistemas de seguridad. Inicialmente, estos ataques se basaban en aprovechar macros maliciosas incrustadas en documentos de Microsoft Office, que se distribuían a través de correos electrónicos de phishing. Con el tiempo, los atacantes comenzaron a refinar esta técnica para evitar la detección por parte de los antivirus y otras soluciones de seguridad.

Primeras Fases: En sus inicios, consistía en modificar directamente el código VBA de las macros para insertar payloads maliciosos. Los sistemas de detección eran relativamente ineficaces, permitiendo a los atacantes lograr un alto grado de éxito.

Mejoras en la ofuscación: A medida que los mecanismos de detección comenzaron a mejorar, los atacantes introdujeron técnicas avanzadas de ofuscación. Estas incluían la codificación del payload malicioso y el uso de métodos complejos para ocultar las instrucciones maliciosas dentro del código VBA aparentemente legítimo.

Automatización y Herramientas: La creación de herramientas automatizadas para generar macros maliciosas y realizar VBA Stomping permitió a los atacantes menos experimentados utilizar esta técnica. Esto resultó en un aumento en la cantidad de ataques y una mayor diversificación de los métodos utilizados.

Evasión de Análisis Dinámico: Los atacantes también comenzaron a desarrollar técnicas para evadir el análisis dinámico, como la introducción de comprobaciones de entorno y la ejecución de código malicioso solo bajo ciertas condiciones. Esto hizo que la detección basada en comportamiento fuera más difícil de implementar.

Potenciales desarrollos y mejoras en la técnica

La evolución constante de las capacidades de detección y respuesta en ciberseguridad empuja a los atacantes a innovar continuamente. En el futuro, podríamos ver varias mejoras y desarrollos en la técnica de VBA Stomping:

 • Ofuscación Avanzada: Se espera que las técnicas de ofuscación se vuelvan aún más sofisticadas, utilizando algoritmos más complejos y variaciones dinámicas del código para evitar la detección por parte de los motores antivirus basados en firmas.

 • Uso de Inteligencia Artificial: Los atacantes podrían emplear inteligencia artificial y aprendizaje automático para crear macros que se adapten dinámicamente a las defensas específicas de una red, ajustando su comportamiento para maximizar la evasión.

 • Integración con Técnicas Polimórficas: La integración de VBA Stomping con técnicas polimórficas permitirá que cada instancia del ataque sea única, dificultando la identificación y el bloqueo de estas amenazas por parte de los sistemas de detección basados en patrones.

 • Ataques Multietapa: Los futuros desarrollos pueden incluir la combinación de VBA Stomping con otros vectores de ataque en campañas multietapa. Por ejemplo, una macro maliciosa podría ser solo la primera fase de un ataque más complejo que incluya exploits adicionales y movimientos laterales dentro de la red objetivo.

Conclusión

En resumen, VBA Stomping representa una técnica avanzada de evasión que explota las capacidades del lenguaje Visual Basic for Applications (VBA) para ocultar código malicioso y evadir las soluciones de seguridad.
El impacto de esta técnica es significativo, con amenazas que pueden afectar a diversos sectores y empresas. La detección y mitigación de esta técnica son desafíos críticos que requieren métodos especializados y una sólida comprensión de las mejores prácticas en ciberseguridad. Es esencial que las organizaciones implementen soluciones de seguridad adecuadas y fomenten una cultura de concienciación sobre las amenazas emergentes.

La evolución de VBA Stomping muestra que las técnicas de evasión continúan avanzando, lo que subraya la necesidad de mantenerse actualizado con las últimas tendencias y desarrollos en ciberseguridad. Mirando hacia el futuro, es probable que veamos nuevas variantes y mejoras en esta técnica, lo que hace imperativo que los profesionales de seguridad sigan innovando y adaptándose.

En última instancia, la concienciación y la formación continua en ciberseguridad son fundamentales para protegerse contra amenazas como VBA Stomping. Es necesario que todas las organizaciones tomen medidas proactivas para fortalecer sus defensas y estar mejor preparadas para enfrentar estos desafíos para poder mitigar eficazmente los riesgos asociados a estas técnicas avanzadas de evasión.