Campaña de malware BumbleBee dirigida a México

Visión general

BumbleBee es un malware complejo utilizado como dropper/loader por varios ciberactores, principalmente operadores de ransomware, con el que algunos cibercriminales distribuyen beacons de Cobalt Strike, la herramienta “Sliver” utilizada para ejercicios de Red Team, para entregar shellcodes de Metasploit/Meterpreter, así como los troyanos BlackGuard, IcedID y RedLine Stealer.

BumbleBee se distribuye mediante phishing, haciéndose pasar por empresas de servicios o utilizando los servicios de correo electrónico de organizaciones previamente comprometidas. SCILabs identificó esta campaña de malware, la última semana de junio México.

En la campaña identificada, el correo electrónico con el que se distribuye la amenaza indica que se ha generado una orden de compra a nombre de la víctima y que, para obtener más detalles, se debe abrir el archivo adjunto, con la contraseña especificada en el correo. Es importante mencionar que el nivel de detección del malware por parte de las soluciones de seguridad comerciales es medio, de acuerdo con algunas muestras públicas subidas por terceros a VirusTotal.

¿Cómo puede afectar a una organización?

El objetivo principal de esta campaña es funcionar como un dropper, para después recolectar información del dispositivo infectado, enviarla al servidor de comando y control, y luego descargar código malicioso adicional, todo ello a través de un complejo mecanismo de evasión.

Si el ataque tiene éxito, la confidencialidad, integridad y disponibilidad de la información de las organizaciones podría verse afectada. Además, de acuerdo con algunas investigaciones públicas, este malware se utiliza principalmente como vector de entrada inicial en ataques de ransomware como CONTI, LockBit, Diavol y AvosLocker, entre otros. Así pues, si se completa todo el ciclo del ataque, el impacto en la operatividad de la víctima puede ser elevado.

Análisis

Contexto de la amenaza

Durante el monitoreo de amenazas de la región, se observó un correo electrónico sospechoso con un archivo adjunto, el cual se trataba de una supuesta orden de compra de una renovación de contrato de Oracle, enviado desde otra cuenta de correo de la organización víctima.

Existe la hipótesis de que esta cuenta fue previamente comprometida y que desde ella se están enviando mensajes a otros miembros de la organización, ya que, al analizar las cabeceras de los correos, solo se encontró actividad de usuarios SMTP de la propia organización.

El correo electrónico analizado contiene un archivo adjunto llamado 06-02-2022_34.zip, protegido con una contraseña, y dentro hay un archivo ISO con el mismo nombre.

Figura 1 – Correo electrónico usado para distribuir BumbleBee

Resumen técnico

06-02-2022_34.iso

El archivo ISO mencionado contiene a su vez dos archivos: documents.lnk y taxep.dll, este último con el atributo “oculto”. El archivo ISO no tiene métodos ni funciones de auto ejecución, por lo que el usuario debe montarlo y hacer doble clic en el icono de acceso directo, para que el dispositivo se vea comprometido.

Contenido del archivo ISO

Figura 2 – Contenido del archivo ISO

documents.lnk

El acceso directo utiliza la herramienta rundll32.exe para poder ejecutar la DLL embebida en el archivo ISO. Cuando el usuario hace clic en el archivo, se ejecuta la función principal del artefacto malicioso y se inicia el flujo de infección.

Sintaxis de DLL maliciosaSintaxis de DLL maliciosa

Figura 3 – Sintaxis de ejecución de la DLL maliciosa

taxep.dll

Al realizar un análisis estático del artefacto, se observó que tiene una función llamada BKuENphAxN, responsable de desempaquetar el código malicioso en memoria, desencadenar la verificación del entorno y el proceso de infección del equipo.

Función principal del artefacto

Figura 4 – Función principal del artefacto

Adicionalmente, en la sección de recursos del artefacto no se observaron elementos maliciosos ni el uso de recursos externos para su ejecución. SCILabs también encontró que el artefacto está desarrollado en C++ para arquitecturas de 64 bits y fue compilado a principios de junio de este año, lo que sugiere que se trata de una nueva versión del malware BumbleBee.

Estructura del archivo DLL

Figura 5 – Estructura del archivo DLL

Al ejecutarse, el artefacto comienza realizando una serie de complejas comprobaciones en las que revisa el entorno de ejecución en busca de máquinas virtuales o sandbox, herramientas comúnmente utilizadas para realizar análisis de malware y software para la monitorización de conexiones. El artefacto termina su ejecución si identifica alguno de estos procesos en la máquina de la víctima.

Además, el malware comprueba mediante la utilidad WMI, el nombre de usuario, el nombre de dominio, la información del sistema operativo, los detalles del adaptador de red y el hardware disponible en el dispositivo. La información recopilada se comparte con los sitios de comando y control de los operadores del malware. Por último, comprueba que el nombre de usuario de la víctima no coincida con la lista definida en el código, si el nombre de usuario coincide, la ejecución se detendrá.

Lista de nombres de usuario en memoria

Figura 6 – Lista de nombres de usuario en memoria

Capacidades de BumbleBee

BumbleBee utiliza múltiples comandos para llevar a cabo sus actividades maliciosas. A continuación, se listan los observados en el análisis del malware:

  • Comandos dij/shi (inyección de DLL shellcodes)

Si el malware recibe el comando “dij” o “shi“, realizará una inyección en memoria del artefacto DLL o shellcode, ambos enviados desde el sitio de comando y control (codificados en base64). Además, el malware puede inyectarse en algunas de las siguientes aplicaciones del sistema operativo:

C:\Program Files (x86)\Windows Photo Viewer\ImagingDevices.exe

C:\Program Files (x86)\Windows Mail\wab.exe

C:\Program Files (x86)\Windows Mail\wabmig.exe

Es importante mencionar que, a diferencia de la mayoría del malware conocido que utiliza el flushing de procesos o la inyección de DLL, este loader utiliza la inyección de llamadas a procedimientos asíncronos (APC) para ejecutar el shellcode.

  • Comando dex (descarga de código malicioso adicional)

Cuando el malware recibe el comando “dex“, descarga y ejecuta payloads adicionales. El archivo generado se llamará wab.exe y se almacenará en la carpeta %APPDATA%.

Para generar el artefacto, el malware utiliza las funciones CreateFileA() y WriteFile(), que se ejecutan a través del objeto tipo COM.

  • Comando ins (persistencia del malware)

Si el malware recibe el comando “ins“, se encargará de generar persistencia copiando la DLL maliciosa al directorio %APPDATA%/{UNIQUE_IDENTIFIER}/{RANDOM_NAME_FOLDER} y creará un script (VBScript) que cargará dicha DLL a través de una tarea programada con un nombre aleatorio de hasta 7 caracteres.

  • Comando sdl (desinstalación del malware)

El comando “sdl” utiliza PowerShell para eliminar archivos del sistema infectado, sin necesidad de la interacción de la víctima.

Comunicación con el servidor de comando y control

La elección del servidor de comando y control utilizado por el malware es dinámica. En primer lugar, el loader elige una dirección IP de la lista definida en el código del malware y enviará una solicitud a través de HTTPS mediante el método GET. El envío incluye la siguiente información en formato JSON (cifrada con el algoritmo RC4):

Identificador Descripción
client_id Contiene el identificador único universal (UUID) del dispositivo de la víctima, en formato MD5.
group_name La llave contiene un valor codificado, que representa el grupo al que se añadirá el BOT (host comprometido).
sys_version Contiene la versión del sistema operativo de la víctima.
client_version El valor por defecto es 1 (posiblemente la versión del malware).
user_name Nombre de usuario de la víctima.
domain_name Dominio al que pertenece la víctima.
task_state El valor por defecto es 0. El valor se cambia sólo cuando se ejecutan los comandos ‘ins’ o ‘sdl’.
task_id El valor por defecto es 0. El valor se cambia sólo cuando se ejecutan los comandos ‘ins’ o ‘sdl’.

Una vez que el servidor recibe la solicitud, responde con los siguientes datos, en formato JSON:

Identificador

Descripción

response_status

Es un valor booleano que se utiliza para validar que el servidor ha analizado correctamente la petición de malware. En caso de tener éxito, el servidor de comando y control devolverá el valor 1.

tasks

Un arreglo que contiene varios nombres.

task

Nombre con el que se registrará la tarea si se generó la persistencia.

task_id

ID de la tarea recibida (establecido por los operadores de malware)

task_data

Datos utilizados para la ejecución del malware. La información está codificada en Base64.

file_entry_point

No se obtuvo más información relacionada con este valor.

En el análisis de artefactos, no se observó ninguna descarga adicional de malware, sin embargo, esto podría deberse a una interrupción momentánea de los servidores de comando y control.

 

TTP observados, alineados con el marco ATT&CK de MITRE

mitre att&ck

Tabla 1 – TTP observados, alineados con el macro ATT&CK de MITRE

Flujo de Ataque

Flujo de ataque BumbleBee

Figura 7 – Flujo de infección de BumbleBee

Conclusiones

BumbleBee es un malware que ha estado activo desde febrero de 2022 y ha sufrido varias modificaciones en su código, de las cuales destacan las complejas técnicas antianálisis y la alta ofuscación en sus funciones. Los ciberdelincuentes también han modificado constantemente los sitios donde almacenan sus artefactos, con el fin de evadir los filtros antispam de las víctimas; algunos de los servicios empleados por los atacantes son TransferXL, TransferNow, WeTransfer y OneDrive.

De acuerdo con las investigaciones realizadas por SCILabs, dependiendo del tipo de ciberdelincuente que distribuya el malware, BumbleBee puede descargar otro tipo de herramientas maliciosas como Cobalt Strike, Meterpreter, u otro troyano para controlar el dispositivo infectado de forma remota.

Según múltiples publicaciones, en la mayoría de los ataques en los que se ha visto a BumbleBee, el objetivo era implantar ransomware de diferentes familias como CONTI, LockBit, Diavol o AvosLocker; por lo que es importante detectar este malware en sus primeras etapas, para evitar un mayor impacto. SCILabs recomienda utilizar la detección basada en reglas YARA, ya que algunas funciones empleadas por el malware siguen siendo las mismas desde sus primeras versiones.

Por último, debido a su complejidad, constante actualización y las similitudes observadas con otros códigos maliciosos, BumbleBee es un malware con capacidades similares a Trickbot o BazarLoader, dos herramientas multifuncionales muy utilizadas por ciberdelincuentes en Latinoamérica para desplegar malware de forma eficaz. Por ello SCILabs cree que este malware estará activo durante varios meses más, infectando a una gran cantidad de dispositivos.

IOC

328B54CC32BD231BA1960EECAF9BE1B5

7CA9DDFFAC63FC8F8AB4210230D1225A

6F9725B0842ED9D13BB8F7C64160E7AC

4EA71C4B2CEA10060551B7F2C0B155BD

367B6B238775DB64F5DB5A0D8FAF0D0F

96311317EB4A91F0919637A0FF9D8798

F04B1B5C47B7AA791006E106BA0256AE

185[.]156[.]172[.]123

64[.]44[.]101[.]250

103[.]175[.]16[.]121

146[.]19[.]173[.]224

145[.]239[.]30[.]26

194[.]37[.]97[.]135

103[.]175[.]16[.]117

37[.]120[.]198[.]248

146[.]19[.]173[.]139

185[.]62[.]56[.]201

192[.]236[.]161[.]191

192[.]236[.]249[.]68

193[.]239[.]84[.]247

154[.]56[.]0[.]221

192[.]236[.]192[.]85

193[.]239[.]84[.]254

192[.]236[.]194[.]136

192[.]119[.]64[.]21

64[.]44[.]102[.]6

103[.]175[.]16[.]107

64[.]44[.]135[.]250

103[.]175[.]16[.]59

54[.]38[.]136[.]187

176[.]107[.]177[.]124

192[.]236[.]160[.]254

68[.]233[.]238[.]105

198[.]98[.]57[.]91

63[.]141[.]248[.]253

79[.]110[.]52[.]56

185[.]62[.]58[.]238

180[.]23[.]251[.]29

194[.]135[.]33[.]16

115[.]239[.]67[.]202

53[.]96[.]32[.]99

141[.]98[.]168[.]70

58[.]10[.]55[.]201

103[.]175[.]16[.]107

18[.]215[.]29[.]142

174[.]150[.]214[.]40

102[.]109[.]16[.]255

162[.]144[.]249[.]150

210[.]251[.]188[.]194

112[.]110[.]146[.]153

83[.]142[.]26[.]147

35[.]17[.]203[.]69

31[.]215[.]170[.]180

146[.]70[.]124[.]77

79[.]133[.]212[.]60

192[.]21[.]12[.]118

133[.]133[.]249[.]24

165[.]158[.]204[.]41

137[.]253[.]55[.]69

140[.]208[.]107[.]161

115[.]103[.]22[.]1

213[.]203[.]201[.]199

154[.]56[.]0[.]100

108[.]28[.]254[.]44

28[.]78[.]74[.]145

119[.]177[.]224[.]146

180[.]184[.]129[.]160

70[.]77[.]209[.]88

126[.]68[.]7[.]249

65[.]95[.]20[.]151

144[.]52[.]138[.]51

149[.]57[.]112[.]159

65[.]254[.]82[.]66

57[.]156[.]134[.]113

143[.]117[.]20[.]123

TAXEP.DLL

DOCUMENTS.LNK

UPLAM.DLL

%APPDATA%/{UNIQUE_IDENTIFIER}/{RANDOM_NAME_FOLDER}

%APPDATA%/WAB.EXE