Investigadores de ciberseguridad han descubierto un infeliz autopropagante que se propaga a través de extensiones de Visual Studio Code (VS Code) en Open VSX Registry y Microsoft Extension Marketplace, lo que subraya cómo los desarrolladores se han convertido en un objetivo principal para los ataques.
La sofisticada amenaza, cuyo nombre en código infeliz de cristal de Koi Security, es el segundo ataque de este tipo a la sujeción de suministro que afecta al espacio DevOps en un período de un mes a posteriori del infeliz Shai-Hulud que atacó el ecosistema npm a mediados de septiembre de 2025.
Lo que hace que el ataque se destaque es el uso de la sujeción de bloques Solana para comando y control (C2), lo que hace que la infraestructura sea resistente a los esfuerzos de matanza. Igualmente utiliza Google Calendar como mecanismo posible de C2.
Otro aspecto novedoso es que la campaña GlassWorm se sostén en “caracteres Unicode invisibles que hacen que el código taimado textualmente desaparezca de los editores de código”, dijo Idan Dardikman en un documentación técnico. “El atacante utilizó selectores de variación Unicode: caracteres especiales que forman parte de la concreción Unicode pero que no producen ningún resultado visual”.
El objetivo final del ataque es recoger credenciales de npm, Open VSX, GitHub y Git, drenar fondos de 49 extensiones diferentes de billeteras de criptomonedas, implementar servidores proxy SOCKS para convertir las máquinas de los desarrolladores en conductos para actividades delictivas, instalar servidores VNC (HVNC) ocultos para golpe remoto y convertir las credenciales robadas en armas para comprometer paquetes y extensiones adicionales para uso futuro. propagación.
Los nombres de las extensiones infectadas, 13 de ellas en Open VSX y una en Microsoft Extension Marketplace, se enumeran a continuación. Estas extensiones se han descargado unas 35.800 veces. La primera ola de infecciones tuvo área el 17 de octubre de 2025. Actualmente no se sabe cómo se secuestraron estas extensiones.
- codejoy.codejoy-vscode-extensión 1.8.3 y 1.8.4
- l-igh-t.vscode-theme-seti-carpeta 1.2.3
- kleinefilmroellchen.serenity-dsl-syntaxhighlight 0.3.2
- JScearcy.rust-doc-viewer 4.2.1
- SIRILMP.tema-oscuro-sm 3.11.4
- CodeInKlingon.git-worktree-menu 1.0.9 y 1.0.91
- ginfuru.better-nunjucks 0.3.2
- ellacrity.recoil 0.7.4
- grrrck.positron-plus-1-e 0.0.71
- jeronimoekerdt.color-picker-universal 2.8.91
- colores-srcery.colores-srcery 0.3.9
- sissel.shopify-líquido 4.0.1
- TretinV3.forts-api-extensión 0.3.1
- cline-ai-main.cline-ai-agent 3.1.3 (Mercado de extensiones de Microsoft)
El código taimado oculto en el interior de las extensiones está diseñado para apañarse transacciones asociadas con una billetera controlada por un atacante en la sujeción de bloques de Solana y, si la encuentra, procede a extraer una sujeción codificada en Base64 del campo memo que decodifica en el servidor C2 (“217.69.3(.)218” o “199.247.10(.)166”) utilizado para recuperar la carga útil de la posterior etapa.
La carga útil es un carterista de información que captura credenciales, tokens de autenticación y datos de billeteras de criptomonedas, y llega a un evento de Google Calendar para analizar otra sujeción codificada en Base64 y comunicarse con el mismo servidor para obtener una carga útil con nombre en código Zombi. Los datos se extraen a un punto final remoto (“140.82.52(.)31:80”) administrado por el actor de la amenaza.
Escrito en JavaScript, el módulo Zombi esencialmente convierte una infección GlassWorm en un compromiso completo al eliminar un proxy SOCKS, módulos WebRTC para comunicación entre pares, Distributed Hash Table (DHT) de BitTorrent para distribución descentralizada de comandos y HVNC para control remoto.
El problema se ve agravado por el hecho de que las extensiones de VS Code están configuradas para actualizarse automáticamente, lo que permite a los actores de amenazas mandar el código taimado automáticamente sin requerir ninguna interacción del heredero.
“Este no es un ataque puntual a la sujeción de suministro”, dijo Dardikman. “Es un infeliz diseñado para propagarse por el ecosistema de desarrolladores como la pólvora”.
“Los atacantes han descubierto cómo hacer que la sujeción de suministro de malware sea engreído. Ya no sólo están comprometiendo paquetes individuales: están creando gusanos que pueden propagarse de forma autónoma a través de todo el ecosistema de exposición de software”.
El exposición se produce cuando el uso de blockchain para organizar cargas aperos maliciosas ha experimentado un aumento adecuado a su seudónimo y flexibilidad, e incluso los actores de amenazas de Corea del Septentrión aprovechan la técnica para orquestar sus campañas de espionaje y motivadas financieramente.


