Ryuk, Emotet, TrickBot:
Luchar contra los Malware con el Endpoint Privilege Management (EPM)
¿Qué es RYUK – Por qué es nuevo?
Ryuk es un tipo de ransomware que encripta todos los datos de un sistema infectado, haciéndolo inaccesible hasta que se pague un rescate. Informado por primera vez en 2018, es particularmente famoso por dirigirse a entornos de grandes empresas.
El desmontaje de este malware ha demostrado que Ryuk deriva de otro tipo de ransomware llamado Hermes, del que se sabe que está disponible públicamente en la Deep Web en formato de código fuente y que incluso se sigue manteniendo a día de hoy. Los autores de Ryuk desvían el objetivo a grandes organizaciones de carácter público, a diferencia de los derivados de Hermes detectados hasta la fecha.
Ryuk también está en constante evolución; en los últimos meses hubo muchos informes de diferentes muestras de la misma familia de malware. A medida que se recuperaban más muestras, se añadían presumiblemente más funcionalidades a los diferentes binarios. Entre dichas funcionalidades se encuentran los mecanismos antianálisis, la detección de la virtualización y diferentes peticiones de tipo ping en varias etapas de la infección.
¿Cómo funciona el malware Ryuk?
Identificar los vectores de infección de Ryuk siempre ha sido difícil, ya que el ransomware suele eliminar toda evidencia de su dropper como parte de su rutina. Con el tiempo, muchos informes han mostrado pruebas de que puede ser lanzado por otro malware como Emotet o TrickBot. Sin embargo, no se pueden descartar otras vulnerabilidades o puntos débiles en los sistemas de las empresas como posibles puntos de infección.
En el caso de la metodología de ataque de la «triple amenaza» que incluye a Emotet y TrickBot, el primer paso comienza con un correo electrónico de phishing. Este correo electrónico, aparentemente inofensivo, contiene un archivo adjunto de un documento de Microsoft Office con un macro código malicioso en su interior (una técnica de infección muy común). Este código malicioso intentará descargar y ejecutar Emotet mediante un único comando PowerShell, sin utilizar archivos de script. Así comienza el proceso de infección y cifrado de Ryuk.
¿Pero qué es Emotet?
Emotet es un Troyano, que fue reportado por primera vez para funcionar como un recolector de credenciales bancarias de los equipos infectados. Sin embargo, a lo largo de los años que ha estado activo, se ha actualizado para actuar también como lanzador. En este caso, es utilizado por los autores para descargar un payload adicional después de conseguir el acceso a un sistema. Este payload es donde entra en acción TrickBot.
¿Cómo están conectados TrickBot y Ryuk?
TrickBot comenzó también como un Troyano, diseñado para robar datos bancarios y otras credenciales, pero los autores han ampliado sus capacidades para crear un marco modular completo, proporcionando a otros malware acceso al sistema infectado. En este caso, una vez que el sistema de la víctima está infectado, TrickBot recopilará información y se la proporcionará a los autores para que puedan comprobar si el sistema procede del sector al que se dirigen y decidir si continúan o no.
Luego (posiblemente utilizando otro payload), utilizará la información tomada anteriormente para realizar un movimiento lateral con credenciales de administrador y con una lista de direcciones alcanzables para acceder a otros sistemas de la misma red. Después de una conexión exitosa a un servidor (posiblemente un controlador de dominio), el payload Ryuk se copia en los recursos compartidos administrativos de Windows (Admin$, C$, etc.), junto con algunas otras herramientas legítimas, como PsExec. A partir de aquí, los autores extienden y ejecutan Ryuk siempre que sea posible en los hosts individuales.
Image Source: Cybereason
El objetivo de una solución de Gestión de Privilegios de Endpoint como WALLIX BestSafe es aplicar el Principio del Menor Privilegio para parar la infección en las fases más tempranas. Es decir, implementar soluciones y procesos que impidan eficazmente que Emotet -o cualquier otro malware- realice sus pasos necesarios y bloquee cualquier posible infección.
Explicación del ransomware Ryuk
Ryuk consiste en dos payloads principales; una es un dropper, y la otra es el propio ejecutable. El dropper es difícil de encontrar porque el ejecutable se asegura de que se borre al ejecutarse.
Cuando se ejecuta, el dropper comprueba la versión de Windows y si es de 32 o 64 bits. A continuación, construye una ruta de carpeta común. Si se trata de Windows XP o Windows Server 2003, deja caer el ejecutable Ryuk en «C:\Documents and Settings\Default User\«, y si es Windows Vista o superior, lo deja en «C:\users\Public\«. A continuación, se ejecuta el ejecutable recién escrito y se elimina el dropper.
También se sabe que el dropper detiene múltiples servicios de productos antimalware y procesos relacionados con ellos, lo que favorece su causa para explotar los sistemas sin ser detectado.
La parte ejecutable de Ryuk utiliza la clave «HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run» para lograr la persistencia. El ejecutable crea un nuevo valor con el nombre «svchos«, ejecutando así el ejecutable Ryuk cada vez que el usuario actual se conecta.
Ryuk no realiza el cifrado dentro de su propio espacio de memoria de proceso, sino que utiliza un proceso en ejecución en el que ya confía el sistema para evitar su detección. Para hacerlo, Ryuk necesita primero ajustar sus privilegios de proceso para habilitar específicamente el «SeDebugPrivilege«, que según Microsoft es «necesario para depurar y ajustar la memoria de un proceso propiedad de otra cuenta. Con este privilegio, el usuario puede adjuntar un depurador a cualquier proceso o al kernel«.
Para realizar dicha acción, el proceso necesita tener el privilegio en su token de antemano. Este privilegio sólo se concede a los usuarios administradores, lo que significa que si el usuario que ejecuta Ryuk no fuera un administrador, Ryuk fallaría al habilitar este privilegio y todas las operaciones posteriores fallarían.
Antes de inyectar en un proceso existente, Ryuk enumera todos los procesos que se están ejecutando en el sistema. A continuación, se inyectará en un único proceso, siempre que no se llame «csrss.exe«, «lsaas.exe«, «explorer.exe«, o se ejecute bajo la cuenta de sistema NT_AUTHORITY.
Para hacerlo, Ryuk utiliza una técnica común de inyección de procesos que consiste en asignar memoria en un proceso anfitrión, escribir código malicioso en él y asegurarse de que el proceso remoto lo cargue creando un hilo remoto en el proceso objetivo. Por eso el «SeDebugPrivilege» es tan importante. Sin él, esta técnica no funcionará.
El proceso inyectado termina ejecutando un archivo batch que ha sido depositado en un paso anterior. Este archivo contiene múltiples usos de los comandos «vssadmin» y «delete» con el objetivo de cambiar la configuración y borrar puntos de restauración o copias de seguridad. Esta es una acción común encontrada en los ransomware que se lleva a cabo antes de cifrar, asegurando que la víctima se vea obligada a pagar para recuperar los archivos valiosos que no pueden ser recuperados desde la copia de seguridad.
«vssadmin.exe» es una herramienta de línea de comandos que gestiona el Volume Shadow Copy Service (VSS), que captura y copia imágenes estables para la realización de copias de seguridad en sistemas en funcionamiento. Muchas soluciones de copia de seguridad lo utilizan, como Microsoft Restore Point o Microsoft Windows Server Backup, pero los proveedores de terceros también pueden confiar en esta tecnología.
Además, se sabe que algunas muestras de Ryuk modifican las listas de control de acceso discrecional de los documentos originales a «total» para «todos«, a través de la aplicación de Windows «icacls.exe«.
Así, Ryuk se inyecta en un proceso remoto y crea un hilo para delegar el cifrado en otros procesos en ejecución con el objetivo de evitar su detección. El proceso de cifrado crea un nuevo hilo para cada archivo que cifra, lo que lo hace muy rápido. Se crea un hilo para el cifrado de cada archivo y cada archivo se cifra con su propia clave AES.
Una vez encriptado el archivo, se le añade la extensión «.RYK». Todos los directorios tendrán una nota de rescate (RyukReadMe.txt) escrita en ellos. Ryuk utiliza una combinación de cifrado simétrico (AES) y asimétrico (RSA) para cifrar los archivos. Sin la clave privada proporcionada por los autores, los archivos no pueden ser descifrados y son irrecuperables.
Ryuk tiene dos claves RSA públicas incrustadas en el ejecutable, y la clave privada está encriptada e incrustada en el ejecutable porque Ryuk no genera un par de claves RSA específico para la víctima, sino que tiene una clave única para cada ejecutable. Esto significa que todos los equipos pueden ser descifrados con la misma clave de descifrado si fueron cifrados con el mismo ejecutable. Por lo tanto, es muy probable que Ryuk genere previamente los pares de claves RSA para cada víctima. Esto podría ser intencionado, ya que los parámetros de los pares de claves RSA sin cifrar nunca estarán en el sistema en ningún momento.
Ryuk utiliza la CryptoAPI de Windows para la fase de cifrado. Antes de que Ryuk pueda delegar la fase de cifrado a otros procesos, necesita importar las claves incrustadas, entre otras operaciones.
Detener a Ryuk con WALLIX BestSafe EPM
Los antivirus y escáneres tradicionales no son rivales para Ryuk y otros ransomware modernos. Esta es la desafortunada verdad, aunque sólo sea por el simple hecho de que estas herramientas requieren un conocimiento avanzado de las amenazas para poder detectarlas. Con la aparición de nuevos programas maliciosos, con nuevas técnicas y metodologías sutiles, no hay forma de que las soluciones antivirus estén al día.
La defensa contra el ransomware, el malware y los criptovirus requiere un enfoque proactivo e innovador de la seguridad. WALLIX BestSafe ofrece una seguridad de endpoint que cambia el juego y puede detener estas infecciones en su camino.
Dado que Ryuk no realiza el cifrado directamente, sino que secuestra los procesos existentes y de confianza para realizar el cifrado, es fundamental que una solución de seguridad sea capaz de detectar este comportamiento inusual incluso en aplicaciones conocidas. WALLIX BestSafe permite la seguridad a nivel de aplicaciones y procesos para definir, a un nivel granular, qué programas pueden realizar qué acciones y, lo que es más importante, cuáles no. Así, cuando Ryuk intenta forzar a un programa de confianza a cifrar datos corporativos, WALLIX BestSafe detecta el proceso sospechoso e impide que se lleve a cabo la acción.
Paso 1: Detener la infección desde el principio
- WALLIX BestSafe bloquea la ejecución del archivo dropper en primer lugar, evitando que todo el proceso se inicie. Por ejemplo, asume que se ha aplicado el Principio del Menor Privilegio y, por tanto, el usuario no tiene acceso a los archivos y carpetas del sistema. WALLIX BestSafe también puede comprobar la fecha de modificación del archivo a nivel del sistema de archivos. Normalmente, el malware funciona descargando un payload y ejecutándolo, por lo que es seguro asumir que un proceso cuyo archivo ejecutable acaba de ser creado es potencialmente peligroso.
- Si, hipotéticamente, el dropper se ejecuta con éxito de alguna manera, las ejecuciones de los archivos ejecutables descargados también serían bloqueadas por esta regla. El malware Ryuk está firmado por un certificado de firma de código emitido por una CA de confianza. Por lo tanto, la regla debe aplicarse incluso si el proceso está firmado y es de confianza.
- Bajo esta regla de WALLIX BestSafe, la clave de registro que Ryuk utiliza para persistir tras el reinicio no existe, por lo que el malware no puede progresar y no se ejecutará automáticamente la próxima vez que se inicie la sesión.
- WALLIX BestSafe puede impedir que cualquier proceso realice una escalada de privilegios, independientemente del nivel de privilegio del usuario, y por tanto todas las operaciones posteriores fallarían, incluida la sofisticada técnica de inyección de procesos.
Paso 2: Evitar más acciones sospechosas
Si por alguna razón WALLIX BestSafe no está configurado para detener todos los pasos anteriores, todavía podemos confiar en más funciones clave para proteger contra las acciones maliciosas.
- Las configuraciones de las reglas pueden restringir aún más la actividad, por ejemplo, bloqueando cualquier proceso ejecutado como hijo de un proceso padre que se haya ejecutado desde el perfil del usuario, y cuyo archivo ejecutable se haya modificado en menos de 5 minutos.
- Además, una regla de WALLIX BestSafe puede configurarse para bloquear cualquier proceso ejecutado desde el perfil del usuario que intente ejecutar cualquiera de los procesos de una lista, y cuyo archivo ejecutable haya sido modificado en un periodo de tiempo definido. Cuando el proceso de la regla de ransomware intenta lanzar cualquiera de ellos, el proceso será eliminado por WALLIX BestSafe. Esta lista está poblada de procesos comúnmente utilizados por todo el malware y especialmente por el ransomware, incluyendo Ryuk (borrar copias de seguridad, puntos de restauración, otorgarse privilegios, etc.).
Paso 3: Bloquear el cifrado
En un paso más, si por casualidad WALLIX BestSafe no estaba configurado para detener todos los pasos anteriores y el ransomware llega a la fase de cifrado, entran en juego más funciones clave.
- WALLIX BestSafe detectará las llamadas del ransomware a la CryptoAPI de Windows y detendrá la ejecución del árbol de procesos (es decir, el proceso que lo inició todo, así como todos los procesos que ejecutó). Para ello, utiliza las mismas reglas de ransomware y flags de los pasos anteriores y algunas condiciones estratégicas destinadas a detectar comportamientos que sólo haría el ransomware o, en otras palabras, comportamientos que nunca haría un ser humano (5 operaciones de cifrado en menos de un segundo es una eternidad para una máquina).
Detenga el ransomware con el Endpoint Privilege Management (EPM)
Ryuk es uno de los ransomware más avanzados que hemos visto, sobre todo por su combinación de tres tipos diferentes de malware, y la comunicación entre las víctimas y los hackers. Sin embargo, tal sofisticación tiene un precio, y la técnica de inyección de procesos requiere que el malware tenga privilegios de administrador (al menos para la fase de cifrado). Esto lo convierte en uno de los pocos ransomware que los requiere, cuando la principal razón por la que el ransomware siempre ha sido difícil de detectar era que no los requerían por diseño.
Esto significa que, si el usuario que ejecuta este malware es un usuario estándar y no tiene credenciales privilegiadas de ningún tipo, el ransomware no llegará muy lejos y definitivamente no cifrará los archivos. Por lo tanto, es fundamental aplicar el principio del menor privilegio mediante una sólida gestión de los endpoints.
Y en el caso de que no sea suficiente con el Principio del Menor Privilegio o de que no se detenga alguna fase de un ataque por alguna razón, WALLIX BestSafe aún puede abordar -y prevenir- el resto de las fases.
Para las organizaciones que aún no han aplicado con éxito un verdadero modelo de privilegios mínimos, WALLIX BestSafe ofrece la posibilidad de desescalar las aplicaciones incluso si los usuarios que las ejecutan son usuarios administradores. Aplicando reglas genéricas al perfil del usuario, y desescalando cada aplicación, Ryuk habría intentado ejecutarse sin privilegios y habría fallado. Todo esto mientras el usuario sigue siendo un administrador con todos los derechos de administrador.
Detenga Ryuk, y otros ransomware, malware y criptovirus, en su camino con WALLIX BestSafe Endpoint Privilege Management.
¡Solicite una prueba gratuita de WALLIX BestSafe!