Introducción
En un caso reciente de respuesta a incidentes, detectamos una variante del ransomware Mimic con algunas características de personalización interesantes. Los atacantes pudieron conectarse a través de RDP al servidor de la víctima después de un ataque de fuerza bruta exitoso para luego ejecutar el ransomware. Después de eso, los adversarios pudieron elevar los privilegios utilizando la vulnerabilidad CVE-2020-1472 (Zerologon).
La variante identificada abusa de la biblioteca Everything y proporciona una interfaz gráfica de usuario fácil de usar para que el atacante personalice las operaciones realizadas por el malware. También tiene funciones para deshabilitar los mecanismos de seguridad y ejecutar comandos del sistema.
Esta variante del ransomware se llama Elpaco y contiene archivos con extensiones con el mismo nombre. En esta publicación, brindamos detalles sobre Elpaco, además de los ya compartidos, así como las tácticas, técnicas y procedimientos (TTP) empleados por los atacantes.
Análisis
Primer vistazo a la muestra
Nuestro análisis comenzó con una inspección básica de la muestra. Primero, verificamos sus propiedades, como el tipo de archivo, las cadenas y las capacidades, como se muestra en las imágenes a continuación:
Lo más interesante es que el malware utiliza un mecanismo de instalación 7-Zip, por lo que la mayoría de las herramientas de análisis de malware lo clasifican como empaquetado y genera sospechas en los mecanismos de detección.
Inspeccionamos el archivo como un ZIP e identificamos que la muestra abusa de la biblioteca Everything, la cual es un motor de búsqueda de nombres de archivos legítimo que proporciona búsquedas rápidas y actualizaciones en tiempo real al indexar archivos en sistemas Windows.
El artefacto abusa de esta biblioteca de forma similar al ransomware Mimic descubierto en el pasado por TrendMicro: contiene aplicaciones Everything legítimas ( Everything32.dll y Everything.exe) y un archivo protegido con contraseña con cargas maliciosas que se llama Everything64.dll. El archivo restante en el archivo es una utilidad legítima de 7-Zip para extraer el contenido del archivo malicioso. El ransomware Mimic busca archivos específicos utilizando las API de Everything, cifra los datos del usuario, exige pagos de rescate y exhibe funciones sofisticadas como el cifrado multiproceso para acelerar el ataque. Mimic también evita la detección al ofuscar su código, lo que dificulta que las herramientas de seguridad identifiquen y prevengan el ataque. Al analizar las cadenas de Elpaco, identificamos el comando utilizado para extraer el archivo Everything64.dll, incluida su contraseña.
1 |
2e434 RunProgram="hidcon:7za.exe x -y -p7183204373585782 Everything64.dll" |
Comando de extracción 7-Zip
Cuando se ejecuta, el malware descomprime el archivo y coloca los archivos necesarios en el directorio %AppData%\Local, en un directorio separado nombrado como un UUID generado aleatoriamente.
1 |
C:\Users\user\AppData\Local\BD3FDDDF-6CAF-3EBC-D9CF-C8DF72D8F78A\ |
Directorio destino
Contenido de la muestra
El contenido del archivo es necesario para cifrar los archivos y realizar tareas adicionales en el sistema operativo.
Por ejemplo, el binario DC.exe es la herramienta de Defender Control para habilitar y deshabilitar la protección de Windows Defender. Se activa con la muestra después de descomprimir.
La muestra también incluye un archivo llamado session.tmp en el mismo directorio de destino. Se trata de una llave de sesión que se utiliza para continuar con el cifrado en caso de que el proceso malicioso se interrumpa (por ejemplo, mediante la eliminación de un proceso).
Sin embargo, el artefacto más interesante es el svhostss.exe, que es la consola principal que utiliza el malware. Vale la pena mencionar que este nombre imita de cerca a svchost.exe, que es un proceso legítimo de Windows. Este esquema de nombres suele ser utilizado por los actores de amenazas como una forma de confundir a las personas menos experimentadas durante el análisis de memoria. El svhostss.exe es de hecho el binario que ejecuta las instrucciones maliciosas. El malware también viene con una GUI, ubicada en el mismo directorio bajo el nombre gui40.exe, que interactúa con la consola y facilita operaciones como la personalización de las propiedades del ransomware (como una nota de rescate, directorios/archivos permitidos, etc.) y la realización de acciones en el sistema de la víctima.
En la GUI, el actor de amenazas puede seleccionar todas las unidades para cifrar, realizar la inyección de procesos para ocultar los procesos maliciosos, personalizar la nota de rescate, cambiar la extensión de cifrado, establecer el orden de cifrado deseado según el formato de archivo original y excluir directorios, archivos y formatos específicos del cifrado.
También es posible matar ciertos procesos especificados por el atacante y ejecutar comandos del sistema, lo que hace que esta amenaza sea altamente personalizable.
Importación y exportación de datos
El ejemplo también permite importar y exportar los archivos de configuración del malware según los parámetros establecidos por el atacante. Hay algunas plantillas integradas dentro del malware que el atacante puede elegir. La imagen a continuación muestra un archivo de configuración exportado; tenga en cuenta que cada configuración está precedida por un número que representa su ID.
La interfaz de la consola, que se inicia junto con la GUI, recopila información detallada sobre el sistema, incluidas sus unidades y recursos compartidos de archivos.
El malware crea las siguientes llaves de registro; tomar en cuenta que todos los archivos con la extensión predeterminada .ELPACO-team se clasifican como “mimicfiles” y están configurados para abrir la nota de rescate ( Decryption_INFO.txt).
1 2 3 4 |
HKLM\SOFTWARE\Classes\.ELPACO-team\: "mimicfile" HKLM\SOFTWARE\Classes\mimicfile\shell\open\command\: "notepad.exe "C:\Users\user\AppData\Local\Decryption_INFO.txt"" |
Además, el artefacto configura la llave de registro Run para ejecutar svhostss.exe y mostrar la nota de rescate al iniciar la máquina.
1 2 3 4 5 6 |
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\svhostss: ""C:\Users\user\AppData\Local\BD3FDDDF-6CAF-3EBC-D9CF- C8DF72D8F78A\svhostss.exe"" HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\svhostss.exe: "notepad.exe "C:\Users\user\AppData\Local\Decryption_INFO.txt"" |
Es interesante destacar que el binario principal, svhostss.exe, no está muy protegido del análisis, por lo que pudimos ver fácilmente algunas ejecuciones de comandos realizadas por el malware.
También pudimos encontrar importaciones sospechosas de funciones como FindFirstFileW, WriteFile, FindNextFileW y ShellExecuteW. Estas funciones se utilizan normalmente en muestras de ransomware para la manipulación de archivos, mientras que la última se suele utilizar para llamar a un programa externo (como PowerShell, cmd.exe o un componente de terceros) para eliminar el malware.
En el caso de las variantes Elpaco y Mimic, utiliza la función SetSearchW exportada desde la DLL legítima Everything para realizar búsquedas en los archivos de la víctima, como se muestra en las imágenes a continuación. Curiosamente, no se identificaron funciones para la exfiltración de datos.
Detección y análisis de evasión
El artefacto genera un nuevo par de claves X25519 para cada archivo que se va a cifrar, calcula el secreto compartido y luego deriva la clave ChaCha20 utilizando HKDF-SHA256.
Como se muestra en la imagen a continuación, durante la ejecución, todos los procedimientos realizados por el ransomware se registran en el archivo C:\temp\MIMIC_LOG.txt. El artefacto también deja una copia del archivo clave session.tmp en el mismo directorio C:\temp.
El último paso de la ejecución del malware es ejecutar el comando Del para eliminar todos los archivos ejecutables, de configuración, DLL, archivos batch y archivos relacionados con la base de datos en el directorio del ransomware. Lo interesante es que antes de eliminar, la muestra utiliza la herramienta fsutil LOLBin para borrar el archivo svhostss.exe, como se muestra en la imagen anterior.
Reglas YARA
Basándonos en nuestro análisis de la muestra, desarrollamos las siguientes reglas YARA para detectar tanto al dropper, así como la interfaz de consola que utiliza la GUI. Las reglas tienen en cuenta el tipo de archivo, las cadenas relevantes y las importaciones de bibliotecas.
Elpaco dropper:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
import "pe" rule elpaco_dropper { meta: author = "Kaspersky - GERT" description = "Yara rule for detecting the Elpaco dropper." target_entity = "file" strings: $s1 = "-p7183204373585782" wide ascii nocase $s2 = "Everything64.dll" wide ascii nocase $s3 = "ELPACO-team.exe" wide ascii nocase condition: (2 of ($s*)) and pe.imports("SHELL32.dll", "ShellExecuteW") and pe.imports("KERNEL32.dll", "LoadLibraryA") } |
svhostss.exe (console interface):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
import "pe" rule elpaco_console { meta: author = "Kaspersky - GERT" description = "Yara rule for detecting the Elpaco/Mimic main console." target_entity = "file" strings: $s1 = "powershell.exe -ExecutionPolicy Bypass" wide ascii nocase $s2 = "Software\\Classes\\mimicfile\\shell\\open\\command" wide ascii nocase $s3 = "cmd.exe /c DC.exe /D" wide ascii nocase $s4 = "MIMIC_LOG.txt" wide ascii nocase $s5 = "mimicfile" wide ascii nocase $s6 = "Everything Setup..." wide ascii nocase $s7 = "[*] Everything Query..." wide ascii nocase condition: (5 of ($s*)) and pe.imports("Everything32.dll", "Everything_SetSearchW") and pe.imports("bcrypt.dll", "BCryptGenRandom") } |
Víctimas
Utilizando nuestras reglas YARA en fuentes públicas, hemos detectado recientemente actores de amenazas que utilizan la muestra Elpaco y otras variantes Mimic, principalmente en Estados Unidos, Rusia, Países Bajos, Alemania y Francia. Sin embargo, su presencia va más allá, con casos también en Canadá, Rumania, Corea del Sur, el Reino Unido y otros países.
Los 5 principales países objetivo de Mimic (descargar)
El siguiente gráfico muestra la evolución de las apariciones de Mimic por mes.
Apariciones de Mimic por mes, 2024 (descargar)
Los datos recopilados muestran que los atacantes están utilizando variantes de Mimic, incluida Elpaco, al menos desde agosto de 2023.
Conclusión
En este incidente, observamos que el ransomware Elpaco es una variante de Mimic que abusa de la DLL Everything, la cual se utiliza para el descubrimiento de archivos. El artefacto presenta una interfaz de usuario interesante para personalizar sus atributos, permitiendo también al atacante exportar los parámetros a un archivo de configuración. Desafortunadamente, el algoritmo de cifrado utilizado hace que sea imposible descifrar los archivos en una máquina infectada sin la llave privada, lo que hace que esta amenaza sea difícil de resolver. Otra característica de Elpaco es que se elimina a sí mismo después de cifrar los archivos para evadir la detección y su posterior análisis. Hasta la fecha, hemos observado ataques con Elpaco y otras muestras de Mimic a gran escala, dirigidos a una amplia gama de países en todo el mundo, y continuaremos monitoreando esta amenaza.
Los productos de Kaspersky detectan la amenaza descrita en este artículo con los siguientes veredictos:
- HEUR:Trojan-Ransom.Win32.Generic (dropper).
- HEUR:Trojan-Ransom.Win32.Mimic.gen ( svhostss.exe).
Tácticas, técnicas y procedimientos
A continuación, se muestran los TTP identificados según nuestro análisis de malware.
Táctica | Técnica | ID |
Descubrimiento | Detección de recursos compartidos de red | T1135 |
Ejecución | Intérprete de comandos y secuencias de comandos: Windows Command Shell | T1059.003 |
Ejecución | Intérprete de comandos y secuencias de comandos: PowerShell | T1059.001 |
Impacto | Datos cifrados como impacto | T1486 |
Impacto | Detención del servicio | T1489 |
Impacto | Inhibición de la recuperación del sistema | T1490 |
Evasión de defensa | Abuso del mecanismo de control de elevación: evasión del control de cuentas de usuario | T1548.002 |
Evasión de defensa | Enmascaramiento | T1036 |
Evasión de defensa | Modificación de registros | T1112 |
Evasión de defensa | Deshabilitar o modificar el firewall del sistema | T1562.004 |
Evasión de defensa | Inyección de procesos | T1055 |
Evasión de defensa | Ocultamiento de artefactos | T1564 |
Persistencia | Ejecución de inicio automático de inicio de sesión o arranque: llaves de ejecución en registros/directorio de inicio automático | T1547.001 |
Indicadores de compromiso
- 61f73e692e9549ad8bc9b965e25d2da683d56dc1 (dropper)
- 8af05099986d0b105d8e38f305efe9098a9fbda6 ( svhostss.exe)
Análisis de Elpaco: una variante Mimic