SAFE. Guía para proteger tu vida digital y tu privacidad

25 jul 2026

SourTrade: malware ensamblado en el navegador y distribuido a través de publicidad maliciosa

Una operación de publicidad maliciosa denominada SourTrade obliga a los navegadores de las víctimas a generar el ejecutable final de Windows por sí mismos, utilizando un entorno de ejecución Bun legítimo como base, en lugar de servir un archivo malicioso completo desde una URL fija.

Confiant, que detalló la campaña el 23 de julio de 2026, afirmó que opera desde finales de 2024 y suplanta la identidad de TradingView, Solana y Luno para atacar a inversores minoristas y de criptomonedas en 12 países y 25 idiomas.

SourTrade es un grupo de publicidad maliciosa persistente y a gran escala que ataca principalmente a las regiones de Asia-Pacífico y Latinoamérica. Los atacantes utilizan anuncios gráficos en inglés y en el idioma local de la región geográfica a la que se dirigen. Su objetivo es redirigir a las víctimas a sus sitios web, que suplantan la identidad de plataformas legítimas de criptomonedas y comercio.

Sus páginas de destino identifican a los visitantes, mostrando a los presuntos investigadores y bots una página vacía, mientras que las víctimas seleccionadas reciben una copia convincente del servicio suplantado. La defensa contra esto es la habitual: instalar el software de trading y la cartera desde el sitio web del proveedor, no desde un anuncio.

La cadena documentada no se basa en una vulnerabilidad del navegador ni elimina la Marca de la Web (MotW). El análisis de Confiant documenta la entrega, no la ejecución del archivo dentro del navegador, y no determina si la descarga final se inicia automáticamente o requiere un clic.

La página de destino comienza a preparar la ruta de entrega sin esperar a que se haga clic en la descarga. Registra un ServiceWorker con ámbito de página en /sw.js y, a continuación, crea un SharedWorker a partir del JavaScript ya integrado en la página, de modo que el código fuente del worker nunca aparece como una solicitud independiente.

El SharedWorker solicita /config, que devuelve una plantilla, una URL de ejecución secundaria y valores aleatorios específicos de la sesión. El navegador recupera y descomprime un entorno de ejecución Bun limpio desde ese segundo dominio, purelogicbox[.]org, en la respuesta de ejemplo publicada.

Los blobs Base64 de la configuración proporcionan el encabezado del ejecutable portátil (PE), la tabla de secciones y una sección .bun que contiene código de bytes JavaScriptCore malicioso para app.js. Bun se ejecuta en el motor JavaScriptCore de Apple y admite legítimamente la compilación de aplicaciones y código de bytes en ejecutables independientes de Windows.

El worker genera entonces una gran secuencia de bytes pseudoaleatorios mediante AES en modo contador (AES-CTR). A continuación, sigue la plantilla proporcionada como una receta de copia de bytes, combinando rangos seleccionados del entorno de ejecución de Bun, el flujo generado y el material ejecutable controlado por el atacante.

Cada víctima puede recibir un archivo ensamblado diferente: al rotar la semilla y el tamaño en cada respuesta de /config, se modifica el hash, pero se conserva el código ejecutable. "Nunca existe malware terminado en la red", escribió Michael Steele, del equipo de inteligencia de amenazas de Confiant. No existe ningún binario completo, aunque las estructuras PE y el código de bytes llegan en formato Base64 en /config.

Una vez ensamblada, la página pasa el ejecutable al ServiceWorker como un flujo legible. Un iframe oculto navega a una URL del mismo origen, y el worker devuelve los bytes generados con una cabecera adjunta Content-Disposition. El registro MotW resultante identifica la página de destino como la fuente de descarga, no el dominio independiente que proporcionó el entorno de ejecución Bun. MotW permanece presente.

El método evolucionó a partir de la actividad que Confiant rastreó hasta el 30 de abril de 2026, cuando las páginas cargaban StreamSaver.js, una biblioteca de descarga en streaming de código abierto, desde la dirección de GitHub Pages de su autor. Esto dejó la ruta de descarga registrada apuntando a la URL de GitHub de la biblioteca. Las páginas actuales conservan su arquitectura de streaming, incluidos los nombres de mensaje streamsaver:, pero ya no la obtienen de GitHub.

Bitdefender documentó el clúster de publicidad maliciosa de TradingView relacionado en septiembre de 2025, identificando su carga útil final como el ladrón que Check Point rastrea como JSCEAL y WithSecure como WeevilProxy. Confidence identifica características compartidas de la campaña y los ejecutables, pero no demuestra que las tres muestras publicadas contengan dicha carga útil. El informe también indica que Bitdefender encontró un ejecutable Bun modificado en este clúster.

El robo de credenciales, el registro de pulsaciones de teclas, la interceptación de tráfico, el robo de monederos y las capacidades de acceso remoto documentadas en la campaña anterior aún no pueden atribuirse a los archivos actuales.

No existe ningún parche de software para aplicar. La evasión es más limitada de lo que parece a primera vista. La sección de implicaciones prácticas de Confidence lo expresa de forma más modesta: las compilaciones únicas por sesión limitan el valor de las detecciones simples basadas en hash. El material PE y el código de bytes controlados por el atacante aún se propagan por la red. Los defensores deben examinar toda la cadena, desde la referencia del anuncio y la página de destino oculta hasta la solicitud /config, la obtención del dominio secundario en tiempo de ejecución y la descarga del Service Worker, en lugar de considerar un único artefacto de red o archivo como determinante.

Confiant publicó tres hashes SHA-256 y una lista de dominios maliciosos. La empresa no identificó a ningún responsable y detuvo su análisis en el momento en que el archivo se descarga en el disco.

Fuente: THN



Suscríbete a nuestro Boletín

0 Comments:

Publicar un comentario

Gracias por dejar un comentario en Segu-Info.

Gracias por comentar!