Silent Swap: una campaña basada en la instalación de extensiones de tipo “criptoclipper”

Autor: Neil Tyagi

Resumen 

McAfee Advanced Threat Research identificó una campaña activa que utiliza extensiones de navegador para robar criptomonedas al cambiar sigilosamente la dirección del wallet en el momento en que el usuario inicia una transacción. La campaña se lleva a cabo mediante programas de instalación no firmados, detectados tanto en versión .NET como Golang, cuya actividad consiste en desplegar una extensión maliciosa para Chromium que se hace pasar por una utilidad inofensiva llamada “Google Notes”.  

Esta campaña está relacionada con un blog publicado anteriormente por McAfee Labs titulado “Sinkholing CountLoader: Insights into Its Recent Campaign“, ya que parece que el autor de ambas operaciones es el mismo. En aquella investigación, estudiamos la carga útil de un “criptoclipper” que se inyectaba directamente en la memoria. Aquí analizamos una variante diferente de la carga útil de la fase final: una extensión maliciosa para navegador diseñada para interceptar y manipular transacciones en criptomonedas.  

En este reporte, explicamos cómo funciona la extensión y brindamos un análisis técnico de los mecanismos que otorgan a esta amenaza un carácter especialmente singular. La extensión funciona como un “criptoclipper” basado en el portapapeles: vigila las operaciones de copiar y pegar, identifica las direcciones de los wallets (o billeteras de criptomonedas) en múltiples cadenas de bloques, o blockchains, y las sustituye por direcciones que controla el atacante justo antes de que la víctima pegue el contenido. Como la mayoría de las transacciones en cadenas de bloques son irreversibles, basta con una sola ejecución ininterrumpida para provocar una pérdida económica permanente. 

Hay dos características que agravan esta campaña frente a la amenaza del típico “clipper”: 

  1. Uso indebido de la capa de confianza de Chromium. El instalador ingresa inadvertidamente una extensión maliciosa en los navegadores basados en Chromium, como Google Chrome, Brave y Microsoft Edge, modificando los archivos de configuración protegidos del navegador. Normalmente, estos navegadores guardan datos de verificación de seguridad (valores hash/HMAC) junto con los ajustes sensibles para detectar cambios no autorizados. Tras manipular los archivos, el malware vuelve a calcular y actualiza estos valores de seguridad para inducir al navegador a creer que la extensión maliciosa se instaló de forma legítima. De este modo, la extensión elude el proceso habitual de instalación a través de la tienda web de extensiones y se carga en segundo plano sin que el usuario tenga que dar su consentimiento. Aunque en las versiones actualizadas de Chrome y Edge la víctima debe activar a mano el modo de desarrollador para que la extensión se cargue correctamente, quienes tienen versiones obsoletas de navegadores basados en Chromium siguen corriendo un alto riesgo. Además, incluso en las versiones más recientes, los atacantes pueden recurrir a tácticas de ingeniería social para activar el modo de desarrollador.
  2. Sistema de mando y control basado en la cadena de bloques. La extensión no contiene un dominio C2 en el código. Para contrarrestarlo, consulta un endpoint RPC de una cadena de bloques pública, invoca un método con contrato inteligente de solo lectura y descodifica la respuesta en tiempo de ejecución para averiguar su servidor de mando y control (C2) activo, que durante el análisis identificamos como Zebregts[.]com.

Esta técnica, a menudo denominada “EtherHiding”, complica los esfuerzos de desactivación, ya que el atacante puede modificar la infraestructura actualizando el valor de un contrato inteligente en lugar de volver a desplegar el malware. 

Los datos de telemetría de McAfee indican que esta infección está extendida por todo el mundo y muestran una concentración pronunciada en la India. La amplitud de la zona geográfica sugiere que se trata de un ataque oportunista dirigido a usuarios particulares de criptomonedas, más que de una operación específica para una región concreta. 

Prevalencia geográfica  

Mapa del mundo en el que se muestran los países afectados por esta amenaza de ciberseguridad.
Nuestra investigación muestra que estas son las regiones del mundo más afectadas.

El análisis de los datos de telemetría indica que la infección está distribuida por todo el mundo, aunque en la India se observa una  concentración considerablemente mayor  en comparación con las demás regiones.  

Esta amplia presencia geográfica pone de manifiesto el gran alcance de la campaña, lo que hace suponer que se trata de una estrategia de objetivos oportunistas más que de un ataque dirigido a una región concreta. 

La extensión maliciosa: “Google Notes” 

Este malware se hace pasar por una extensión de Google Notes  aparentemente inofensiva. 

Extensión maliciosa de Google Chrome.
Figura 1. Esta imagen muestra la extensión maliciosa en la que se basa esta campaña.

La extensión instalada se presenta como una sencilla aplicación de notas de apariencia legítima denominada “Google Notes”, acompañada de un icono depurado y una interfaz de usuario funcional (y simple).  

La tapadera está bien pensada: cuando un usuario abre la extensión manualmente, se encuentra con algo que funciona tal y como se anuncia, lo que disipa sus sospechas. La lógica maliciosa de la extensión está implementada en scripts “service worker” y scripts de contenido que se ejecutan en segundo plano, totalmente fuera de la vista de la interfaz de usuario. 

La primera señal de alarma importante aparece al añadir la extensión, que solicita permisos de seguridad y acceso desproporcionados para una aplicación de notas convencional:  

  • Acceso a todas las URL, lo que permite la inyección de scripts en el contenido de cualquier sitio web que visite el usuario. 
  • Acceso al historial de navegación. 
  • Acceso de lectura y escritura al portapapeles. 

Medidas de mitigación y recomendaciones 

Para particulares 

  1. Antes de confirmar cualquier transacción con criptomonedas, comprueba visualmente si los seis primeros y los seis últimos caracteres de la dirección del destinatario coinciden con el origen, preferentemente en otro dispositivo. Este simple hábito permite evitar la gran mayoría de los ataques con “clippers”. 
  2. Instala extensiones de navegador solo desde la Chrome Web Store oficial, la tienda de complementos de Edge o cualquier otra tienda equivalente. Deben considerarse sospechosas las extensiones de tu lista de instaladas que no recuerdes claramente haber instalado. 
  3. Revisa los permisos concedidos a cada extensión instalada. Las herramientas de notas no tienen ninguna necesidad legítima de acceder a todos los sitios web, al historial de navegación ni al portapapeles. 
  4. Evita ejecutar archivos ejecutables no firmados obtenidos de fuentes poco confiables, sobre todo las que ofrecen versiones gratuitas o pirateadas de programas de pago, ya que suelen ser un vector de distribución habitual de este tipo de programas de instalación. 
  5. Mantén actualizada y activada la protección de los dispositivos. Los clientes de McAfee están protegidos contra esta campaña específica, tal como se describe a continuación. 

Las soluciones de seguridad de McAfee ayudan a proteger a los usuarios en múltiples niveles: 

1. McAfee detecta esta amenaza con el nombre de CryptoStealer.NE y garantiza la protección de sus clientes 

Figura 2. Esta imagen muestra cómo bloquea McAfee Antivirus esta amenaza para particulares.
Figura 2. Esta imagen muestra cómo bloquea McAfee Antivirus esta amenaza para particulares.

2. Protección contra descargas maliciosas

McAfee detecta y bloquea el comportamiento del instalador (descarga y ejecución de cargas útiles remotas) antes de que tenga lugar la infección. En nuestras pruebas, McAfee bloqueó todos los dominios y URL maliciosos. 

3. Protección de la red

McAfee bloquea las conexiones a infraestructuras maliciosas conocidas (servidores C2), lo que impide la obtención de direcciones de wallets. 

4. Información sobre amenazas en tiempo real

Teniendo en cuenta que esta amenaza está identificada en los datos de telemetría de McAfee, es posible activar rápidamente medidas de protección para: 

  • Bloquear variantes similares 
  • Detectar infraestructuras asociadas 
  • Proteger a los clientes en todo el mundo 

Cómo funciona esta campaña de amenazas 

Qué hace el malware  

  1. Instala inadvertidamente una extensión de navegador (sideloading, o instalación de extensiones web procedentes fuentes distintas a la tienda oficial) 
  2. Supervisa lo que copias y pegas (sobre todo criptodirecciones) 
  3. Se activa cuando haces una transacción con criptomonedas 
  4. Sustituye sigilosamente la dirección del wallet por la del atacante 
  5. Tu dinero se envía al atacante en lugar de transferirse al destino previsto 

Las transacciones con criptomonedas suelen ser irreversibles, por lo que las víctimas pueden perder sus fondos para siempre.

Figura 3. Esquema del funcionamiento de la extensión.
Figura 3. Esquema del funcionamiento de la extensión.

Principales funciones identificadas 

1. Instalación inadvertida de una extensión 

Este malware no utiliza la tienda oficial del navegador, sino que modifica directamente los archivos del navegador para que parezca que la extensión está instalada (sideloading de extensión de navegador). Este método elude las advertencias de seguridad habituales y escapa a la vigilancia del usuario.

Figura 4. Registros de Procmon que muestran a BaseZipInstaller (instalador web malicioso) escribiendo en los archivos Secure Preferences de Chrome y Edge.
Figura 4. Registros de Procmon que muestran a BaseZipInstaller (instalador web malicioso) escribiendo en los archivos Secure Preferences de Chrome y Edge.

2. Acceso completo al navegador 

Figura 5. Permisos solicitados para una extensión de Chrome.
Figura 5. Permisos solicitados para una extensión de Chrome.
Figura 6. Archivo manifest de la extensión web.
Figura 6. Archivo manifest de la extensión web.

La extensión maliciosa solicita permisos excesivos, como: 

  • Acceder a todos los sitios web 
  • Consultar el historial de navegación 
  • Leer y modificar el contenido del portapapeles 

3. Interceptación de criptodirecciones

La extensión incluye una lógica para detectar direcciones de wallets de múltiples criptomonedas, entre ellas: Figura 7. Expresiones regulares (Regex) de criptomonedas y dirección alternativa definidas en el código.

Figura 7. Expresiones regulares (Regex) de criptomonedas y dirección alternativa definidas en el código.

  • Las direcciones alternativas de wallets que aparecen en el código no se utilizan en todas las transacciones, sino que sirven como mecanismo de respaldo cuando falla la recuperación dinámica de la dirección desde el servidor que controla el atacante.  
  • En condiciones operativas normales, la extensión obtiene las direcciones alternativas de un servidor remoto, lo que permite una asignación dinámica de wallets, posiblemente específica para cada víctima.  
  • Las direcciones de respaldo aseguran la funcionalidad del ataque incluso si la infraestructura de mando y control no está disponible temporalmente o está bloqueada. 
Figura 8. Extensión maliciosa realizando una resolución dinámica de criptodirecciones.
Figura 8. Extensión maliciosa realizando una resolución dinámica de criptodirecciones.
  • Esta función se encarga de obtener la dirección alternativa del wallet que controla el atacante asignada a la dirección original de la víctima.  
  • La función envía al servidor del atacante la dirección de wallet interceptada y utiliza la respuesta para sustituir dinámicamente la dirección original.  
  • Si falla la solicitud al servidor backend, la función recurre a una dirección de wallet predefinida en el código para asegurar que la actividad maliciosa no se vea interrumpida. 
  • 3J98t1Wxxxx es la dirección copiada en el portapapeles 

4Elusión de la detección e invisibilidad 

Figura 8. Archivo Settings.js que muestra la configuración.
Figura 8. Archivo Settings.js que muestra la configuración.
  • La configuración incluye en el código una clave API que la extensión utiliza para autenticar la comunicación con la infraestructura del hacker.  
  • El atacante se vale de una URL RPC que apunta a un nodo de una cadena de bloques pública para obtener de forma dinámica la información del servidor backend, lo que le permite ocultar infraestructuras críticas detrás de sistemas descentralizados.  
  • La presencia de un método y una dirección de contrato inteligente indica que el malware obtiene su dominio de mando y control (C2) de forma indirecta a través de consultas en la cadena de bloques, lo que dificulta su neutralización y su seguimiento. 
  • La lista de dominios bloqueados contiene una lista de sitios web relacionados con la inspección de cadenas de bloques en los que la extensión no funciona. Esto se hace para no alertar a la víctima mientras intenta pegar su propia dirección y ver el saldo de su wallet o consultar sus transacciones. 
Figura 9. Identificación del dominio C2 del atacante mediante un contrato inteligente de Ethereum (etherhiding).
Figura 9. Identificación del dominio C2 del atacante mediante un contrato inteligente de Ethereum (etherhiding).
Figura 10. Carga útil de la solicitud con la dirección del contrato de Ethereum.
Figura 10. Carga útil de la solicitud con la dirección del contrato de Ethereum.
  • El análisis dinámico revela que el malware obtiene su dominio de mando y control a través de un contrato inteligente en una cadena de bloques que devuelve el dominio devops-offensive[.]cc en tiempo de ejecución.  
  • La respuesta de la cadena de bloques se descodifica en tiempo de ejecución y revela el dominio C2 activo (devops-offensive.cc).  
  • Este dominio no está definido en el código, lo que permite al ciberdelincuente actualizar la infraestructura sin modificar el malware.  
  • El dominio obtenido se almacena en la caché local para mantener la persistencia y reducir las consultas repetidas a la red. 
Figura 11. Esta imagen muestra la cadena codificada larga con el dominio malicioso.
Figura 11. Esta imagen muestra la cadena codificada larga con el dominio malicioso.

Esta cadena codificada larga se descodifica utilizando esta función para obtener el dominio final del ciberatacante.

Figura 12. Esta imagen muestra el dominio final del ciberdelincuente.
Figura 12. Esta imagen muestra el dominio final del ciberdelincuente.

Técnicas de persistencia y evasión 

La estrategia de persistencia y evasión de la campaña es deliberada y tiene varias capas. Está claro que el hacker ha optimizado el sistema en dos aspectos: baja visibilidad ante el usuario final y alta resistencia a la neutralización y el análisis estático. 

Persistencia 

  • El registro de la extensión mediante la manipulación de los archivos Secure Preferences asegura la carga de la extensión cada vez que se inicia el navegador sin necesidad de ningún mecanismo auxiliar de persistencia de Windows, ni claves Run del Registro, ni tareas programadas, ni servicios que suelen inspeccionar los cazadores de amenazas en los endpoints. 
  • El modo de desarrollador se activa cuando es necesario mediante código, lo que permite que las extensiones descomprimidas persistan sin que se active el flujo periódico de “advertencia de extensiones descomprimidas” que muestra Chromium para disuadir el sideloading. 
  • El dominio C2 almacenado en caché permite que la extensión siga funcionando con un servidor backend legítimo conocido aun cuando el endpoint RPC de la cadena de bloques no está disponible durante un breve periodo de tiempo. 

Evasión 

  • La identidad visible de la extensión, una sencilla aplicación de notas llamada “Google Notes”, constituye una tapadera bastante convincente ante una inspección superficial de la lista de extensiones instaladas. 
  • Los valores HMAC recalculados satisfacen la verificación de integridad de Chromium, lo que impide que aparezca la advertencia de “extensión instalada de una fuente desconocida” que, de otro modo, alertaría al usuario. 
  • El instalador se borra automáticamente tras ejecutarse, lo que elimina el indicio inicial más evidente en el disco de que el sistema ha sido comprometido. 
  • La obtención del C2 a través de una cadena de bloques pública implica que no hay ningún dominio C2 persistente observable en el propio paquete de malware; las detecciones basadas en red y diseñadas a partir de indicadores de código no se activan hasta que se obtiene el dominio y se establece contacto con él. 
  • Las variantes multilingües del instalador (.NET y Golang) reducen la eficacia de las firmas de los artefactos de compilación y las características binarias. 
  • La sustitución dinámica de wallets por una dirección significa que las direcciones publicadas por los atacantes caducan rápidamente y no se convierten en entradas permanentes de las listas de bloqueo; el equipo de seguridad debe bloquear el servicio backend mismo, no las direcciones que este genera. 

Lógica de sustitución de wallets

La lógica del clipper se divide en dos capas: una capa de script de contenido que supervisa la actividad del portapapeles y los campos de entrada del DOM en todos los sitios visitados, y una capa en segundo plano que se comunica con el backend del atacante para obtener las direcciones alternativas. 

Cuando la extensión observa un evento de copia, aplica a la carga útil del portapapeles un conjunto de expresiones regulares específicas de la criptomoneda. Si se encuentra una coincidencia, la dirección interceptada se transmite al backend mediante una solicitud autenticada (con la clave API integrada en la configuración). El backend responde con una dirección alternativa específica para la original enviada, dirección que se vuelve a copiar en el portapapeles sobrescribiendo la dirección legítima antes de que la víctima pueda pegarla. 

Las pruebas realizadas con un cliente backend reconstruido, creado al reimplementar en Python el formato de solicitud y la lógica de descodificación de respuestas de la extensión, generaron un perfil de comportamiento muy revelador: 

  • Bitcoin(BTC), Ethereum, Bitcoin Cash, Ripple y Dash: cada dirección enviada se asigna a una dirección única controlada por el atacante. Cada vez que se reenvía la misma dirección original, se devuelve la misma dirección alternativa, lo que indica que el servidor mantiene una correspondencia determinista entre pares únicos. 
  • Solana: todas las direcciones enviadas se resumen en una única dirección del atacante, lo que sugiere que la función de asignación por víctima se implementa de forma selectiva según la cadena. 

Análisis de los wallets de criptomoneda del atacante 

A partir de fragmentos del código de la extensión web encargada de obtener las direcciones alternativas, se creó un script en Python para extraer programáticamente las direcciones de los wallets del hacker. La carga útil se elaboró utilizando el propio código del atacante y el fragmento de código “get replacement address” se extrajo de él directamente. En el script también se volvió a implementar fielmente la lógica que utilizaba el ciberdelincuente para descodificar los datos recibidos del servidor C2. 

A continuación, se ejecutó el script utilizando las direcciones de varios wallets Bitcoin (BTC) de prueba. Los resultados demostraron que, por cada dirección Bitcoin introducida, se obtenía como respuesta una dirección Bitcoin única, y que todas esas direcciones obtenidas eran wallets BTC válidos. Esto significa que, por cada dirección BTC facilitada, el atacante genera dinámicamente un nuevo wallet vinculado a esa dirección concreta. Además, cuando se volvió a introducir la misma dirección, se obtuvo la misma dirección BTC, lo que confirma que cada dirección BTC de una víctima está vinculada de forma determinista a una única dirección específica controlada por el delincuente. Aunque algunos de estos wallets pertenecientes al hacker contenían fondos y otros estaban vacíos, el hecho de que se desconozca el número total de wallets del atacante dificulta un cálculo confiable de la cantidad total de criptomonedas robadas. 

Con Ethereum se observó el mismo comportamiento: para cada entrada se devolvían direcciones de wallets diferentes. Curiosamente, cuando se probó el script con direcciones Solana, solo se obtuvo una única dirección, independientemente del número de entradas distintas introducidas. Esto parece indicar que el hacker solo ha implementado la función de asignación por dirección con determinadas criptomonedas, mientras que con otras recurre a un único wallet estático para la recolección. Como la dirección Solana es común a todas las víctimas, en su saldo se observa un aumento considerable. Además, se descubrió que una de las direcciones identificadas de Ethereum contenía fondos por valor de unos 1,902 USD. 

En resumen, las criptomonedas para las que se generan direcciones de wallet únicas por cada víctima son Bitcoin, Ethereum, Bitcoin Cash, Ripple y Dash.Fig. 13. La carga útil se diseñó como código malicioso.

Figura 13. La carga útil se diseñó como código malicioso.

Fig. 14. Fragmento de código para obtener la dirección alternativa extraído del código malicioso.
Figura 14. Fragmento de código para obtener la dirección alternativa extraído del código malicioso.
Fig. 15. También se implementó la lógica del atacante para descodificar los datos recibidos del servidor C2.
Figura 15. También se implementó la lógica del atacante para descodificar los datos recibidos del servidor C2.

Ejecución del script con algunas direcciones de wallets Bitcoin de prueba Fig. 16. Por cada dirección Bitcoin se devolvió una dirección Bitcoin única, y todas las direcciones son direcciones de monederos BTC válidos.

Figura 16. Por cada dirección Bitcoin se devolvió una dirección Bitcoin única, y todas las direcciones son direcciones de wallets BTC válidos.

Fig. 17. Del mismo modo, Ethereum utilizaba direcciones únicas.
Figura 17. Del mismo modo, Ethereum utilizaba direcciones únicas.
Figura 18: Ejecución del script con direcciones Solana de prueba.
Figura 18. Ejecución del script con direcciones Solana de prueba

Afortunadamente, con Solana solo obtenemos una dirección cuando suministramos varias. Esto demuestra que el ciberdelincuente solo ha implementado esta función de asignación de direcciones con determinadas criptomonedas.

Fig. 19 Aquí es posible ver el incremento de saldo.
Figura 19. Aquí es posible ver el incremento de saldo.
Fig. 20. La dirección ETH registraba un saldo de 1,902 USD.
Figura 20. La dirección ETH registraba un saldo de 1,902 USD.

Análisis técnico de un archivo  .net  (instalador de extensión) 

Fig. 21: BaseZipInstaller es un instalador .NET no firmado.
Figura 21. BaseZipInstaller es un instalador .NET no firmado.
Fig. 22: Configuración almacenada tal como aparece en Dnspy.
Figura 22. Configuración almacenada tal como aparece en Dnspy.
  • El malware incluye un archivo JSON de configuración completo directamente en el archivo binario, lo que elimina la necesidad de obtener los datos de configuración iniciales de fuentes externas.  
  • Esta configuración integrada incluye datos indispensables, como las claves API, la URL del servidor backend, las extensiones del wallet seleccionado y el archivo manifest completo de la extensión con todos los permisos.  
Fig. 23: Función principal desde la que se inicia la ejecución.
Figura 23. Función principal desde la que se inicia la ejecución.
  • El instalador obtiene y valida un archivo ZIP remoto (google-services[.]cc/base[.]zip) que sirve como carga útil principal para desplegar la extensión de navegador maliciosa y marca la transición de la infección inicial a la vulneración del navegador. 
Fig. 24 La extensión se crea en la siguiente ubicación del sistema con los archivos descargados en base.zip.
Figura 24. La extensión se crea en la siguiente ubicación del sistema con los archivos descargados en base.zip.
Fig. 25: Dnspy mostrando la lista de navegadores afectados.
Figura 25. Dnspy mostrando la lista de navegadores afectados.
  • El instalador evalúa varios navegadores basados en Chromium, como Chrome, Edge, Opera y Brave, para identificar los perfiles de usuario disponibles en el sistema.  
  • Por cada perfil detectado, el malware fuerza el cierre del proceso del navegador para modificar de forma segura los archivos de configuración sin interferencias.  
  • A continuación, inyecta la extensión maliciosa modificando directamente los archivos Secure Preferences y Preferences, lo que permite cargar la extensión sin interaccionar con el usuario. 
más código
  • El malware identifica las rutas de instalación del navegador consultando los directorios estándar del sistema, lo que le permite localizar las carpetas de datos del usuario de Chrome, Edge, Opera y Brave.  
  • Enumera sistemáticamente los perfiles del navegador y busca específicamente si hay un archivo Secure Preferences, que guarda datos críticos de la configuración del navegador y sus extensiones.  
  • Al centrarse en los perfiles que tienen Secure Preferences, el malware se asegura de modificar únicamente entornos de navegador válidos, lo que aumenta la confiabilidad de la inyección de la extensión. 
Podemos ver el evento WriteFile en los archivos Secure Preferences de Chrome y MS Edge cuando se registran en estos archivos de configuración los detalles de la extensión descargada.
Podemos ver el evento WriteFile en los archivos Secure Preferences de Chrome y MS Edge cuando se registran en estos archivos de configuración los detalles de la extensión descargada.
Fig. 27: Lógica del atacante para volver a firmar a los archivos Secure Preferences.
Figura 27. Lógica del atacante para volver a firmar los archivos Secure Preferences.
  • El malware lee y modifica el archivo Secure Preferences del navegador, que controla las extensiones instaladas y su nivel de confianza.  
  • Inyecta la extensión maliciosa en la configuración e intenta volver a firmar los datos modificados para que los cambios parezcan legítimos ante las comprobaciones de integridad del navegador.  
  • A continuación, la configuración actualizada se guarda de nuevo en el disco, lo que asegura la carga automática de la extensión y su persistencia incluso tras reiniciar el navegador. 
Fig. 27B: Se añade la ruta de la extensión al archivo Secure Preferences de Chrome.
Figura 27B. Se añade la ruta de la extensión al archivo Secure Preferences de Chrome.
Fig. 28: Lógica para manipular las defensas del navegador Brave.
Figura 28. Lógica para manipular las defensas del navegador Brave.
  • En navegadores como Brave y Opera, el malware inyecta la extensión maliciosa directamente en la configuración del navegador añadiendo entradas en la sección extensions.settings (o extensions.opsettings).  
  • También actualiza los campos relacionados con la integridad (protection.macs) para que el navegador considere que la extensión inyectada es de confianza.  
  • Además, el malware intenta activar el modo de desarrollador mediante código, lo que permite ejecutar extensiones descomprimidas con menos restricciones. 
Fig. 29: Lógica del atacante para obtener el ID de dispositivo que se utiliza para calcular posteriormente los valores de integridad.
Figura 29. Lógica del atacante para obtener el ID de dispositivo que se utiliza para calcular posteriormente los valores de integridad.
  • El malware intenta volver a calcular las firmas de integridad del navegador generando nuevos valores MAC (código de autenticación de mensajes) para el archivo Secure Preferences modificado.  
  • Utiliza identificadores específicos del sistema, como el SID del equipo, combinados con un valor generador para imitar el mecanismo de verificación interno de Chrome.  
  • Al volver a calcular estas comprobaciones de integridad (macs y super_mac), el malware intenta que sus modificaciones no autorizadas le parezcan legítimas al navegador. 
Figura 30: Lógica de autoeliminación.
Figura 30. Lógica de autoeliminación.
  • El malware incluye un mecanismo de autoeliminación diseñado para borrar el archivo ejecutable del instalador una vez ejecutado correctamente.  
  • Inicia un proceso oculto en la línea de comandos que retrasa un poco la ejecución antes de borrar el archivo original del disco. 

Conclusión 

Esta campaña es un claro ejemplo de la dirección que ha tomado el robo de criptomonedas diseñado para particulares. El operador usa la categoría más antigua y simple de criptomalware (el clipper) y mejora discretamente tres de sus eslabones más débiles. Las direcciones estáticas del atacante se han sustituido por una asignación específica para cada víctima en el lado del servidor. Los dominios de mando y control, que eran frágiles y estaban definidos en el código, se han sustituido por una búsqueda en cadena de bloques que el operador puede modificar con una sola transacción. Además, se ha reemplazado un dropper inestable por una extensión de Chromium integrada en la aplicación en la que más confía el usuario y que se carga con la firma de integridad propia del navegador. 

McAfee seguirá vigilando esta campaña y la infraestructura correspondiente. Nuestros clientes están protegidos por los sistemas de detección actuales y recibirán actualizaciones basadas en datos de telemetría a medida que se identifiquen nuevas variantes e infraestructuras modificadas. 

Indicadores de compromiso (IOC)

Tipo  Categoría  Valor 
SHA-256  Instalador .NET (BaseZipInstaller)  2735e12030c195fb5454e4736c51b55b59664b93cae9f4bd5317afcd9c2af0bf 053620962047f50a91c6e8d1a6519eccc41fab51473f033086b4d816abe8bcb0    
SHA-256  Variante del instalador compilada en Golang  11be4c47ff049322de41743f62544cafd32d67e24ad653b7ebedf8ebd63e0962    1432393691b415d0cd4680d9cee73e60896fbe63300d9f0355c96e91817e4b1d   
URL  Distribución de la carga útil  hxxps://google-ser vices[.]cc/base[.]zip 
Dominio  Mando y control (obtenido mediante contrato inteligente)  devops-offensive[.]cc  Zebregts[.]com 
Wallet BTC  Wallet de criptomoneda 3JvDBvKbS6YYMKjV3R9e9Zfd67f467fNLy  1BbhVBxpniuZuAL1gGZnEMdQhmz9JGWpyT  3AcPNVh7NyESwX3ECymy3rkdH4Ke2c26Tj  1BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX 
Artefacto  Destino de sideloading  Archivo Secure Preferences de Chromium (perfiles de Chrome, Edge, Brave y Opera) 
Archivos de extensión  manifest.json   crypto-patterns.js    Interceptor.js    content-script.j     cache.js     domain-resolver.js    service-worker.js    api-client.js  ed2599d6a8f30d5eaf14ad7f855aece0acdf7efa4a148eb18e4d9f0d8e2cd90c   daf82c67e8e5df6bbd5370172ac9374aa7dce48af05496e8ec3dba7b602c619b   6eb2f07265dd95cacd39dfcf0705786b97f3e173cf4e9b3dfe7bad141c9a9dd5    a2ffdbedc5c9f5400a2b1cf5d35f5ec1df06a74d0345f1035bcf75d36ed73e01     eb84ba4a0cd95655a021865d4fec93ae3393f86cc9848810ed0b49035b1c5e2c   6aaba685669d779ef8be8f7f4231096cfafd0ef386f3897c5e2106c177724fc8     2599064901308a97540af29197ed0b38702bbee38d6dbbfa61cf9eb5878353f3   ab450927b37e1b68e2be68832c354ac600e86e2545a904d4ca0ea283f2600cc2    
Presentamos McAfee+

Protección contra robo de identidad y privacidad para tu vida digital

FacebookLinkedInTwitterEmailCopy Link

Mantente al día

Síguenos para mantenerte al día de las novedades de McAfee y estar al tanto de las amenazas de seguridad más recientes para particulares y dispositivos móviles.

FacebookTwitterInstagramLinkedINYouTubeRSS

Más artículos de Seguridad en Internet

Back to top