BookinglyTech News
Ciberseguridad

Plugin4Shell: ejecución remota sin clic en Claude Code, Codex, Gemini CLI y Copilot

Un fallo bautizado como Plugin4Shell permite ejecución remota de código sin interacción en los principales agentes de programación con IA. Anthropic y OpenAI han parcheado; Google y Microsoft, no.

3 min de lecturaThe Register0 vistas

Un fallo que permite ejecución remota de código sin ninguna interacción del usuario afecta a los principales agentes de programación con IA: Claude Code, Codex, Gemini CLI, Microsoft Copilot y GitHub Copilot. Lo ha bautizado como Plugin4Shell el equipo de Air, una startup de seguridad centrada en agentes de IA empresariales, que lo describe en su informe como un ataque de cadena de suministro de IA "el primero de su tipo". La clave: no ataca al modelo ni al agente, sino a los marketplaces de plugins en los que estos confían.

Cómo se rompe el pinning

El agujero está en cómo los agentes aplican el pinning por SHA de los marketplaces, el mecanismo que fija plugins y skills a un hash de commit inmutable en lugar de a una referencia móvil como una etiqueta de versión o una rama. La idea es que si un repositorio público de skills se ve comprometido, tu agente siga ejecutando el hash auditado y no se traiga código nuevo. Los investigadores lo llaman bypass del pinning por SHA del plugin: el agente hace checkout del commit exacto que indica el marketplace, pero nunca verifica que haya llegado ahí.

"El agente hace checkout del commit exacto que fijó el marketplace pero nunca verifica que haya aterrizado ahí, así que un atacante que controle el repositorio del plugin hace que el checkout resuelva a código malicioso mientras el pin parece respetado", escriben Or Nevo, Dor Granat y Niv Hoffman. El resultado es ejecución remota de código sin clic, porque la actualización automática de plugins viene activada por defecto en Claude y Codex.

Los escenarios que describen son dos: colar un plugin benigno en un marketplace de confianza, pasar la revisión y sustituirlo después por código malicioso; o secuestrar el repositorio de un autor legítimo y empujar la versión maliciosa a todos los agentes que lo tengan instalado. Es la continuación de sus pruebas de concepto anteriores, SkillJacking y RepoJacking.

Quién ha parcheado y quién no

Air reportó el problema a los cuatro fabricantes en junio. Anthropic y OpenAI publicaron corrección en Claude Code 2.1.179 y Codex 0.146.0. Google ha deprecado Gemini CLI y ha dicho que no va a parchear, de modo que toda instalación sigue expuesta; como alternativa propone migrar a Antigravity, su entorno de desarrollo agéntico más reciente, que no se ve afectado. Microsoft no ha corregido el fallo en Copilot.

Un portavoz de GitHub sostiene que los ataques Plugin4Shell no afectan a GitHub, porque la plataforma no permite crear nombres de rama o etiqueta que se parezcan a un SHA de commit. Air responde que esa mitigación no basta: los marketplaces también se pueden alojar en otras plataformas como Bitbucket, y Copilot soporta marketplaces de esos sitios, así que sigue expuesto. La compañía dice que reportó el caso a Microsoft en junio y no obtuvo respuesta por el volumen de divulgaciones que maneja el fabricante. Microsoft no contestó a la petición de comentario.

Air cifra en casi el 90% de las empresas del Fortune 500 el uso de Copilot, un dato que procede de Microsoft.

El detalle incómodo es que la mitigación completa solo llega actualizando el agente, y no todos los agentes van a recibir esa actualización. Quien tenga Gemini CLI instalado tendrá que migrar de herramienta; quien dependa de Copilot, decidir si acepta el riesgo. Y la lección de fondo es que el pinning por SHA, tratado durante años como red de seguridad de la cadena de suministro, no sirve de nada si el agente no comprueba que el commit sea el que dice ser.