Vulnerabilidad crítica en Amazon Q permite ejecución remota de código

Publicado el

Vulnerabilidad en Amazon Q Developer

Se ha identificado una vulnerabilidad crítica en Amazon Q Developer que permite a repositorios maliciosos ejecutar código de forma remota. Este fallo, rastreado como CVE-2026-12957 y con una puntuación CVSS de 8.5, afecta cómo el asistente de codificación de Amazon gestiona los servidores de Model Context Protocol (MCP). La investigación realizada por Wiz Research reveló que un simple archivo de configuración podría comprometer el entorno de desarrollo de un usuario.

Mecanismo del ataque

El ataque se produce cuando un desarrollador abre un repositorio y confía en el espacio de trabajo. Amazon Q lee un archivo de configuración MCP, `.amazonq/mcp.json`, desde el espacio de trabajo abierto y lanza los servidores definidos en él. Estos servidores son procesos locales que el asistente de IA puede iniciar para acceder a bases de datos, APIs o herramientas de construcción. Al hacerlo, se ejecutan comandos en la máquina del desarrollador, heredando su entorno completo, que puede incluir claves de AWS, tokens de CLI en la nube, secretos de API y sockets de agentes SSH.

Esto significa que un archivo en un repositorio clonado podría ejecutar código arbitrario utilizando la sesión activa del desarrollador en la nube, sin necesidad de una contraseña o un segundo inicio de sesión. En una prueba de concepto, Wiz demostró que el archivo podía ejecutar `aws sts get-caller-identity` y enviar la salida a un servidor controlado por un atacante, capturando así la sesión activa de AWS.

Pasos a seguir

La respuesta a la amenaza depende de los permisos en la nube del desarrollador. Un atacante podría crear un backdoor en un usuario IAM para mantener la persistencia, acceder a servicios internos o moverse hacia producción. Amazon y Wiz tienen visiones diferentes sobre el paso de consentimiento. Según el aviso de Amazon, el usuario debe confiar en el espacio de trabajo al ser solicitado, y la CVSS califica esta interacción como pasiva. Sin embargo, Wiz indicó que no había un paso de consentimiento separado para los servidores MCP antes de la corrección.

El parche implementado cierra esta brecha: ahora, Amazon Q identifica un servidor MCP no confiable y permite al desarrollador rechazar el comando antes de su ejecución.

Afectación del servidor de lenguaje para AWS

La vulnerabilidad se encuentra en los Language Servers para AWS, que son los que impulsan Amazon Q en plataformas como VS Code, JetBrains, Eclipse y Visual Studio. Todas las versiones de estos complementos que incluían una versión anterior del servidor de lenguaje estaban expuestas.

Para mitigar el riesgo, se recomienda actualizar a la versión 1.65.0 del servidor de lenguaje para AWS, aunque el boletín de AWS sugiere migrar a la versión 1.69.0, que también corrige un segundo problema, CVE-2026-12958, relacionado con una falta de verificación de enlaces simbólicos que podría permitir escrituras de archivos arbitrarias fuera del límite de confianza del espacio de trabajo.

Medidas de actualización

Los mínimos de las versiones de los complementos corregidos son: - VS Code: 2.20 o posterior - JetBrains: 4.3 o posterior - Eclipse: 2.7.4 o posterior - Visual Studio Toolkit: 1.94.0.0 o posterior

El servidor de lenguaje se actualiza automáticamente, a menos que haya un bloqueo en la red, y recargar el IDE permite obtener la última versión.

No se conoce ninguna explotación pública de esta vulnerabilidad. La CISA clasificó la entrada de ADP para CVE-2026-12957 como sin explotación conocida. Wiz descubrió la falla a través de su investigación y la divulgó en coordinación con Amazon, reportándola el 20 de abril y viendo un arreglo el 12 de mayo, antes del anuncio público del 26 de junio.

Reiteración de patrones

Amazon Q no es la primera herramienta de codificación en enfrentar problemas relacionados con la confianza en MCP. Aunque las vulnerabilidades no son idénticas, presentan similitudes: la configuración del proyecto se convierte en comportamiento ejecutable, y los chequeos de confianza en ese traspaso siguen fallando. Otras herramientas como Claude Code (CVE-2025-59536) y Cursor (CVE-2025-54136) también han experimentado problemas similares, donde la configuración de MCP a nivel de proyecto llevó a la ejecución de comandos.

La conveniencia de permitir que una carpeta de proyecto configure un agente de IA también amplía la superficie de ataque. La configuración llevada en un repositorio es una entrada no confiable, y convertirla en un proceso en ejecución debería requerir un consentimiento explícito.

Fuente

Ver noticia original