TechPastWeek logo
Seguridad8 min de lectura

Un fallo sin clics permitió a plugins maliciosos ejecutar código en cuatro grandes agentes de programación con IA

Air reveló Plugin4Shell el 17 de septiembre de 2026, una elusión del anclaje por SHA que permite a un plugin de confianza ejecutar código del atacante en cuatro grandes agentes de programación con IA.

Los logotipos de Claude, OpenAI, GitHub Copilot y Google Gemini en blanco sobre un fondo oscuro con un motivo de barra roja; un fallo de septiembre de 2026 afectó a los sistemas de plugins de los cuatro agentes de programación con IA.
En esta página

Puntos clave

  • Air, una startup de seguridad de IA para empresas, reveló Plugin4Shell el 17 de septiembre de 2026; el fallo permite ejecución remota de código sin clics a través de las tiendas de plugins que usan cuatro grandes agentes de programación con IA.
  • Los productos afectados son Claude Code, de Anthropic; Codex, de OpenAI; GitHub Copilot y Gemini CLI, de Google.
  • Anthropic corrigió Claude Code en la versión 2.1.179 el 17 de junio de 2026, y OpenAI corrigió Codex en la versión 0.146.0, verificada el 12 de agosto de 2026.
  • Microsoft no ha publicado una corrección para Copilot, y Google dijo que no parcheará Gemini CLI, ya obsoleto, así que ambos siguen expuestos.
  • El fallo es una elusión del anclaje por SHA: los agentes descargan un commit fijado pero nunca confirman que el código obtenido coincida con ese commit.

Investigadores de seguridad de Air publicaron el 17 de septiembre de 2026 los detalles de una vulnerabilidad que llaman Plugin4Shell, un fallo de ejecución remota de código sin clics en los sistemas de plugins de cuatro agentes de programación con IA muy utilizados. Los productos afectados son Claude Code, de Anthropic; Codex, de OpenAI; GitHub Copilot y Gemini CLI, de Google. Un atacante que controle el repositorio de un plugin puede hacer que la máquina de un desarrollador ejecute código malicioso sin ninguna acción del usuario, y dos de los cuatro productos siguen sin corregir.

Lectura relacionada: Mistral Vibe ejecutaba los hooks de Git de un repositorio antes de verificar la confianza y permitía ejecución remota de código · Un bypass de autenticación del Rejetto HFS hallado por IA atrae intentos de explotación.

El nombre remite a Log4Shell, aunque la comparación tiene que ver con el impacto y no con el mecanismo. Donde Log4Shell explotaba una biblioteca de registro presente en todas partes, Plugin4Shell explota la forma en que los agentes instalan y actualizan los complementos que los amplían. Air lo describe como la primera vulnerabilidad de cadena de suministro del ecosistema de agentes de IA.

Quién parcheó y quién no

Los proveedores respondieron de distinta manera después de que Air revelara el fallo en junio de 2026 dentro de un proceso de divulgación coordinada. Anthropic confirmó una corrección en Claude Code 2.1.179 el 17 de junio de 2026. OpenAI verificó una corrección en Codex 0.146.0 el 12 de agosto de 2026.

Microsoft no ha publicado un parche para Copilot. GitHub, propiedad de Microsoft, dijo a The Register que Plugin4Shell no afecta a GitHub porque la plataforma bloquea nombres de ramas y etiquetas que parecen hashes de commit. Air discute el alcance de esa defensa. Los investigadores señalan que Copilot admite tiendas alojadas en otras plataformas, como Bitbucket y servidores Git autoalojados, que no imponen la misma restricción. Air dijo que reportó el problema a Microsoft en junio y que no recibió respuesta.

Google tomó otro camino. Declaró obsoleto Gemini CLI y dijo a Air que no lo parcheará, lo que deja expuesta a toda instalación existente. Google dirige a esos usuarios hacia Antigravity, su entorno de desarrollo agéntico más reciente, que no usa el sistema de fijación de plugins en el que se basa el ataque.

El fallo es una comprobación que falta

Los agentes de programación con IA permiten a los usuarios ampliarlos con plugins y skills, y la mayoría de la gente instala esos complementos desde tiendas comunitarias y no desde una tienda empresarial verificada. Un plugin se ejecuta con los privilegios de la persona que usa el agente, lo que significa que puede alcanzar los mismos repositorios, credenciales, archivos y sistemas de producción que alcanza el desarrollador.

Las tiendas usan una salvaguarda llamada anclaje por SHA. Cuando un plugin supera la revisión, la tienda registra el commit exacto de Git que se revisó, y el agente debe instalar ese commit y ningún otro. El anclaje es la razón por la que un plugin revisado puede considerarse fiable como revisado.

Los investigadores de Air encontraron que los agentes descargan el commit fijado pero nunca verifican que el código que acaban teniendo coincida con el hash fijado. Esa brecha es toda la vulnerabilidad. Un atacante que controle el repositorio del plugin puede crear una rama cuyo nombre sea exactamente la cadena hexadecimal de 40 caracteres del commit fijado, convertir esa rama en la predeterminada del repositorio y apuntarla a código malicioso. Cuando el agente ejecuta git checkout sobre el anclaje, Git resuelve el nombre hacia la rama y no hacia el commit original, porque Git prefiere una referencia a un identificador de objeto cuando ambos coinciden. El agente informa de una instalación correcta en el commit fijado, y el anclaje sigue pareciendo respetado.

GitHub bloquea nombres de ramas que se parecen a hashes de commit, y por eso la empresa dice que su plataforma no está afectada. Bitbucket y los servidores Git autoalojados suelen permitirlos, y esos son backends de tienda compatibles. La propia documentación de Anthropic incluye Bitbucket y Git autoalojado como hosts de tienda válidos, según Air.

Gemini CLI era vulnerable por una vía relacionada pero distinta. Obtenía el commit fijado y luego ejecutaba git checkout FETCH_HEAD, de modo que un atacante podía llamar FETCH_HEAD a la rama predeterminada del repositorio y conseguir que el checkout resolviera hacia contenido controlado por él mientras el commit obtenido se descartaba.

Por qué no hace falta ningún clic

El fallo sería grave aunque exigiera que un desarrollador instalara algo nuevo. Lo que lo hace sin clics es la actualización automática de plugins. Claude Code y Codex actualizan en segundo plano los plugins instalados de forma predeterminada. Cuando un commit fijado se sustituye en origen, el cambio llega a todas las máquinas que ya tienen el plugin instalado, sin paso de instalación, sin aviso y sin nada que notar.

Air describe dos rutas hacia esa posición. En la primera, un atacante publica un plugin realmente benigno, espera a que supere la revisión y quede fijado, y luego reemplaza el contenido. En la segunda, el atacante secuestra el repositorio de un autor legítimo y difunde la versión maliciosa a todos los agentes que tienen el plugin instalado. Air dijo que demostró tanto la intrusión en la tienda como la toma de control del repositorio en investigaciones anteriores.

El impacto es amplio porque el agente no está aislado del trabajo del desarrollador. Un exploit exitoso otorga al atacante ejecución remota de código completa en el host y acceso a todo lo que el agente puede alcanzar. Air señaló que las organizaciones que revisan los plugins y los fijan por su cuenta no están protegidas, porque el fallo está en la aplicación del anclaje por parte del agente, no en la tienda que lo emitió.

Un problema de cadena de suministro que las tiendas no pueden resolver

Como el anclaje se resuelve dentro del agente, Air sostiene que ninguna tienda puede cerrar la brecha por sí sola. Una tienda puede reducir una variante del ataque si solo admite hosts que rechacen nombres de rama con forma de SHA, lo que en la práctica significa solo GitHub, pero eso excluiría tipos de host que los agentes admiten oficialmente y no resolvería la variante de Gemini CLI. La corrección tiene que llegar en el agente, y por eso actualizar es la única mitigación completa donde existe.

La divulgación llega en medio de un ajuste de cuentas más amplio con la seguridad agéntica. En julio de 2026, OpenAI reveló que modelos bajo evaluación escaparon de los controles previstos y comprometieron partes de los sistemas de Hugging Face, y en septiembre publicó un marco para reportar la desalineación de modelos tras revelar seis incidentes adicionales. Esos hechos implicaban a agentes que actuaban contra sus operadores. Plugin4Shell es distinto: convierte la capa de distribución de los complementos para agentes en la superficie de ataque, lo que significa que el riesgo viaja a todos los desarrolladores que confiaron en una tienda.

El trabajo anterior de Air apunta en la misma dirección. La empresa ha publicado investigaciones sobre una skill maliciosa que se propagó a más de 26.000 agentes, sobre 925 skills secuestradas de sus mantenedores que afectaron a 134.000 agentes, y sobre 155 servidores secuestrables en la tienda oficial de MCP. Cada caso explota la confianza en un canal de distribución, no un fallo de un modelo.

La vulnerabilidad afecta a los plugins instalados desde una tienda, no a un modelo concreto ni a una tarea de programación concreta. Trate cualquier plugin de agente instalado como código con los mismos privilegios que la persona que ejecuta el agente, y revise lo que tiene instalado antes de añadir más.

Qué deberían hacer los defensores

Para los usuarios de Claude Code y Codex, la acción es actualizar. La versión 2.1.179 o posterior cierra el fallo en Claude Code, y la versión 0.146.0 o posterior lo cierra en Codex. Air dijo que las empresas que usan su propia tienda y productos de filtrado no se vieron afectadas.

Para GitHub Copilot no hay parche, así que los pasos disponibles son auditar los plugins instalados, eliminar los que no se usen de forma activa y considerar desactivar la actualización automática hasta que Microsoft publique una corrección. Para Gemini CLI, la recomendación es migrar a Antigravity. Google ha dicho que no parcheará la herramienta obsoleta.

La lección más amplia tiene que ver con la confianza que las empresas depositan en la revisión de plugins. El anclaje debía hacer duradera la revisión de una tienda, y no lo consiguió. Los equipos de seguridad que daban por hecho que un plugin aprobado no podía cambiar por debajo ahora tienen motivos para verificar qué ejecutan realmente los agentes en las máquinas de los desarrolladores.

Qué hay que seguir

Tres cosas mostrarán si la industria trata esto como un caso aislado o como un problema estructural. La primera es si Microsoft parchea Copilot y si lo hace en el agente o se apoya en la restricción de nombres de rama de GitHub. La segunda es si las tiendas introducen una verificación independiente de lo que distribuyen, en lugar de depender de una comprobación que se ejecuta en el cliente. La tercera es si el creciente mercado de complementos para agentes adopta el mismo tipo de herramientas de lista de materiales de software y procedencia que las cadenas de suministro de software convencionales han tardado una década en construir.

Por ahora, el panorama práctico es desigual. Dos de los mayores agentes de programación con IA tienen corrección, uno no tiene ninguna y otro se ha retirado en lugar de repararse. Millones de desarrolladores usan estas herramientas con plugins que instalaron y olvidaron, que es justo la condición que Plugin4Shell necesita.

Portada: composición de TechPastWeek con los logotipos de dominio público de Claude, OpenAI, GitHub Copilot y Google Gemini (Wikimedia Commons), mostrados sobre el degradado oscuro del sitio.

Etiquetas

Preguntas frecuentes

¿Qué es Plugin4Shell?
Plugin4Shell es una vulnerabilidad de ejecución remota de código sin clics en los sistemas de plugins de cuatro agentes de programación con IA. Elude el anclaje por SHA, el mecanismo que se supone que fija un plugin instalado a un commit revisado, de modo que un atacante que controle el repositorio del plugin puede hacer que el agente ejecute código distinto mientras el anclaje sigue pareciendo válido.
¿Qué agentes de programación con IA están afectados?
Claude Code, de Anthropic; Codex, de OpenAI; GitHub Copilot y Gemini CLI, de Google, se vieron afectados. Claude Code y Codex ya tienen parche. Microsoft no ha publicado una corrección para Copilot, y Google declaró obsoleto Gemini CLI y dijo que no lo parcheará.
¿Necesito instalar un plugin malicioso para estar en riesgo?
No. La exposición afecta a cualquiera que ya tenga instalado un plugin de una tienda en la que confíe. Como la actualización automática de plugins está activada por defecto en Claude Code y Codex, un plugin fijado puede sustituirse por una versión maliciosa en segundo plano, sin aviso y sin acción del usuario.
¿Cómo me protejo?
Actualice el agente si existe un parche: Claude Code 2.1.179 o posterior y Codex 0.146.0 o posterior. Para GitHub Copilot y Gemini CLI no hay parche, así que reduzca la exposición eliminando los plugins que no use, considere desactivar la actualización automática y migre a los usuarios de Gemini CLI a Antigravity, de Google.
Share

¿Te resultó útil? Compártelo con tu equipo.

TPW Editorial

TPW Editorial

Redacción

El equipo editorial de TechPastWeek investiga y edita cada artículo que publicamos. Cada historia se contrasta con fuentes primarias y secundarias fiables, y un editor la revisa antes de publicarse.

Destacados y más leídos

Sigue leyendo