Investigadores de AIR describieron Plugin4Shell, una falla en la forma en que cuatro agentes de programación con IA comprueban que un plugin sea exactamente la versión que aprobó un marketplace, informó Help Net Security el 18 de septiembre. Las herramientas afectadas son Claude Code, Codex, GitHub Copilot y Gemini CLI. Como dos de ellas actualizan los plugins en segundo plano de forma predeterminada, el reporte dice que un plugin que pasó la revisión puede sustituirse por código hostil sin que el desarrollador haga nada.
Contexto
Los agentes de programación con IA se ejecutan en la propia computadora del desarrollador, con acceso a la shell, al sistema de archivos y a las credenciales guardadas. Los plugins amplían sus funciones, y los marketplaces anclan cada plugin a un commit específico para que el código que aprobó un revisor sea el código que se ejecuta. La falla tiene que ver con ese anclaje [1].
Lo que describe el reporte
Según el reporte, los agentes no confirman que el código que descargan termine en el commit anclado. Un atacante puede crear una rama cuyo nombre coincida con el hash de un commit, de modo que la descarga apunte al código del atacante mientras el anclaje sigue pareciendo intacto. El reporte señala que GitHub bloquea esos nombres de rama, mientras que Bitbucket y los servidores autoalojados los permiten [1].
El reporte califica la falla como de cero clics porque la misma descarga se repite durante las actualizaciones automáticas en segundo plano, que vienen activadas de forma predeterminada en Claude Code y Codex. Un atacante puede publicar un plugin que después se vuelva hostil o tomar el control de un repositorio de plugins existente. AIR reportó haber encontrado 925 skills comprometidos que llegaron a 134,000 agentes mediante esas tomas de control [1].
El estado de los parches varía según el proveedor. Anthropic corrigió Claude Code en la versión 2.1.179 y OpenAI corrigió Codex en la versión 0.146.0. Microsoft no ha publicado una corrección para GitHub Copilot, y Google descontinuó Gemini CLI y remite a los usuarios a otro producto, Antigravity. AIR dice que encontró la falla en mayo y la reveló a los proveedores en junio [1].
Implicaciones para usuarios de Mac
El reporte trata sobre herramientas para desarrolladores en cualquier sistema operativo de escritorio y no señala a macOS en particular. El grupo expuesto son los desarrolladores que usan uno de los cuatro agentes con plugins de marketplaces de terceros. Los usuarios de Mac que no usan agentes de programación no se ven afectados por esta falla tal como se describe [1].
Recomendaciones
- Actualiza Claude Code a la versión 2.1.179 o posterior y Codex a la versión 0.146.0 o posterior.
- Desactiva la actualización automática de plugins en segundo plano cuando la herramienta lo permita, y actualiza los plugins de forma deliberada.
- Quita los plugins que no uses activamente, y prefiere plugins alojados en GitHub, donde según el reporte el truco del nombre de rama está bloqueado.
- Si usas GitHub Copilot o Gemini CLI, considera los plugins de terceros como una exposición sin parche hasta que el proveedor indique lo contrario.
Relevancia para FireAI
FireAI es un firewall de red para macOS. No evalúa plugins, no revisa descargas de git ni impide que un agente de programación ejecute un comando. Lo que sí puede hacer es mostrar y controlar las conexiones que siguen: un proceso nuevo que aún no tiene regla provoca una solicitud en el modo Alerta, con su nombre y su destino, y las reglas por app pueden restringir a dónde se le permite conectarse a una herramienta determinada.
Limitaciones
El relato se basa en un solo reporte secundario. No dice si la falla se ha explotado fuera de la investigación, ni describe cómo llegó AIR a la cifra de 925 skills comprometidos. El reporte no indica qué sistemas operativos se probaron.
Prueba FireAI, de HisnLabs gratis durante 17 días.