Los investigadores de CrowdStrike detallaron múltiples técnicas de evasión implementadas por un descargador de malware avanzado llamado GuLoader (también conocido como CloudEyE).

GuLoader utiliza un cargador de código shell polimórfico para evitar las soluciones de seguridad tradicionales, los expertos mapearon todos los valores hash DJB2 incrustados para cada API utilizada por el código malicioso.

El malware utiliza una técnica antianálisis para evitar la ejecución en entornos virtualizados.

“Al diseccionar el shellcode de GuLoader, CrowdStrike reveló una nueva técnica antianálisis destinada a detectar si el malware se ejecuta en un entorno hostil, escaneando toda la memoria del proceso en busca de cualquier cadena relacionada con la máquina virtual (VM)”, dice el análisis publicado por CrowdStrike.

“Nuevo mecanismo de inyección de código redundante significa asegurar la ejecución del código mediante el uso de ensamblador en línea para eludir los ganchos de modo de usuario de las soluciones de seguridad”.

GuLoader apareció por primera vez en el panorama de amenazas en 2019, fue utilizado por actores de amenazas para descargar múltiples troyanos de acceso remoto (RAT) como AgentTesla, FormBook, Nanocore, NETWIRE y el RAT Parallax.

Las primeras versiones de GuLoader se distribuían a través de mensajes de spam con archivos adjuntos que contenían el ejecutable malicioso. Las variantes más recientes se distribuían a través de un archivo Visual Basic Script (VBS).

“GuLoader también empezó a emplear técnicas antianálisis avanzadas para eludir la detección, como antidebug, antisandbox, anti-VM y antidetección para dificultar el análisis”, dice el análisis.

Una variante reciente de GuLoader analizada por los expertos muestra un despliegue en varias fases:

La primera etapa utiliza un archivo dropper VBS para soltar una carga útil empaquetada en la segunda etapa en una clave del registro. A continuación, utiliza un script de PowerShell para ejecutar y desempaquetar la carga útil de la segunda etapa desde la clave de registro dentro de la memoria.

La carga útil de segunda etapa ejecuta todas las rutinas antianálisis (descritas a continuación), crea un proceso de Windows (por ejemplo, un ieinstal.exe) e inyecta el mismo shellcode en el nuevo proceso.

La tercera etapa vuelve a implementar todas las técnicas antianálisis, descarga la carga útil final de un servidor remoto y la ejecuta en la máquina de la víctima.

El malware implementa comprobaciones antidepuración y antidesensamblaje para detectar la presencia de puntos de interrupción utilizados para el análisis del código.

Fuente: securityaffairs.co