Coyote

Coyote: más de 60 bancos ya lo padecieron

En una reciente investigación realizada por los investigadores de Kaspersky, se ha descubierto una nueva y sofisticada campaña de malware, bautizada como “Coyote”.

Coyote
Coyote

La cual ha llamado la atención de expertos en ciberseguridad por su compleja cadena de infección y su enfoque dirigido a más de 60 instituciones bancarias, principalmente en Brasil.

La investigación revela que “Coyote” utiliza múltiples tecnologías avanzadas en su cadena de infección, lo que lo diferencia significativamente de los troyanos bancarios conocidos hasta la fecha.

Esta sofisticación en su diseño y ejecución plantea un desafío considerable para los sistemas de seguridad cibernética existentes.

El modus operandi de “Coyote” implica una serie de etapas cuidadosamente orquestadas para lograr su objetivo final: comprometer las cuentas bancarias de los usuarios.

Se sabe que este malware se propaga principalmente a través de correos electrónicos de phishing, aprovechando técnicas de ingeniería social para engañar a los destinatarios y hacer que descarguen e instalen el software malicioso sin sospecharlo.

La sofisticación de “Coyote” no se limita únicamente a su método de distribución; una vez que ha conseguido infiltrarse en el sistema de la víctima, despliega una serie de tácticas diseñadas para eludir la detección y persistir en el sistema, dificultando su eliminación por parte de los programas antivirus convencionales. Esta combinación de evasión y persistencia lo convierte en una amenaza especialmente preocupante para la seguridad cibernética.

Además, la finalidad de “Coyote” es clara y directa: robar información confidencial, como credenciales de inicio de sesión y datos bancarios. Esta capacidad para comprometer la seguridad financiera de los usuarios afectados representa un riesgo grave y potencialmente catastrófico para sus finanzas personales.

Aunque la mayoría de las instituciones bancarias afectadas se encuentran en Brasil, es crucial que todos los usuarios de servicios financieros, independientemente de su ubicación geográfica, estén alerta y tomen medidas proactivas para proteger sus sistemas contra posibles ataques de malware.

Esto incluye mantener actualizados los programas de seguridad, ser cautelosos al abrir correos electrónicos y enlaces sospechosos, y utilizar contraseñas robustas y autenticación de dos factores siempre que sea posible.

La prevención y la preparación son clave en la lucha contra las amenazas cibernéticas como “Coyote”. Al permanecer vigilantes y tomar medidas proactivas, podemos reducir significativamente el riesgo de ser víctimas de ataques de malware y proteger nuestra información financiera y personal.

Esto incluye estar alerta ante correos electrónicos sospechosos, mantener actualizados los programas de seguridad y realizar copias de seguridad periódicas de los datos importantes.

Los expertos en ciberseguridad están trabajando activamente para contrarrestar la amenaza planteada por “Coyote” y desarrollar soluciones efectivas para proteger a los usuarios contra este y otros tipos de malware. Sin embargo, la naturaleza en constante evolución de las amenazas cibernéticas subraya la importancia de la vigilancia continua y la colaboración entre la comunidad de seguridad cibernética y los usuarios finales para garantizar la protección de la información sensible y la integridad de los sistemas.

 “Coyote”: Un troyano bancario innovador que aprovecha tecnologías emergentes en su cadena de infección

El surgimiento de “Coyote” como un nuevo y sofisticado troyano bancario ha provocado inquietud dentro de la comunidad de ciberseguridad debido a su enfoque innovador para infiltrarse en sistemas financieros.

Una de las características más destacadas de esta amenaza es su uso del instalador Squirrel, junto con tecnologías emergentes como NodeJS y el lenguaje de programación multiplataforma Nim, para llevar a cabo su cadena de infección.

La elección de Squirrel como mecanismo de distribución permite que “Coyote” alcance a una amplia gama de usuarios, aprovechando la versatilidad y eficacia de este instalador en particular.

Por otro lado, la combinación de NodeJS y Nim como cargadores del malware agrega una capa adicional de complejidad, lo que dificulta su detección por parte de las soluciones de seguridad tradicionales. Esta táctica desafía las convenciones establecidas en el campo de la ciberseguridad y subraya la necesidad de una vigilancia constante y una respuesta ágil por parte de los profesionales de seguridad para hacer frente a las amenazas emergentes como “Coyote”.

El lenguaje de programación Nim, aunque poco conocido en comparación con otros lenguajes más establecidos, se ha convertido en un recurso atractivo para los ciberdelincuentes debido a su capacidad para combinar conceptos exitosos de lenguajes como Python, Ada y Modula. Esta combinación le otorga una gran flexibilidad y potencia, lo que lo convierte en una herramienta ideal para el desarrollo de malware y la ejecución de ataques cibernéticos.

En el informe “Crimeware y ciber amenazas financieras para 2024” de Kaspersky, los analistas han identificado una tendencia creciente entre los ciberdelincuentes hacia la adopción de lenguajes menos populares o multiplataforma como parte de sus estrategias de ataque. Esta tendencia refleja la constante búsqueda de los malhechores por eludir las defensas de seguridad convencionales y maximizar el impacto de sus acciones.

Al optar por lenguajes menos conocidos pero igualmente poderosos, como Nim, los delincuentes buscan aprovechar las vulnerabilidades existentes en los sistemas de seguridad y explotarlas de manera más efectiva. Esta tendencia pone de manifiesto la necesidad de una vigilancia constante y una respuesta proactiva por parte de la comunidad de ciberseguridad para hacer frente a las amenazas emergentes y proteger la integridad de los sistemas y datos en línea.

En este artículo, profundizaremos en el funcionamiento de la cadena de infección de “Coyote” y exploraremos las capacidades y técnicas avanzadas que emplea este troyano bancario para comprometer la seguridad de los usuarios bancarios. Es fundamental que los usuarios estén al tanto de estas nuevas amenazas y tomen medidas proactivas para protegerse contra ellas, manteniendo actualizados sus sistemas de seguridad y adoptando prácticas de navegación seguras en línea.

Olvídate de los viejos Delphi y MSI

En el siempre cambiante panorama de la ciberseguridad, los troyanos bancarios han sido históricamente asociados con el uso de lenguajes de programación convencionales como Delphi y métodos de instalación estándar como los instaladores MSI. Sin embargo, una nueva amenaza ha surgido, desafiando estas convenciones establecidas y adoptando un enfoque completamente diferente.

“Bienvenidos a la era de Coyote”, proclaman los expertos en seguridad cibernética. Este nuevo troyano bancario ha abandonado por completo los viejos métodos de instalación y actualización de aplicaciones de escritorio de Windows, optando en su lugar por utilizar Squirrel, un instrumento relativamente nuevo pero poderoso.

Squirrel, a diferencia de los tradicionales instaladores MSI, se basa en paquetes NuGet para crear paquetes de instalación y actualización. Esta elección inesperada por parte de los autores de “Coyote” ha desconcertado a la comunidad de ciberseguridad, que estaba acostumbrada a detectar y mitigar amenazas que seguían un patrón más predecible.

“La adopción de Squirrel por parte de Coyote representa un cambio significativo en el paisaje de la ciberseguridad”, afirman los investigadores. Este enfoque novedoso no solo desafía las técnicas de detección existentes, sino que también subraya la necesidad de que los profesionales de seguridad estén siempre un paso adelante en la lucha contra el cibercrimen.

Los autores de Coyote explican su elección en términos simples pero impactantes: “Squirrel utiliza paquetes NuGet para crear paquetes de instalación y actualización, lo que significa que quizá ya conozcas casi todo lo que necesitas para crear un instalador”. Esta afirmación refleja la facilidad de uso y la accesibilidad que ofrece Squirrel, haciendo que la distribución de malware sea más eficiente y menos detectable.

A medida que “Coyote” continúa propagándose y evolucionando, la comunidad de ciberseguridad está trabajando arduamente para comprender y mitigar esta nueva amenaza. Sin embargo, su enfoque innovador y su uso de tecnologías emergentes plantean desafíos únicos que requieren una respuesta igualmente innovadora por parte de los expertos en seguridad.

En conclusión, el surgimiento de “Coyote” marca un punto de inflexión en la batalla contra el cibercrimen, recordándonos que en el mundo de la ciberseguridad, la única constante es el cambio.

Cadena de infección de Coyote

Cadena de infección de Coyote

Utilizando este instrumento, Coyote oculta su cargador de etapa inicial presentándolo como un empaquetador de actualizaciones.

Contenido malicioso del instalador Squirrel

Contenido malicioso del instalador Squirrel

El script cargador escrito en Node.js

Cuando se ejecuta Squirrel, acaba ejecutando una aplicación NodeJS compilada con Electron. Esta aplicación ejecuta un código JavaScript ofuscado(preload.js), cuya función principal es copiar todos los ejecutables que se encuentran en una carpeta local llamada temp a la carpeta de capturas del usuario dentro de la carpeta Videos. A continuación, ejecuta una aplicación firmada desde ese directorio.

Estructura del proyecto NodeJS

Estructura del proyecto NodeJS

Se han identificado varios de los ejecutables que usa, entre ellos los asociados a Chrome y OBS Studio. El troyano bancario se carga de forma lateral junto a una DLL de una dependencia de estos ejecutables. En todos los casos analizados por nuestro equipo, la carga lateral junto a la DLL se produce en la biblioteca libcef.dll.

El cargador Nim

El uso de Nim como cargador en la cadena de infección del troyano “Coyote” presenta un elemento intrigante y poco convencional. Nim, un lenguaje de programación relativamente nuevo, se emplea para cargar la etapa final del malware. La función principal de este cargador es desempaquetar un ejecutable .NET y ejecutarlo en la memoria utilizando el Common Language Runtime (CLR).

Este enfoque implica que el cargador tiene la intención de cargar el ejecutable y ejecutarlo dentro de su propio proceso. Este método recuerda notablemente al funcionamiento de “Donut”, una técnica utilizada en la creación de malware que implica cargar y ejecutar binarios de .NET en memoria, lo que dificulta su detección por parte de las soluciones de seguridad tradicionales.

El uso de Nim como cargador no solo demuestra la versatilidad y potencia de este lenguaje de programación, sino que también subraya la evolución constante de las técnicas utilizadas por los ciberdelincuentes para eludir la detección y persistir en sistemas comprometidos.

Este aspecto de la cadena de infección de “Coyote” destaca la importancia de estar al tanto de las últimas tendencias en ciberseguridad y de mantenerse actualizado sobre las técnicas emergentes utilizadas por los actores malintencionados en el panorama digital en constante cambio.

Ejecutable .Net descomprimido

Ejecutable .Net descomprimido

Vale la pena señalar que el mismo punto de entrada, obs-browser-page.exe, se utiliza para cada reinicio de la máquina, sirviendo como un medio de persistencia.

Y por último (aunque no por ello menos importante), el troyano bancario Coyote

Después de todos estos pasos, el troyano logra ejecutarse. Coyote no implementa ninguna ofuscación de código y sólo ofusca las cadenas con cifrado AES.

Estructura de tablas de cadenas cifradas

Estructura de tablas de cadenas cifradas

El proceso descrito indica un método de descifrado que utiliza una tabla de datos codificados en base64. Para recuperar una cadena específica, se llama a un método de descifrado con el índice de la cadena como parámetro. A continuación, se proporciona una explicación detallada de este proceso:

  1. Tabla de datos codificados en base64: Se tiene una tabla de datos cifrados en formato base64. Cada elemento de esta tabla representa una cadena cifrada utilizando un algoritmo de cifrado simétrico, probablemente AES (Advanced Encryption Standard).
  2. Método de descifrado: Cuando se necesita recuperar una cadena específica, se llama a un método de descifrado con el índice de la cadena como parámetro. Este método probablemente esté implementado en el código del malware y se encargará de realizar las operaciones necesarias para descifrar la cadena correspondiente.
  3. Inicialización del vector (IV): Los primeros 16 bytes de cada dato descifrado se utilizan como vector inicial (IV). El IV es un parámetro utilizado en el modo de operación de cifrado AES que ayuda a garantizar la seguridad de las operaciones de cifrado al introducir aleatoriedad en el proceso.
  4. Datos cifrados: Después de los primeros 16 bytes (que se utilizan como IV), el resto de los datos descifrados corresponden a la cadena cifrada que se utilizará en la rutina de descifrado AES.
  5. Rutina de descifrado AES: Utilizando el IV y los datos cifrados proporcionados, se ejecuta una rutina de descifrado AES para recuperar la cadena original. El IV y los datos cifrados se utilizan como parámetros en esta rutina para realizar la operación de descifrado de manera adecuada.

Este método de descifrado utiliza una tabla de datos codificados en base64 y una rutina de descifrado AES que utiliza un IV para recuperar cadenas específicas.

Este enfoque de cifrado y descifrado es comúnmente utilizado en malware para proteger la información sensible y dificultar su análisis por parte de los investigadores de seguridad.

Estructura de datos cifrada

Estructura de datos cifrada

Cada ejecutable genera una clave al azar, y el algoritmo de descifrado AES utiliza las interfaces de cifrado oficiales de .Net. Con este enfoque, para cada acceso a la cadena que Coyote necesita, busca dentro de la tabla y descifra cada cadena con un IV personalizado.

Persistencia y objetivos

Coyote consigue la persistencia abusando de los scripts de inicio de sesión de Windows; primero comprueba si HKCU\Environment\UserInitMprLogonScript existe, y si es así, inserta el valor del registro como la ruta completa a la aplicación firmada, en este caso, obs-browser-page.exe.

El objetivo del troyano Coyote es coherente con el comportamiento típico de los troyanos bancarios. Supervisa todas las aplicaciones abiertas en el sistema de la víctima y espera a que se acceda a la aplicación bancaria o sitio web específicos.

Rutina de supervisión de aplicaciones

Rutina de supervisión de aplicaciones

En nuestro análisis hemos identificado al menos 61 solicitudes relacionadas, todas ellas procedentes de Brasil. Esto es un indicio claro de que Coyote es un troyano bancario brasileño, que muestra un comportamiento similar al que reportamos en nuestra entrada del blog acerca de Tetrade.

Comunicación y control con el servidor C2

Cuando se ejecuta y utiliza cualquier aplicación relacionada con la banca, el Coyote bancario se pone en contacto con el C2 con esta información. A continuación, el C2 responde con diversas acciones a realizar en el equipo, que van desde el registro de teclas hasta la toma de capturas de pantalla. La comunicación con el servidor atacante se explicará en las secciones siguientes.

El troyano establece comunicación con su servidor de mando y control utilizando canales SSL con un esquema de autenticación mutua. Esto implica que el troyano posee un certificado del servidor controlado por el atacante y lo utiliza durante el proceso de conexión.

El certificado se almacena como un recurso en un formato cifrado que se descifrada mediante la biblioteca X509 de .Net. Una vez que el malware constata que se ha establecido conexión con el atacante, procede a enviar al servidor la información recopilada de la máquina infectada y de las aplicaciones bancarias. La información que se transmite incluye estos datos:

  • Nombre de la máquina
  • GUID generado aleatoriamente
  • Aplicación bancaria utilizada

Con esta información, el atacante envía un paquete de respuesta que contiene acciones específicas. Para procesar estas acciones, el atacante transmite una cadena con un delimitador aleatorio. A continuación, cada posición de la cadena se convierte en una lista, en la que la primera entrada representa el tipo de comando.

Para determinar el comando deseado, comprueba la longitud de la cadena en el primer parámetro, que es una cadena aleatoria. En otras palabras, la única diferencia entre comandos es el tamaño de la cadena.

Los comandos disponibles más importantes son:

LongitudDescripción
12Hacer una captura de pantalla
14Superponer en la pantalla la ventana de la aplicación bancaria falsa
15Mostrar una ventana en primer plano
17Eliminar un proceso
18Mostrar una superposición a pantalla completa
21Apagar el equipo
27Bloquear el equipo con una imagen bancaria falsa mostrando: “Trabajando con las actualizaciones…”
31Activar un keylogger
32Mover el cursor del ratón a una posición X, Y específica

El troyano también puede solicitar contraseñas específicas de tarjetas bancarias y crear una ventana de phishing que se superpone a las demás para capturar las credenciales del usuario.

Conclusión

Coyote marca un cambio notable en los troyanos bancarios brasileños. A diferencia de sus homólogos, que suelen utilizar lenguajes más antiguos como Delphi, los desarrolladores de Coyote dominan tecnologías modernas como Node.js, .NET y técnicas avanzadas de empaquetado.

La adición de Nim como cargador añade complejidad al diseño del troyano. Esta evolución pone de manifiesto la creciente sofisticación de las amenazas y muestra cómo sus autores se adaptan y utilizan los lenguajes e i nstrumentos más recientes en sus campañas maliciosas.

Nuestros datos telemétricos revelan que hasta el 90% de las infecciones proceden de Brasil. Todos los productos de Kaspersky detectan la amenaza como HEUR:Trojan-Banker.MSIL.Coyote.gen.

Los clientes de nuestros informes privados de Threat Intelligence Reports pueden acceder a un análisis más detallado de las últimas versiones de Coyote. Para más información, póngase en contacto con crimewareintel@kaspersky.com.

IoC de referencia (indicadores de compromiso)

Basado en host (hash MD5)
03 eacccb664d517772a33255dff96020
071b6efd6d3ace1ad23ee0d6d3eead76
276f14d432601003b6bf0caa8cd82fec
5134e6925ff1397fdda0f3b48afec87b
bf9c9cc94056bcdae6e579e724e8dbbd

Lista de dominios C2
atendesolucao[.]com
servicoasso[.]com
dowfinanceiro[.]com
centralsolucao[.]com
traktinves[.]com
diadaacaodegraca[.]com
segurancasys[.]com

 

Por Marcelo Lozano – General Publisher IT CONNECT LATAM

NO TE PIERDAS EL ÚLTIMO IT CONNECT SECURE STREAM

https://youtu.be/F8NrFbQ1GKw

Lea más sobre Ciberseguridad en;

Defensa Amorosa 2024: BioCatch Protege tus cuentas

ResumeLooters: ¿buscas 1 trabajo o problemas?

Cloudbrink: Aumento de Rendimiento de 30 Veces para el Acceso Remoto Seguro

Día Internacional del Cambio de Contraseña 1/2/2024

PCI DSS 4.0: muchas billeteras van a desaparecer en el aire, el 1/04/2024

Scroll al inicio