El 19 de mayo, 633 versiones maliciosas de paquetes npm pasó la verificación de procedencia de Sigstore. El sistema los borró porque el atacante había generado certificados de firma válidos a partir de una cuenta de mantenimiento comprometida.
Sigstore funcionó exactamente como se diseñó: verificó que el paquete se haya creado en un entorno de CI, confirmó que se emitió un certificado válido y registró todo en el registro de transparencia. Lo que no puede hacer es determinar si la persona que posee las credenciales autorizó la publicación, y esa brecha convirtió la última señal de confianza automatizada en npm en camuflaje.
Un día antes, StepSecurity documentó un ataque a la extensión Nx Console VS Codeuna herramienta de desarrollo ampliamente utilizada con más de 2,2 millones de instalaciones de por vida. La versión 18.95.0 se publicó utilizando credenciales robadas el 18 de mayo y permaneció activa durante menos de 40 minutos, pero la telemetría interna de Nx mostró aproximadamente 6000 activaciones durante ese período, la mayoría mediante actualización automática, en comparación con solo 28 descargas oficiales. La carga útil recopiló archivos de configuración de Claude Code, claves de AWS, tokens de GitHub, tokens de npm, contenidos de la bóveda de 1Password y tokens de cuentas de servicio de Kubernetes.
El Mini campaña Shai-Huludatribuido por varios investigadores a un actor de amenazas con motivación financiera identificado como TeamPCP, llegó al registro npm a la 01:39 UTC del 19 de mayo. Endor Labs detectó la ola inicial cuando dos paquetes inactivos, jest-canvas-mock y size-sensor, publicaron nuevas versiones que contenían un script Bun ofuscado de 498 KB; ninguno de los dos se había actualizado en más de tres años, lo que hizo que una versión repentina con dependencias hash de confirmación de GitHub sin procesar fuera una señal de detección, pero solo si las herramientas están observando.
A las 02:06 UTC, el gusano se había propagado por el ecosistema de visualización de datos @antv y por docenas de paquetes sin alcance, incluido echarts-for-react (~1,1 millones de descargas semanales). Socket elevó el total a 639 versiones comprometidas en 323 paquetes únicos en esta ola. A lo largo del ciclo de vida completo de la campaña, Socket ha rastreado 1055 versiones maliciosas en 502 paquetes que abarcan npm, PyPI y Composer.
StepSecurity confirmó que la carga útil contenía una integración completa de Sigstore. El atacante no sólo robó credenciales; podían firmar y publicar paquetes npm posteriores que llevaran certificaciones de procedencia válidas.
Estos dos incidentes no son aislados. Los equipos de investigación de Endor Labs, Socket, StepSecurity, Adversa AI, Johns Hopkins, Microsoft MSRC y LayerX demostraron de forma independiente que el modelo de verificación de la herramienta de desarrollador no funciona y ningún marco de proveedor audita todas las superficies de ataque que fallaron.
Siete superficies de ataque fallaron en las 48 horas entre el 18 y el 19 de mayo: falsificación de procedencia de npm, robo de credenciales de extensión de VS Code, ejecución automática del servidor MCP, inyección rápida de agente CI/CD, ejecución de código de marco de agente, exposición de almacenamiento de credenciales IDE y exposición de datos de IA en la sombra, y la cuadrícula de auditoría a continuación mapea cada una de ellas.
El modelo de verificación se divide en las cuatro CLI principales de codificación de IA.
IA adversaria Confianza revelada el 7 de mayo, lo que demuestra que Claude Code, Gemini CLI, Cursor CLI y Copilot CLI ejecutan automáticamente servidores MCP definidos por el proyecto en el momento en que un desarrollador acepta un mensaje de confianza de carpeta. Los cuatro tienen como valor predeterminado «Sí» o «Confiar». Una pulsación de tecla genera un proceso no aislado con todos los privilegios del desarrollador.
El servidor MCP se ejecuta con privilegios suficientes para leer secretos almacenados y código fuente de otros proyectos. En los ejecutores de CI que utilizan la acción GitHub de Claude Code en modo sin cabeza, el cuadro de diálogo de confianza nunca se muestra. El ataque se ejecuta sin interacción humana.
Los investigadores de Johns Hopkins, Aonan Guan, Zhengyu Liu y Gavin Zhong, publicaron “Comentar y controlar«, lo que demuestra que una instrucción maliciosa en el título de una solicitud de extracción de GitHub hizo que Claude Code Security Review publicara su propia clave API como comentario. El mismo ataque funcionó en Gemini CLI Action de Google y en el Copilot Agent de GitHub. Anthropic calificó la vulnerabilidad CVSS 9.4 Critical a través de su programa HackerOne.
MSRC de Microsoft reveló dos vulnerabilidades críticas del kernel semántico el 7 de mayo. Uno enruta los campos del almacén de vectores controlados por el atacante a una llamada eval() de Python; el otro expone un método de descarga de archivos del lado del host como una función del kernel invocable, lo que significa que un documento envenenado en un almacén de vectores inicia un proceso en el host.
Los investigadores de seguridad de LayerX demostraron por separado que Cursor almacena claves API y tokens de sesión en un almacenamiento desprotegido, lo que significa que cualquier extensión del navegador puede acceder a las credenciales de desarrollador sin permisos elevados.
Los actores de amenazas que buscaban estas credenciales duplicaron su ritmo operativo.
El Informe de investigaciones de vulneración de datos de Verizon 2026publicado el 19 de mayo, encontró que el 67% de los empleados acceden a servicios de inteligencia artificial desde cuentas no corporativas en dispositivos corporativos. Shadow AI es ahora la tercera acción interna no maliciosa más común en los conjuntos de datos de DLP. El código fuente dirige todos los tipos de datos enviados a plataformas de IA no autorizadas, la misma clase de activos a la que se dirigió la campaña del gusano npm.
El Informe CrowdStrike 2026 sobre el panorama de amenazas de los servicios financierospublicado el 14 de mayo, documenta cómo los adversarios buscan activamente los tipos de credenciales que obtienen estos ataques.
STARDUST CHOLLIMA triplicó su ritmo operativo contra entidades financieras en el cuarto trimestre de 2025. CrowdStrike documentó al grupo utilizando personas de reclutamiento generadas por IA en LinkedIn y Telegram, enviando desafíos de codificación maliciosos que parecían evaluaciones técnicas y ejecutando videollamadas falsas con entornos sintéticos. Los objetivos son PAT de GitHub, tokens npm, claves de AWS y secretos de CI/CD. La exposición a la sombra de la IA en la fila 7 de la cuadrícula es la puerta por la que entran.
Cuadrícula de auditoría de identidad robada de herramienta para desarrolladores
Actualmente, ningún marco de proveedores abarca las siete superficies. Esta cuadrícula asigna cada uno a la investigación que lo expuso, lo que su pila no puede ver y la acción de auditoría a tomar antes de la próxima renovación del proveedor.
|
Superficie de ataque |
Divulgado por |
Qué verificación falló |
Lo que tu pila no puede ver |
Acción de auditoría |
|
1. falsificación de procedencia npm |
Endor Labs, Socket (19 de mayo) |
Los certificados Sigstore generados a partir de tokens OIDC robados pasan la verificación automática |
EDR y SAST no validan si la identidad de CI que firmó un paquete autorizó la publicación |
Requerir la aprobación de ambas partes en el momento de la publicación para paquetes con más de 10,000 descargas semanales. No trate una insignia verde de Sigstore como prueba de legitimidad |
|
2. Robo de credenciales de extensión de VS Code |
StepSecurity (18 de mayo) |
VS Code Marketplace aceptó una versión de extensión maliciosa publicada con un token de colaborador robado |
Las actualizaciones automáticas de extensiones omiten la detección de puntos finales. Ventana del mercado de 12:30 a 12:48 UTC; exposición general (incluido Open VSX) 12:30 a 13:09 UTC |
Haga cumplir políticas de edad mínima para las actualizaciones de extensiones. Fijar versiones de extensión críticas. Audite todas las extensiones con acceso a las API del terminal o del sistema de archivos |
|
3. Ejecución automática del servidor MCP |
IA adversa, TrustFall (7 de mayo) |
Los cuatro cuadros de diálogo de confianza de la CLI están predeterminados en «Sí/Confiar» sin enumerar qué archivos ejecutables se generarán |
EDR monitorea el comportamiento del proceso, no lo que un LLM le indica a un servidor MCP que haga. WAF inspecciona las cargas útiles HTTP, no la intención de llamada a la herramienta |
Deshabilite la aprobación automática del servidor MCP con ámbito de proyecto en Claude Code, Gemini CLI, Cursor CLI y Copilot CLI. Bloquear .mcp.json en canalizaciones de CI a menos que esté explícitamente en la lista permitida |
|
4. Inyección inmediata del agente CI/CD |
Johns Hopkins, comentario y control (abril de 2026) |
Los flujos de trabajo de GitHub Actions que utilizan pull_request_target inyectan secretos en entornos de ejecución que los agentes de IA procesan como instrucciones |
Los registros de SIEM muestran una llamada API desde una acción de GitHub legítima. La llamada en sí es el ataque. No existe ninguna firma de red anómala |
Migre los flujos de trabajo de revisión de código de IA al disparador pull_request. Audite todos los flujos de trabajo usando pull_request_target con acceso secreto para integraciones de agentes de IA |
|
5. Ejecución del código del marco del agente |
Microsoft MSRC (7 de mayo) |
Semantic Kernel Python SDK enruta los campos de filtro del almacén de vectores a eval(). .NET SDK expuso la escritura de archivos del host como una función del kernel invocable |
Los firewalls de aplicaciones inspeccionan las cargas útiles de entrada. No inspeccionan cómo un marco de orquestación analiza esas cargas útiles internamente. |
Actualice el SDK de Python de Semantic Kernel a 1.39.4 y el SDK de .NET a 1.71.0. Audite todos los marcos de agentes para funciones etiquetadas como invocables por modelo que accedan al sistema de archivos host o al shell. |
|
6. Exposición del almacenamiento de credenciales IDE |
LayerX (abril de 2026) |
Cursor almacena claves API y tokens de sesión en un almacenamiento desprotegido accesible para cualquier extensión de navegador instalada |
DLP monitorea los datos en tránsito. Las credenciales del cursor en reposo son invisibles para DLP porque no se produce ningún evento de salida hasta que la extensión se filtra |
Audite las herramientas de desarrollo para detectar prácticas de almacenamiento de credenciales. Requerir almacenamiento protegido (llavero del sistema operativo, almacenes de credenciales cifradas) para todas las configuraciones de herramientas de codificación de IA |
|
7. Exposición de datos de IA en la sombra |
Verizon 2026 DBIR (19 de mayo) |
El 67% de los empleados accede a servicios de IA desde cuentas no corporativas en dispositivos corporativos. El código fuente es el tipo de datos principal enviado |
Las políticas de CASB cubren SaaS autorizado. Las cuentas de IA no corporativas en dispositivos corporativos operan completamente fuera del alcance de CASB |
Implemente un gobierno de IA en la capa del navegador que supervise el uso de IA no corporativa en dispositivos corporativos. Extensiones de navegador de IA de inventario en toda la organización |
Plan de acción del director de seguridad.
Es posible que los directores de seguridad deseen ejecutar esta cuadrícula con los contratos de proveedores actuales antes de que cierren las renovaciones del segundo trimestre. — preguntando a cada proveedor cuál de las siete superficies cubre su producto y tratando las faltas de respuesta como el mapa de brechas.
Cualquier credencial accesible desde una máquina de desarrollador o ejecutor de CI que haya instalado los paquetes npm afectados entre las 01:39 y las 02:18 UTC del 19 de mayo debe considerarse comprometida.. Eso incluye PAT de GitHub, tokens npm, claves de acceso de AWS, tokens de cuentas de servicio de Kubernetes, tokens de HashiCorp Vault, claves SSH y contenidos de la bóveda de 1Password.
Las integraciones de agentes de codificación de IA que se ejecutan en canalizaciones de CI/CD con flujos de trabajo pull_request_target merecen una mirada más cercana. Cada uno es una superficie de inyección rápida que procesa los comentarios de relaciones públicas como instrucciones del agente.
Los equipos de adquisiciones que evalúan las herramientas de codificación de IA deberían considerar agregar una dimensión de resistencia al robo de identidad a las evaluaciones de los proveedores. La pregunta que vale la pena hacerse: ¿puede el proveedor demostrar cómo su herramienta distingue una publicación legítima de un mantenedor de un atacante que utiliza credenciales comprometidas? Si no pueden, la herramienta no es una capa de verificación.
La cadena de suministro de herramientas para desarrolladores tiene el mismo problema que tuvo IAM hace una década: las credenciales demuestran quién dice ser, no quién es. IAM obtuvo una ventaja de 10 años en controles de compensación antes de que los grupos de estados-nación convirtieran el robo de credenciales en una operación industrial. El ecosistema de herramientas de codificación de IA está poniendo en marcha ese reloj ahora.
Suscríbete y recibe las historias más importantes del día.
Al suscribirte aceptas nuestros términos y condiciones y política de privacidad.













































































