Mastodon Mastodon Mastodon Mastodon

CVE-2026-90970 en GitLab AI Gateway: riesgo de RCE y compromiso de claves JWT

Foto del autor

CyberSecureFox Editorial Team

Publicado:

GitLab AI Gateway ha recibido la vulnerabilidad crítica CVE-2026-90970 (CVSS 9.9), que permite a un usuario autenticado con acceso a Duo Agent Platform, bajo determinadas condiciones, ejecutar comandos arbitrarios en el gateway; solo están en riesgo las organizaciones con un AI Gateway self-hosted, que deben actualizar inmediatamente el gateway a las versiones 19.2.4, 19.3.2 o 19.4.1, de lo contrario se arriesgan a perder el control sobre las claves JWT y los canales de comunicación entre GitLab y los proveedores de modelos.

Detalles técnicos de la vulnerabilidad

Según el aviso de seguridad oficial de GitLab sobre la publicación del parche para AI Gateway en las versiones 19.2.4, 19.3.2 y 19.4.1 (patch-release gitlab-ai-gateway-19-4-1), CVE-2026-90970 se describe como una debilidad crítica en el mecanismo de plantillas de prompts (prompt template) en los flujos personalizados (custom flow) de Duo Agent Platform:

  • Identificador: CVE-2026-90970 (crítica; CVSS 9.9 según GitLab, confirmada por la entrada del proyecto CVE: entrada CVE-2026-90970).
  • Clase de debilidad: CWE-1336 (errores en motores de plantillas y sistemas de generación de código; indicado por GitLab como clase general también para el CVE-2026-1868 de febrero).
  • Tipo de impacto: posibilidad de «escape the prompt template sandbox» con la posterior ejecución de comandos arbitrarios en el AI Gateway.
  • Privilegios requeridos: usuario autenticado con acceso a Duo Agent Platform y capacidad de crear/modificar custom flow; en el aviso de seguridad no se mencionan roles adicionales.

La esencia del problema es que el mecanismo de plantillas, que debería aislar el contexto de ejecución (sandbox para prompt template), puede ser eludido mediante una configuración de flujo especialmente construida. En términos del modelo de amenazas, esto convierte la descripción del flujo de IA por parte del usuario en un canal para la inyección de construcciones que llevan a la ejecución de comandos en el entorno host del gateway.

GitLab subraya que la explotación conduce precisamente a la ejecución de comandos en el AI Gateway, y no directamente en el servidor GitLab. Sin embargo, en la arquitectura de Duo AI Gateway self-hosted este componente actúa como intermediario de confianza y contiene elementos sensibles:

  • en el gateway se almacenan las claves de firma JWT utilizadas para el intercambio entre GitLab y el gateway (mencionado en la documentación sobre Duo self-hosted: GitLab Duo Self-Hosted);
  • el gateway mantiene conexiones tanto con la instancia de GitLab como con los proveedores de modelos.

Desde el punto de vista de las amenazas, esto significa que la ejecución satisfactoria de comandos en el AI Gateway puede conducir, como mínimo, a:

  • compromiso de las claves JWT (pérdida de confianza en todos los tokens firmados por este gateway);
  • posibilidad de manipular el tráfico entre GitLab y los proveedores de modelos (suplantación de peticiones/respuestas, fuga del contenido de los prompts y de la base de código, si pasan por el gateway);
  • uso del gateway como punto de apoyo para un movimiento posterior dentro de la red.

La entrada del CVE en NVD, creada a partir de la información de GitLab y del proyecto CVE, está disponible bajo el identificador estándar CVE-2026-90970 en NVD, lo que consolida la evaluación como crítica y confirma la ejecución remota de código (RCE) con autenticación.

Versiones afectadas y corregidas

AI Gateway se entrega como componente independiente (imagen Docker o Helm chart) y se actualiza de forma independiente de la versión principal de GitLab. En el aviso de seguridad de GitLab sobre AI Gateway (documentación de instalación y actualización de AI Gateway) se fijan los siguientes puntos clave:

  • Versiones corregidas de AI Gateway:
    • 19.2.4
    • 19.3.2
    • 19.4.1
  • No hay correcciones para ramas por debajo de la 19.2.4; al mismo tiempo, en el aviso de seguridad se indica explícitamente que todas las versiones desde la 18.1.6 hasta, e incluyendo, la línea 19.1 entran en el rango de versiones afectadas.
  • GitLab solo da soporte (a fecha de 2 de octubre) a las ramas GitLab 19.4, 19.3 y 19.2, lo que se refleja en la política de mantenimiento: GitLab maintenance policy. Esas mismas líneas han recibido los parches de AI Gateway.

Para actualizar un despliegue en Docker, GitLab recomienda detener y eliminar el contenedor actual de AI Gateway, después descargar y ejecutar la imagen con la nueva etiqueta (por ejemplo, self-hosted-v19.4.1-ee). Para despliegues con Helm basta con cambiar la etiqueta de la imagen en la configuración del chart y aplicar la actualización.

Las organizaciones que utilizan GitLab.com, GitLab Dedicated o GitLab self-managed con AI Gateway alojado por GitLab están protegidas automáticamente: el proveedor ya ha actualizado sus gateways. Solo se requieren acciones por parte de los propietarios de gateways self-hosted.

El aviso de seguridad subraya dos importantes limitaciones:

  • GitLab no proporciona soluciones temporales (workaround) para quienes aún no pueden actualizar el gateway.
  • No se describen métodos de diagnóstico fiables que permitan al administrador determinar de forma inequívoca el hecho de una explotación pasada de la vulnerabilidad en su gateway.

Según la evaluación de CISA, añadida a la entrada del CVE el 2 de octubre, el estado de explotación es «none» (no hay información sobre explotación pública ni proof-of-concept). Pero esto es un estado puntual: la clase de vulnerabilidad y la alta puntuación CVSS la convierten en un objetivo atractivo, especialmente tras la publicación de los detalles del parche.

Clase de vulnerabilidades recurrente en AI Gateway

En febrero, GitLab ya había corregido un problema crítico de la misma clase en AI Gateway: CVE-2026-1868, también con una puntuación de 9.9 y un vector similar: crafted flow definition que lleva a una denegación de servicio o a la ejecución de código en el gateway. El parche se describe en un aviso de seguridad independiente de GitLab: patch-release gitlab-ai-gateway-18-8-1.

Ambas vulnerabilidades pertenecen a CWE-1336: violaciones de seguridad en sistemas de plantillas. La secuencia de dos incidentes críticos en menos de un año indica que:

  • el mecanismo de plantillas para flujos personalizados en Duo Agent Platform es una parte de alta criticidad en la arquitectura;
  • los métodos tradicionales de pruebas (incluyendo pruebas unitarias y las revisiones de seguridad estándar) no cubren todos los escenarios de abuso de custom flow;
  • para proteger plataformas de este tipo con capacidad de configurar flujos de IA son necesarios un análisis de seguridad específico de los motores de plantillas y restricciones estrictas de las construcciones disponibles.

Para los consumidores, esto significa que el riesgo no se limita a un único CVE: el propio modelo de ofrecer potentes herramientas de configuración de flujos de IA a los usuarios finales requiere que los administradores ajusten con más cuidado los privilegios y adopten estas funciones de forma gradual en los procesos críticos.

Evaluación del impacto y perfil de riesgo

La zona principal de riesgo son las organizaciones que:

  • despliegan GitLab AI Gateway self-hosted en sus propios entornos;
  • proporcionan acceso a Duo Agent Platform a un amplio círculo de desarrolladores y equipos, y no solo a un núcleo restringido de confianza;
  • utilizan las funciones de IA de GitLab (GitLab Duo) para trabajar con código o datos sensibles (propiedad intelectual, artefactos confidenciales, modelos internos).

En ausencia de actualización, las posibles consecuencias incluyen:

  • Compromiso de autenticación y autorización:
    • un atacante que obtenga acceso al gateway puede extraer las claves JWT o manipular el proceso de emisión de tokens;
    • como resultado, la posibilidad de falsificar interacciones de confianza entre GitLab y AI Gateway.
  • Fuga de datos:
    • acceso al contenido de las peticiones y respuestas de los modelos de IA;
    • acceso indirecto a la base de código y a los artefactos, si participan en los flujos de IA.
  • Ampliación del perímetro de ataque:
    • uso del gateway como punto de entrada para un movimiento posterior en la infraestructura (desplazamiento hacia el servidor GitLab, bases de datos, segmentos de red en los que se encuentra el gateway);
    • transición de una vulnerabilidad «interna» (se requiere autorización en Duo Agent Platform) a un escenario en el que una cuenta interna comprometida causa un daño máximo.

Debe tenerse en cuenta que la presencia de autenticación no hace que la vulnerabilidad sea poco significativa: en un entorno DevOps típico, los derechos para crear custom flow a menudo los tienen desarrolladores e ingenieros que ya cuentan con amplias capacidades. CVE-2026-90970 convierte cualquier cuenta comprometida con dichos privilegios en una palanca directa para tomar el control del AI Gateway.

Recomendaciones prácticas de respuesta

1. Actualización inmediata de AI Gateway self-hosted

  1. Determine si utiliza un AI Gateway self-hosted:
    • revise la documentación de su propia instalación o siga la sección «self-hosted» en la guía de GitLab Duo: GitLab Duo Self-Hosted;
    • si utiliza GitLab.com o GitLab Dedicated sin un gateway propio, puede omitir este paso: GitLab ya ha actualizado el gateway.
  2. Determine la versión actual de AI Gateway:
    • para Docker, por la etiqueta de la imagen/contenedor;
    • para Helm, por la etiqueta de la imagen indicada en el archivo values del chart.
  3. Si la versión es inferior a 19.2.4, 19.3.2 o 19.4.1:
    • para Docker:
      1. detenga y elimine el contenedor en ejecución de AI Gateway;
      2. descargue la nueva imagen con la etiqueta corregida (self-hosted-v19.2.4-ee, self-hosted-v19.3.2-ee o self-hosted-v19.4.1-ee, según su rama de GitLab; consulte las instrucciones de actualización);
      3. ejecute el nuevo contenedor con los mismos parámetros de entorno y red.
    • para Helm:
      1. actualice la etiqueta de la imagen de AI Gateway en la configuración del chart a una de las versiones corregidas;
      2. aplique la actualización (helm upgrade ...).

2. Gestión de accesos a Duo Agent Platform

  • Revise la lista de usuarios que tienen acceso a Duo Agent Platform y privilegios para crear/editar custom flow.
  • Reduzca este acceso al conjunto mínimo necesario de roles, especialmente en entornos con AI Gateway self-hosted.
  • Limite temporalmente los experimentos con flujos personalizados en entornos productivos hasta completar la actualización y una evaluación adicional de riesgos.

3. Análisis posterior al incidente y monitorización

Dado que GitLab no ha proporcionado un método listo para verificar el hecho de explotación, tiene sentido llevar a cabo un análisis ampliado de la actividad en torno a AI Gateway y Duo Agent Platform durante el periodo previo a la actualización:

  • analice los registros de acceso a Duo Agent Platform:
    • creación o modificación de custom flow no estándar;
    • cambios sospechosamente frecuentes o complejos en las configuraciones de los flujos;
  • revise los registros del contenedor o pod de AI Gateway en busca de:
    • comandos atípicos en los logs del sistema;
    • errores relacionados con la ejecución de plantillas (exceptions en el motor de plantillas);
    • conexiones salientes sospechosas hacia hosts inusuales.
  • si hay motivos para sospechar explotación:
    • considere las claves JWT en el gateway como comprometidas;
    • inicie el procedimiento de rotación de claves y recreación de las relaciones de confianza entre GitLab y AI Gateway.

4. Medidas a largo plazo

  • Implante la práctica de despliegues separados:
    • entornos separados para experimentos con flujos de IA y para integraciones de IA en producción;
    • instancias separadas de AI Gateway para proyectos especialmente sensibles, si es necesario.
  • Incluya las actualizaciones de AI Gateway en el proceso general de gestión de parches al mismo nivel que GitLab core:
    • comprobación de los avisos de seguridad actuales de GitLab para AI Gateway;
    • comparación periódica con las versiones soportadas en la maintenance policy.
  • Reevalúe el modelo de confianza hacia los componentes de IA:
    • considere AI Gateway como un servicio altamente sensible, con una criticidad equivalente a la del servidor GitLab;
    • restrinja el acceso de red al gateway y utilice segmentos de red separados y control del tráfico entre redes.

La prioridad clave para los propietarios de GitLab AI Gateway self-hosted es actualizar el gateway en el corto plazo a una de las versiones corregidas (19.2.4, 19.3.2 o 19.4.1), para después revisar los privilegios de acceso a Duo Agent Platform y llevar a cabo al menos una auditoría básica de los registros del gateway y de los custom flow correspondientes al periodo previo a la actualización.


CyberSecureFox Editorial Team

El equipo editorial de CyberSecureFox cubre noticias de ciberseguridad, vulnerabilidades, campañas de malware, actividad de ransomware, AI security, cloud security y security advisories de proveedores. Los materiales se preparan a partir de official advisories, datos de CVE/NVD, alertas de CISA, publicaciones de proveedores e informes públicos de investigadores. Los artículos se revisan antes de su publicación y se actualizan cuando aparece nueva información.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.