Una nueva cepa de ransomware cifra archivos y les agrega una extensión ".SaveTheQueen", propagándose a través de la carpeta de red SYSVOL en los controladores de dominio de Active Directory.
Nuestros clientes encontraron este malware recientemente. Presentamos nuestro análisis completo, sus resultados y conclusiones a continuación.
Detección
Uno de nuestros clientes se puso en contacto con nosotros después de encontrar una nueva cepa de ransomware que agregaba la extensión ".SaveTheQueen" a nuevos archivos cifrados en su entorno.
Durante nuestra investigación, o más bien en la etapa de búsqueda de fuentes de infección, descubrimos que la distribución y el seguimiento de las víctimas infectadas se realizaba mediante carpeta de red SYSVOL en el controlador de dominio del cliente.
SYSVOL es una carpeta clave para cada controlador de dominio que se utiliza para entregar objetos de política de grupo (GPO) y scripts de inicio y cierre de sesión a las computadoras del dominio. El contenido de esta carpeta se replica entre controladores de dominio para sincronizar estos datos en los sitios de la organización. Escribir en SYSVOL requiere altos privilegios de dominio; sin embargo, una vez comprometido, este activo se convierte en una poderosa herramienta para los atacantes que pueden usarlo para distribuir de manera rápida y eficiente cargas maliciosas en un dominio.
La cadena de auditoría de Varonis ayudó a identificar rápidamente lo siguiente:
- La cuenta de usuario infectada creó un archivo llamado "hourly" en SYSVOL
- Se crearon muchos archivos de registro en SYSVOL, cada uno con el nombre de un dispositivo de dominio.
- Muchas direcciones IP diferentes accedían al archivo "por hora"
Concluimos que los archivos de registro se usaron para rastrear el proceso de infección en dispositivos nuevos, y que "cada hora" era un trabajo programado que ejecutaba la carga maliciosa en dispositivos nuevos usando un script Powershell: muestras "v3" y "v4".
El atacante probablemente obtuvo y utilizó privilegios de administrador de dominio para escribir archivos en SYSVOL. En los hosts infectados, el atacante ejecutaba código PowerShell que creaba un trabajo programado para abrir, descifrar y ejecutar el malware.
Descifrando el malware
Probamos varias formas de descifrar muestras sin éxito:
Estábamos casi a punto de rendirnos cuando decidimos probar el método “Mágico” del magnífico
utilidades
Nota del traductor Ver
Magic determinó que se utilizó un empaquetador GZip codificado en base64, por lo que pudimos descomprimir el archivo y descubrir el código de inyección.
Dropper: “¡Hay una epidemia en la zona! Vacunas generales. Enfermedad de pies y boca"
El dropper era un archivo .NET normal sin ninguna protección. Después de leer el código fuente con
Shellcode o complicaciones simples
Usamos la herramienta de creación Hexacorn:
Escribir incluso un código shell simple en una traducción al lenguaje ensamblador nativo puede ser difícil, pero escribir un código shell completo que funcione en ambos tipos de sistemas requiere habilidades de élite, por lo que comenzamos a maravillarnos ante la sofisticación del atacante.
Cuando analizamos el código shell compilado usando
Al final resultó que, el autor del malware no escribió este complejo código shell en absoluto: se utilizó software específico para esta tarea para traducir archivos ejecutables y scripts a código shell.
Encontramos una herramienta
Donut genera shellcode x86 o x64 a partir de VBScript, JScript, EXE, DLL (incluidos ensamblados .NET). Este código shell se puede inyectar en cualquier proceso de Windows para ejecutarlo en
memoria de acceso aleatorio.
Para confirmar nuestra teoría, compilamos nuestro propio código usando Donut y lo comparamos con la muestra, y... sí, descubrimos otro componente del conjunto de herramientas utilizado. Después de esto, pudimos extraer y analizar el archivo ejecutable .NET original.
Protección de código
Este archivo ha sido ofuscado usando
ConfuserEx es un proyecto .NET de código abierto para proteger el código de otros desarrollos. Esta clase de software permite a los desarrolladores proteger su código de la ingeniería inversa utilizando métodos como la sustitución de caracteres, el enmascaramiento del flujo de comandos de control y la ocultación de métodos de referencia. Los autores de malware utilizan ofuscadores para evadir la detección y dificultar la ingeniería inversa.
A través de
Resultado: carga útil
La carga útil resultante es un virus ransomware muy simple. No hay ningún mecanismo para garantizar la presencia en el sistema, ni conexiones al centro de comando: solo el viejo cifrado asimétrico para hacer que los datos de la víctima sean ilegibles.
La función principal selecciona las siguientes líneas como parámetros:
- Extensión de archivo para usar después del cifrado (SaveTheQueen)
- Correo electrónico del autor para colocar en el archivo de nota de rescate
- Clave pública utilizada para cifrar archivos.
El proceso en sí se ve así:
- El malware examina las unidades locales y conectadas en el dispositivo de la víctima.
- Busca archivos para cifrar
- Intenta finalizar un proceso que utiliza un archivo que está a punto de cifrar
- Cambia el nombre del archivo a "OriginalFileName.SaveTheQueenING" usando la función MoveFile y lo cifra
- Después de cifrar el archivo con la clave pública del autor, el malware le cambia el nombre nuevamente, ahora a "Original FileName.SaveTheQueen".
- Un archivo con una demanda de rescate se escribe en la misma carpeta.
Basándose en el uso de la función nativa "CreateDecryptor", una de las funciones del malware parece contener como parámetro un mecanismo de descifrado que requiere una clave privada.
virus ransomware NO cifra archivos, almacenado en directorios:
C: ventanas
C: Archivos de programa
C: Archivos de programa (x86)
C:Usuarios\AppData
C:inetpub
También él NO cifra los siguientes tipos de archivos:EXE, DLL, MSI, ISO, SYS, CAB.
Resultados y conclusiones
Aunque el ransomware en sí no contenía ninguna característica inusual, el atacante utilizó creativamente Active Directory para distribuir el dropper, y el malware en sí nos presentó obstáculos interesantes, aunque en última instancia sencillos, durante el análisis.
Creemos que el autor del malware es:
- Escribió un virus ransomware con inyección incorporada en el proceso winlogon.exe, así como
funcionalidad de cifrado y descifrado de archivos - Ocultó el código malicioso usando ConfuserEx, convirtió el resultado usando Donut y, además, ocultó el cuentagotas Gzip base64.
- Obtuvo privilegios elevados en el dominio de la víctima y los usó para copiar
malware cifrado y trabajos programados en la carpeta de red SYSVOL de controladores de dominio - Ejecute un script de PowerShell en dispositivos de dominio para difundir malware y registrar el progreso del ataque en registros en SYSVOL
Si tiene preguntas sobre esta variante del virus ransomware o cualquier otra investigación forense y de incidentes de ciberseguridad realizada por nuestros equipos,
Fuente: habr.com