miércoles, mayo 20, 2026

Consola Nx comprometida 18.95.0 dirigida a desarrolladores de código VS con ladrón de credenciales

TecnologíaConsola Nx comprometida 18.95.0 dirigida a desarrolladores de código VS con ladrón de credenciales

Los investigadores de ciberseguridad han detectado una versión comprometida de la extensión de la consola Nx que se publicó en el mercado de Microsoft Visual Studio Code (VS Code).

La extensión en cuestión es rwl.angular-console (versión 18.95.0), una interfaz de usuario y complemento popular para editores de código como VS Code, Cursor y JetBrains. La extensión VS Code tiene más de 2,2 millones de instalaciones. La versión Open VSX no se ha visto afectada por el incidente.

«A los pocos segundos de que un desarrollador abriera cualquier espacio de trabajo, la extensión comprometida buscó y ejecutó silenciosamente una carga útil ofuscada de 498 KB de una confirmación huérfana oculta dentro del repositorio oficial de GitHub nrwl/nx», dijo el investigador de StepSecurity Ashish Kurmi.

La carga útil es una «herramienta de envenenamiento de la cadena de suministro y ladrón de credenciales de varias etapas» que recopila secretos de los desarrolladores y los filtra a través de HTTPS, la API de GitHub y el túnel DNS. También instala una puerta trasera de Python en sistemas macOS que abusa de la API de búsqueda de GitHub como un solucionador muerto para recibir más comandos.

En un aviso emitido el lunes, los mantenedores de la extensión dijeron que la causa raíz se remonta a uno de sus desarrolladores, cuya máquina se vio comprometida en un incidente de seguridad reciente que filtró sus credenciales de GitHub. Aunque no se reveló la naturaleza del «incidente» anterior, las credenciales del desarrollador han sido revocadas temporalmente.

Se dice que se ha abusado del acceso proporcionado por las credenciales para enviar un compromiso huérfano y sin firmar a nrwl/nx, que introduce el malware ladrón. La acción maliciosa se activa tan pronto como un desarrollador abre cualquier espacio de trabajo en VS Code, lo que lleva a la instalación del tiempo de ejecución Bun JavaScript para ejecutar una carga útil «index.js» ofuscada.

El malware ejecuta comprobaciones para evitar infectar máquinas probablemente ubicadas en las zonas horarias de Rusia/CEI y se lanza como un proceso en segundo plano independiente para iniciar el flujo de trabajo de recolección de credenciales, lo que le permite recuperar secretos de las bóvedas de 1Password y las configuraciones de Anthropic Claude Code, y secretos asociados con npm, GitHub y Amazon Web Services (AWS).

«Una capacidad que se destaca: la carga útil contiene integración completa de Sigstore, incluida la emisión de certificados Fulcio y la generación de procedencia SLSA», dijo StepSecurity. «Combinado con tokens npm OIDC robados, esto significa que el atacante podría publicar paquetes npm posteriores con certificaciones de procedencia válidas y firmadas criptográficamente, haciendo que los paquetes maliciosos parezcan compilaciones legítimas y verificadas».

El equipo de Nx también reconoció que «algunos usuarios se vieron comprometidos» como resultado de esta infracción. Además de instar a los usuarios a actualizar a 18.100.0 o posterior, los mantenedores han publicado los siguientes indicadores de compromiso:

  • La versión 18.95.0 de Nx Console se instaló durante el período de exposición entre el 18 de mayo de 2026, a las 2:36 p. m. CEST y a 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 cualquiera de los siguientes procesos en ejecución: un proceso de Python que ejecuta cat.py y un proceso con __DAEMONIZED=1 en su entorno.

Se recomienda a los usuarios afectados que finalicen los procesos antes mencionados, eliminen los artefactos en el disco y roten todas las credenciales accesibles desde la máquina afectada, incluidos tokens, secretos y claves SSH.

Este desarrollo marca la segunda vez que se ataca al ecosistema Nx en un año. En agosto de 2025, un ladrón de credenciales infectó varios paquetes de npm como parte de una campaña de ataque a la cadena de suministro denominada s1ngularity. A diferencia de la iteración anterior, el último ataque tiene como objetivo la extensión VS Code.

Paquetes npm maliciosos en abundancia

Los hallazgos coinciden con el descubrimiento de varios paquetes maliciosos en los repositorios de código abierto.

  • iceberg-javascript, supabase-javascript, auth-javascript, microsoft-applicationinsights-common y ms-graph-types: cinco paquetes npm que contienen un binario ELF oculto que bloquea sesiones de Claude Code para robar credenciales de desarrollador.
  • noon-contracts: un paquete npm que se hace pasar por un SDK de contrato inteligente del protocolo Noon para extraer claves SSH, claves privadas de billetera criptográfica, credenciales de AWS, secretos de Kubernetes, todos los archivos .env, historial de shell, tokens Docker/Git/npm y rutas de almacenamiento de billetera del navegador.
  • martinez-polygon-clipping-tony, una bifurcación troyanizada de martinez-polygon-clipping que usa un gancho postinstalación para descargar un troyano de acceso remoto (RAT) de Windows empaquetado en PyInstaller de 17 MB que usa Telegram para comando y control (C2) para ejecución remota de shell, captura de pantalla, carga/descarga de archivos y ejecución arbitraria de Python.
  • common-tg-service: un paquete npm que contiene funcionalidad para hacerse cargo de la cuenta de Telegram de una víctima mientras se hace pasar por «servicio Common Telegram para aplicaciones NestJS».
  • exiouss: un paquete npm que incluye un ladrón de cookies de sesión ChatGPT y OpenAI dirigido a navegadores web como Google Chrome, Microsoft Edge y Brave.
  • k8s-pod-checker, dev-env-setup y node-perf-utils: tres paquetes npm que forman parte del clúster kube-health-tools que instalan un servicio proxy de modelo de lenguaje grande (LLM) en la máquina de la víctima, lo que permite al atacante enrutar el tráfico LLM a través del servidor comprometido.
  • Una campaña coordinada de recolección de credenciales orquestada por un actor de amenazas de habla indonesia que utiliza un conjunto de paquetes de 38 npm que aprovecha la confusión de dependencias como una forma de engañar a las canalizaciones de CI/CD para resolver paquetes públicos maliciosos antes que los privados legítimos asociados con Apple, Google y Alibaba, entre otros.
  • Una campaña inusual en la que se descubrió que siete paquetes npm bajo la organización @hd-team actúan como escenario para las configuraciones utilizadas por una plataforma china de apuestas deportivas y transmisión pirata llamada Douqiu para determinar los servidores backend a los que conectarse.

Artículos más populares