GitLab ha publicado actualizaciones de seguridad de emergencia que corrigen varias vulnerabilidades, incluida CVE-2026-85706 con la puntuación máxima CVSS 10.0, una vulnerabilidad de path traversal en el API de commits del repositorio que permite a un atacante no autenticado leer archivos arbitrarios en el servidor GitLab. Se ven afectadas ambas ediciones —Community Edition y Enterprise Edition— a partir de la versión 18.7. Según la empresa watchTowr, el escaneo de instancias vulnerables comenzó a las pocas horas de la divulgación pública. Los administradores de instalaciones autogestionadas de GitLab accesibles desde Internet deben actualizar de inmediato a las versiones 19.1.8, 19.2.6 o 19.3.2.
Detalles técnicos de CVE-2026-85706
La vulnerabilidad CVE-2026-85706 pertenece a la clase CWE-22 (path traversal) y, según la descripción de GitLab, está causada por una restricción incorrecta de rutas y la ausencia de verificación de autenticación en el API de commits del repositorio. Esto significa que, bajo ciertas condiciones, un atacante externo puede obtener el contenido de archivos arbitrarios en el servidor sin disponer de credenciales.
Según el registro en GitHub Advisory Database, la vulnerabilidad afecta a las siguientes versiones de GitLab CE y EE:
- Todas las versiones desde la 18.7 hasta antes de la 19.1.8
- Todas las versiones desde la 19.2 hasta antes de la 19.2.6
- Todas las versiones desde la 19.3 hasta antes de la 19.3.2
De acuerdo con los datos de watchTowr, la explotación permite acceder a los registros y archivos de configuración de GitLab que contienen credenciales, secretos y otra información sensible. La única condición necesaria, según se informa, es la existencia de al menos un proyecto público en la instancia objetivo.
Segunda vulnerabilidad crítica: CVE-2026-87719
En la misma actualización, GitLab corrigió otra vulnerabilidad crítica: CVE-2026-87719 con una puntuación CVSS 9.9. Se trata de un fallo de deserialización insegura (CWE-502) que afecta solo a GitLab Enterprise Edition.
Según la descripción en GitHub Advisory Database, esta vulnerabilidad permite a un usuario autenticado con acceso a Duo Chat obtener configuraciones de Advanced Search y credenciales sensibles a través de un argumento de suscripción GraphQL especialmente manipulado, eludiendo la serialización y realizando búsquedas de objetos del servidor. Se ven afectadas las versiones de GitLab EE desde la 18.3 hasta la 19.1.8, desde la 19.2 hasta la 19.2.6 y desde la 19.3 hasta la 19.3.2.
La diferencia fundamental entre ambas vulnerabilidades reside en el alcance del impacto. CVE-2026-85706 afecta a ambas ediciones (CE y EE) y no requiere autenticación, lo que la hace más peligrosa para las instalaciones accesibles desde Internet. CVE-2026-87719 está limitada a Enterprise Edition y requiere acceso autenticado a Duo Chat, lo que reduce significativamente el número potencial de atacantes.
Contexto: serie de vulnerabilidades críticas en GitLab
No es la primera vulnerabilidad crítica de GitLab en las últimas semanas. Anteriormente se divulgó CVE-2026-19478, una vulnerabilidad de inyección de código a través de GraphQL con puntuación CVSS 9.4, que permitía a un usuario no autenticado modificar o eliminar proyectos públicos y datos de usuarios mediante una directiva GraphQL. Ya hemos escrito sobre esta vulnerabilidad. Para CVE-2026-19478 existe un entorno de reproducción público que describe dos vectores de ataque a través de filtros de versiones GraphQL. Al mismo tiempo, las afirmaciones sobre la explotación activa inmediata de CVE-2026-19478 en estado salvaje no han sido confirmadas de forma independiente: la existencia de un PoC público por sí sola no constituye prueba de explotación masiva.
Una cautela similar es apropiada en relación con CVE-2026-85706: la declaración de watchTowr sobre el inicio del escaneo el 11 de septiembre de 2026 a las 06:00 UTC se ha transmitido a través de una fuente de noticias, y en el momento de la publicación no se ha encontrado confirmación independiente por parte de otros observadores o de CISA. No obstante, la propia naturaleza de la vulnerabilidad —lectura de archivos no autenticada con CVSS máximo— hace muy probable la rápida aparición de escaneos.
Evaluación del impacto
La atractividad de GitLab como objetivo para los atacantes es evidente: el acceso no autorizado abre el camino al código fuente, a los secretos de los pipelines CI/CD, a las credenciales y a la posibilidad de inyectar código en las cadenas de construcción. La compromisión de un servidor GitLab puede conducir a ataques a la cadena de suministro: todo lo que se encuentra «aguas abajo» de un pipeline comprometido queda bajo amenaza.
Corren el mayor riesgo las organizaciones que operan instancias autogestionadas de GitLab accesibles desde Internet, especialmente si disponen de proyectos públicos.
Recomendaciones
- Actualización inmediata: instale las versiones 19.3.2, 19.2.6 o 19.1.8 según la rama que utilice. La prioridad de parcheo de CVE-2026-85706 es mayor que la de CVE-2026-87719 debido a que no requiere autenticación.
- Restricción de acceso: si no es posible actualizar de inmediato, limite el acceso público a la instancia de GitLab.
- Revisión de registros: según la recomendación de watchTowr, analice los registros en busca de solicitudes HTTP POST al URI
/api/v4/projects/{id}/repository/commits/que contengan los parámetrosfile.Path; esto puede indicar intentos de explotación. - Rotación de secretos: si la instancia ha sido accesible desde Internet en una configuración vulnerable, valore la rotación de credenciales y secretos almacenados en los archivos de configuración de GitLab.
Tres vulnerabilidades críticas de GitLab en un periodo corto conforman una tendencia sostenida que exige a los administradores de instalaciones autogestionadas replantearse su enfoque de gestión de actualizaciones. La acción concreta ahora es actualizar a las versiones 19.3.2, 19.2.6 o 19.1.8 y revisar los registros del API de commits en busca de indicios de intentos de explotación de CVE-2026-85706.