Extensión Nx Console Comprometida: Una Pesadilla de Cadena de Suministro para Desarrolladores de VS Code
Se ha descubierto una versión comprometida de la extensión Nx Console para **Microsoft** Visual Studio Code (**VS Code**), lo que representa un riesgo significativo para la cadena de suministro. La extensión maliciosa, versión 18.95.0 de `rwl.angular-console`, recopila silenciosamente secretos de desarrolladores e instala una backdoor de Python en sistemas macOS.
Investigadores de ciberseguridad han descubierto un ataque a la cadena de suministro dirigido a desarrolladores que utilizan la extensión **Nx Console** en el **VS Code** Marketplace de **Microsoft**.
### Detalles de la Extensión Comprometida
La extensión afectada es `rwl.angular-console` (versión 18.95.0), una herramienta popular con más de 2.2 millones de instalaciones para editores de código como **VS Code**, Cursor y JetBrains. La versión de Open VSX no se ve afectada. Según Ashish Kurmi, investigador de **StepSecurity**, "A los pocos segundos de que un desarrollador abriera cualquier espacio de trabajo, la extensión comprometida recuperó y ejecutó silenciosamente un payload ofuscado de 498 KB de un commit huérfano colgado oculto dentro del repositorio oficial nrwl/nx de GitHub".

### Técnicas de Payload y Exfiltración
El payload se describe como una "herramienta de robo de credenciales multietapa y envenenamiento de cadena de suministro" que exfiltra secretos de desarrolladores a través de HTTPS, la API de GitHub y túneles DNS. También instala una backdoor de Python en sistemas macOS, aprovechando la API de Búsqueda de GitHub para comunicaciones de comando y control (C2).
### Causa Raíz y Mitigación
Los mantenedores de la extensión han atribuido la brecha a una máquina de desarrollador comprometida, lo que provocó la filtración de credenciales de GitHub. Estas credenciales se utilizaron para enviar un commit huérfano y sin firmar que contenía el malware al repositorio `nrwl/nx`. El código malicioso se activa cuando un desarrollador abre un espacio de trabajo en **VS Code**, instalando el runtime de JavaScript Bun para ejecutar un payload ofuscado `index.js`.
El malware evita infectar máquinas en zonas horarias rusas/CIS y opera como un proceso de fondo separado. Se dirige a secretos de varias fuentes, incluyendo bóvedas de **1Password**, configuraciones de **Anthropic Claude Code**, npm, GitHub y **Amazon Web Services (AWS)**.
### Integración de Sigstore y Envenenamiento de Cadena de Suministro
"Una capacidad que destaca: el payload contiene integración completa de Sigstore, incluyendo la emisión de certificados Fulcio y la generación de pruebas de procedencia SLSA", señaló **StepSecurity**. Esto permite a los atacantes publicar paquetes npm maliciosos con atestaciones de procedencia válidas y firmadas criptográficamente, haciéndolos parecer legítimos.

### Pasos de Remediación
El equipo de **Nx** ha reconocido que "unos pocos usuarios fueron comprometidos" y recomienda actualizar a la versión 18.100.0 o posterior. También han proporcionado los siguientes indicadores de compromiso (IOCs):
* Extensión Nx Console versión 18.95.0 instalada entre el 18 de mayo de 2026, a las 2:36 p. m. CEST y las 2:47 p. m. CEST.
* Presencia de archivos como `~/.local/share/kitty/cat.py`, `~/Library/LaunchAgents/com.user.kitty-monitor.plist`, `/var/tmp/.gh_update_state`, o `/tmp/kitty-*
* Presencia de un proceso de Python ejecutando `cat.py` o un proceso con `__DAEMONIZED=1` en su entorno.
Los usuarios afectados deben terminar estos procesos, eliminar los artefactos identificados y rotar todas las credenciales accesibles desde la máquina comprometida, incluyendo tokens, secretos y claves SSH.
### Ataques Recurrentes al Ecosistema Nx
Este incidente marca la segunda vez que el ecosistema **Nx** ha sido atacado en un año. En agosto de 2025, varios paquetes npm fueron infectados por un ladrón de credenciales como parte de la campaña de ataque a la cadena de suministro **s1ngularity**. A diferencia del ataque anterior, este último incidente se dirige directamente a la extensión **VS Code**.
### Reciente Oleada de Paquetes npm Maliciosos
Este descubrimiento se alinea con una tendencia más amplia de paquetes maliciosos encontrados en repositorios de código abierto, incluyendo:
* `iceberg-javascript`, `supabase-javascript`, `auth-javascript`, `microsoft-applicationinsights-common`, y `ms-graph-types`: Contienen un binario ELF oculto que instala una backdoor en sesiones de **Claude Code**.
* `noon-contracts`: Imita un SDK de contrato inteligente de Noon Protocol para exfiltrar credenciales y claves sensibles.
* `martinez-polygon-clipping-tony`: Una bifurcación troyanizada que descarga un troyano de acceso remoto (RAT) para Windows controlado a través de Telegram.
* `common-tg-service`: Diseñado para secuestrar cuentas de Telegram.
* `exiouss`: Incluye un ladrón de cookies de sesión de ChatGPT y OpenAI.
* `k8s-pod-checker`, `dev-env-setup`, y `node-perf-utils`: Parte de kube-health-tools que instala un servicio proxy de LLM.
* Una campaña coordinada de robo de credenciales dirigida a gigantes tecnológicos como **Apple**, **Google** y **Alibaba** utilizando confusión de dependencias.
* Siete paquetes npm bajo la organización `@hd-team` que actúan como un cargador para configuraciones utilizadas por una plataforma china de apuestas deportivas.