Repositorios internos de GitHub violados a través de la extensión maliciosa de código VS de la consola Nx – CYBERDEFENSA.MX

GitHub confirmó oficialmente el miércoles que la violación de sus repositorios internos fue el resultado de un compromiso del dispositivo de un empleado que involucraba una versión envenenada de la extensión Microsoft Visual Studio Code (VS Code) de la consola Nx.

El desarrollo se produce cuando el equipo de Nx reveló que la extensión, nrwl.angular-console, fue violada después de que uno de los sistemas de sus desarrolladores fuera pirateado a raíz del reciente ataque a la cadena de suministro de TanStack, que también afectó a OpenAI, Mistral AI y Grafana Labs.

«No tenemos evidencia de impacto en la información de los clientes almacenada fuera de los repositorios internos de GitHub, como las propias empresas, organizaciones y repositorios de nuestros clientes», Alexis Wales, director de seguridad de la información de GitHub, dicho en un comunicado.

«Algunos de los repositorios internos de GitHub contienen información de los clientes, por ejemplo, extractos de interacciones de soporte. Si se descubre algún impacto, notificaremos a los clientes a través de los canales de notificación y respuesta a incidentes establecidos».

Ciberseguridad

Se dice que el ataque permitió al actor de la amenaza, un grupo cibercriminal conocido como TeamPCP, filtrar alrededor de 3.800 repositorios. GitHub dijo que tomó medidas para contener el incidente y rotó secretos críticos, y agregó que continúa monitoreando la situación para detectar actividades de seguimiento.

En una publicación en X, Jeff Cross, cofundador de Narwhal Technologies, la empresa detrás de nx.dev, dicho«este incidente resalta que es necesario que haya cambios más profundos y fundamentales en la forma en que nosotros y otros mantenedores debemos pensar acerca de proteger las herramientas de desarrollo y la distribución de código abierto».

«También estamos iniciando conversaciones con otros mantenedores de código abierto de alto perfil sobre cómo podemos trabajar juntos en algunos de los problemas estructurales más profundos en torno a la seguridad de la cadena de suministro de software. Muchas de las suposiciones bajo las cuales el ecosistema ha operado durante años ya no se cumplen».

En los últimos meses, TeamPCP ha ganado rápidamente notoriedad por sus ataques a la cadena de suministro de software a gran escala, específicamente persiguiendo proyectos de código abierto ampliamente utilizados y herramientas de seguridad adyacentes en las que confían los desarrolladores.

Lo que es notable aquí es que la versión troyanizada de la extensión VS Code estuvo activa en Visual Studio Marketplace solo durante dieciocho minutos (entre las 12:30 p. m. y las 12:48 p. m. UTC del 18 de mayo de 2026). Pero esta breve ventana fue suficiente para que los atacantes distribuyeran un ladrón de credenciales capaz de recopilar datos confidenciales de las bóvedas de 1Password, configuraciones de Anthropic Claude Code, npm, GitHub y Amazon Web Services (AWS).

«La extensión se veía y se comportaba como la Consola Nx normal, pero al iniciarse ejecutaba silenciosamente un único comando de shell que descargaba y ejecutaba un paquete oculto desde una confirmación plantada en el repositorio oficial de GitHub nrwl/nx», dijo Nir Zadok, investigador de seguridad de OX. dicho. «El comando fue disfrazado como una tarea rutinaria de configuración del MCP para no levantar sospechas».

Ciberseguridad

La naturaleza interconectada del software moderno ha permitido a TeamPCP desatar un ciclo autosostenible de nuevos compromisos. El patrón que resalta este aspecto es tan engañosamente simple como nefasto: irrumpir en una herramienta confiable, robar credenciales de los sistemas de desarrolladores que puedan instalarla y usar esas credenciales para irrumpir en la siguiente herramienta legítima.

«Todos los mercados de extensiones populares vienen con la actualización automática activada de forma predeterminada. VS Code, Cursor, toda la línea», dijo el investigador de seguridad de Aikido Raphael Silva. dicho. «El razonamiento tiene sentido de forma aislada, porque la mayoría de los desarrolladores nunca actualizan nada manualmente, por lo que dejarlo fuera significa una larga cola de editores ejecutando código vulnerable y obsoleto».

«La compensación deja de tener sentido una vez que se tiene en cuenta a los editores hostiles/comprometidos. La actualización automática le da a un atacante que controla una versión un canal de envío directo a cada máquina que ejecuta esa extensión. Los mercados no imponen ninguna puerta de revisión o período de espera entre el momento en que se publica una actualización y el momento en que los clientes la instalan».

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

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-consola (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. dicho.

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 dicho 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.

Ciberseguridad

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, se lanzaron varios paquetes npm. infectado por un ladrón de credenciales como parte de una campaña de ataque a la cadena de suministro llamada s1ngularity. A diferencia de la iteración anterior, el último ataque tiene como objetivo la extensión VS Code.

Ciberseguridad

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 las sesiones de Claude Code para robar credenciales de desarrollador.
  • contratos de mediodía: un paquete npm que se hace pasar por un SDK de contrato inteligente de Noon Protocol 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-polígono-recorte-tonyuna bifurcación troyanizada de martinez-polygon-clipping que usa un gancho postinstalación para descargar un troyano de acceso remoto (RAT) de Windows empaquetado con 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.
  • servicio-tg-común: un paquete npm que contiene funcionalidad para hacerse cargo de la cuenta de Telegram de una víctima mientras se hace pasar por «servicio común de Telegram para aplicaciones NestJS».
  • exiosos: 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 parte del clúster kube-health-tools que instala 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
  • A campaña coordinada de recolección de credenciales orquestado 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 los canales 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 siete paquetes npm bajo el @ organización del equipo hd Se ha descubierto que actúan como escenario de 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.