Actualizar GitLab self-managed (CVE-2026-110264)
El 21 de octubre de 2026 GitLab parcheó CVE-2026-110264, un fallo CVSS 10.0 que permite ejecutar código en el servidor sin autenticación y afecta a GitLab self-managed desde la versión 7.0, de 2014. Nueve días antes había corregido CVE-2026-97229, también 10.0. GitLab.com ya está actualizado; las instalaciones propias dependen de ti.
¿Tienes esta vulnerabilidad? Actualizamos tu GitLab a la versión corregida de tu rama, planificamos la parada si las migraciones de base de datos la exigen y revisamos runners, tokens y logs.
$ sudo gitlab-rake gitlab:env:info | grep -A1 "GitLab information"GitLab informationVersion: 19.4.2-ee# 19.4.2 corrige CVE-2026-97229, no CVE-2026-110264$ cat /opt/gitlab/embedded/service/gitlab-rails/VERSION19.4.2-ee# También en el navegador: https://tu-gitlab/helpPara la rama 19.4: actualizar a 19.4.3 Dos fallos CVSS 10.0 en nueve días
Quien actualizó el 12 de octubre por CVE-2026-97229 tiene que volver a hacerlo: aquella corrección no cubre CVE-2026-110264, que alcanza a todas las versiones desde 2014.
CVE-2026-110264 es un desbordamiento de entero al compilar una expresión regular manipulada en Onigmo, el motor de expresiones regulares de Ruby que GitLab incluye y parchea en sus propios paquetes. GitLab lo trae desde la 7.0, y por eso el fallo llega tan atrás. GitLab no ha explicado qué condiciones necesita un atacante, así que no se puede descartar por configuración, y no ofrece mitigación temporal: la única corrección es actualizar.
El 12 de octubre GitLab había corregido CVE-2026-97229, también CVSS 10.0: ejecución de código sin autenticación mediante una expresión regular manipulada en la configuración de CI/CD, en las versiones 19.2 a 19.4 (corregida en 19.2.8, 19.3.5 y 19.4.2). Existe una prueba de concepto pública.
A 22 de octubre, GitLab no informa de explotación de CVE-2026-110264 y no figura en el catálogo KEV de CISA. GitLab ha publicado dos reglas Sigma para buscar intentos, «Onigmo native worker crash» y «Org mode render error burst». Las instancias de GitLab Dedicated en 19.3.5-internal0 o 19.4.2-internal0 y posteriores ya tienen la corrección.
Fuentes: The Hacker News: CVE-2026-110264 · The Hacker News: CVE-2026-97229
Versiones corregidas de GitLab
Vale para GitLab CE y EE instalado por ti (Omnibus, Docker, Helm). Si tu versión es anterior a la de su rama, estás afectado por CVE-2026-110264.
| Si tienes | Actualiza a | Nota |
|---|---|---|
| 19.5 (antes de 19.5.1) | 19.5.1 | |
| 19.4 (antes de 19.4.3) | 19.4.3 | Migraciones de BD: parada en un solo nodo |
| 19.3 (antes de 19.3.6) | 19.3.6 | Migraciones de BD: parada en un solo nodo |
| 19.2 (antes de 19.2.9) | 19.2.9 | |
| 19.1 (antes de 19.1.9) | 19.1.9 | |
| 19.0 (antes de 19.0.10) | 19.0.10 | |
| 7.0 – 18.11 (antes de 18.11.13) | 18.11.13 | Puede exigir pasar por versiones intermedias |
Revisa esto
- Tienes GitLab CE o EE instalado en tu servidor, en Docker o en tu nube, no en GitLab.com.
- La versión que muestra
/helpes anterior a la de tu rama en la tabla. - Actualizaste el 12 de octubre a 19.2.8, 19.3.5 o 19.4.2: sigues afectado por CVE-2026-110264.
- Estás en 18.10 o anterior: tu destino es 18.11.13 o una 19.x, y GitLab exige paradas intermedias en la ruta de actualización.
- Tu instancia es accesible desde internet, aunque el registro de usuarios esté cerrado: el fallo no necesita cuenta.
Sin mitigación temporal
GitLab no ofrece ningún workaround para CVE-2026-110264. Lo que sí se puede preparar es la actualización, para que salga a la primera.
- 01 GitLab no ha dicho qué condiciones hacen falta para explotar el fallo, así que ninguna configuración te deja fuera.
- 02 En un servidor de un solo nodo, 19.4.3 y 19.3.6 ejecutan migraciones de base de datos durante la actualización y GitLab está parado hasta que terminan.
- 03 Con varios nodos se puede aplicar sin parada siguiendo el procedimiento de zero-downtime de GitLab.
- 04 Antes de tocar nada: copia de seguridad de la base de datos y los repositorios, y de
gitlab-secrets.jsonygitlab.rb, que no entran en el backup estándar.
Siete pasos, en este orden
Aplicamos el mismo procedimiento en cada servidor: primero saber qué versión hay en cada sitio, después corregir y al final comprobar que nadie entró antes del parche.
Inventario de versiones
Anotamos versión y edición (CE o EE), tipo de instalación (Omnibus, Docker, Helm), número de nodos, runners registrados y desde dónde es accesible la instancia.
Mitigación inmediata
Sin workaround oficial, lo que se puede hacer mientras se prepara la ventana es reducir quién llega a la instancia, por ejemplo dejándola solo detrás de la VPN si tu equipo puede trabajar así.
Actualización
Copia de seguridad, ruta de actualización con las paradas que exige GitLab si vienes de una versión antigua y salto a la versión corregida de tu rama. Si las migraciones obligan a parar, elegimos contigo el momento.
Verificación
Comprobamos la versión en /help, que las migraciones de base de datos han terminado, que los runners conectan y que los pipelines vuelven a pasar.
Revisión de indicios de compromiso
Aplicamos las reglas Sigma publicadas por GitLab sobre los logs y revisamos usuarios, tokens de acceso personal y claves SSH creados recientemente.
Rotación de secretos, si procede
Si hay indicios, rotamos tokens de runners, tokens personales y de despliegue, variables de CI/CD y las claves que usan los pipelines para desplegar.
Vigilancia de nuevos avisos
Dejamos anotada la versión, la ruta de actualización y el calendario de parches de GitLab, para que la siguiente actualización no empiece de cero.
Por qué una actualización de GitLab sale mal
¿Tu GitLab lleva años sin actualizarse?
Consultoría gratuita →Preguntas frecuentes sobre CVE-2026-110264
¿Qué versión de GitLab corrige CVE-2026-110264?
Ya actualicé el 12 de octubre, ¿tengo que volver a hacerlo?
Uso GitLab.com, ¿tengo que hacer algo?
¿La actualización deja GitLab parado?
¿Hay alguna mitigación si no puedo actualizar hoy?
Cuéntanos qué GitLab tienes
Con la versión, el tipo de instalación y el número de nodos te decimos la ruta de actualización y si va a hacer falta parar.
Cuéntanos tu reto. Te proponemos solución.
Sin compromiso. En menos de 24 h recibes una propuesta con alcance, plazos y presupuesto. Sin letra pequeña.