O GitLab liberou correções em 21 de outubro para uma falha que permite a um atacante executar código em um servidor autogerenciado, sem fazer login. Ela afeta todas as versões do software desde a 7.0, lançada em 2014.
A correção é importante até para administradores que aplicaram a atualização nove dias antes. A versão de 12 de outubro cobria apenas as versões 19.2 e posteriores, e as novas versões corrigidas ficam uma atualização acima dela. Por isso, uma instância atualizada naquele momento continua exposta à falha.
A falha, identificada como CVE-2026-110264 (sigla para Common Vulnerabilities and Exposures, ou Vulnerabilidades e Exposições Comuns), recebeu nota 10.0 na escala CVSS (Sistema de Pontuação de Vulnerabilidades Comuns), que é o máximo. Segundo o GitLab, em determinadas condições ela pode permitir que um usuário não autenticado execute código arbitrário no servidor, devido a um estouro de inteiro durante a compilação de uma expressão regular especialmente elaborada.
O GitLab não informou quais são essas condições. A empresa não identificou sinais de que a falha tenha sido usada em ataques, e ela não consta no catálogo de vulnerabilidades exploradas conhecidas da CISA (Agência de Segurança Cibernética e de Infraestrutura dos EUA) até 22 de outubro.
Somente instalações autogerenciadas precisam agir. O GitLab.com já executa a versão corrigida, e os clientes do GitLab Dedicated nas versões internas 19.3.5-internal0 e 19.4.2-internal0 ou posteriores já têm a correção.
O GitLab corrigiu a falha em sete versões de uma só vez.
A tabela abaixo relaciona cada ramo de lançamento à versão que o corrige.
Quatro dessas versões são mais antigas do que a empresa normalmente corrige. A política do GitLab abrange a versão atual e as duas anteriores lançadas mensalmente, que, até o momento, são 19.5, 19.4 e 19.3.
A empresa informou que a correção foi retroportada para as versões 18.11.13, 19.0.10, 19.1.9 e 19.2.9, além dos lançamentos padrão. É uma medida que o GitLab reserva para problemas graves.
O motivo de a falha atingir versões tão antigas está no componente que apresentou o problema. O compilador de expressões regulares é o mecanismo embutido do Ruby, chamado Onigmo, que o GitLab distribui dentro de seus próprios pacotes e corrige em suas próprias versões. Uma fraqueza nesse mecanismo está presente em todas as versões em que a empresa o incluiu, ou seja, todas desde a 7.0.
O GitLab também publicou duas regras de detecção para ajudar administradores de instalações autogerenciadas a procurar tentativas de exploração. Elas se chamam “Onigmo native worker crash” e “Org mode render error burst”. As regras fazem parte do framework TLDR, de código aberto da empresa, que escreve cada detecção no formato Sigma (padrão aberto para regras de detecção) com base nos registros de aplicação do próprio GitLab.
O GitLab não disse quais pré-condições um atacante precisa cumprir para chegar ao compilador. Por isso, os administradores ainda não podem descartar exposição com base na configuração. A correção é a única proteção segura, e o aviso de segurança do GitLab não oferece solução paliativa provisória.
Esta é a quarta falha de execução de código no mecanismo de expressões regulares do GitLab reportada em um único mês pelo mesmo pesquisador, que usa o identificador joaxcar. É também a primeira a atingir versões anteriores à 19.2.
Em 12 de outubro, o GitLab corrigiu a CVE-2026-97229, também um estouro no compilador de expressões regulares com nota 10.0 e sem necessidade de autenticação. A correção valeu para as versões 19.2.8, 19.3.5 e 19.4.2. Em 23 de setembro, a empresa corrigiu outras duas, a CVE-2026-93577 e a CVE-2026-89078. Ambas receberam nota 9.9, mas exigem uma conta logada. As três falhas anteriores paravam na versão 19.2, e esta não.
A versão de 21 de outubro corrige 11 problemas de segurança ao todo. Um deles é crítico, e os demais são de gravidade alta, média ou baixa.
Falhas de autenticação
Duas das outras falhas envolvem autenticação. A CVE-2026-15723, classificada como alta com nota 8.2, poderia permitir que um usuário autenticado assumisse outra conta. Isso ocorre apenas quando o administrador habilitou tanto o vínculo automático do SAML (protocolo de autenticação única) quanto o do LDAP (protocolo de acesso a diretórios de usuários).
Uma falha de envenenamento de cache nos pontos de acesso OAuth (protocolo de autorização) e OpenID Connect (camada de identidade sobre o OAuth) do GitLab, identificada como CVE-2026-112212, recebeu nota 7.5 e foi classificada como alta. Ela poderia permitir que um atacante redirecionasse determinados fluxos de login para um servidor sob seu controle, em configurações que usam cache compartilhado.
Custo da atualização
A atualização traz um custo que vale planejar. As versões 19.4.3 e 19.3.6 incluem alterações no banco de dados que são executadas durante o processo. Em servidores de nó único, isso significa indisponibilidade enquanto essas alterações são concluídas. O GitLab informou que configurações com vários nós podem aplicar a correção sem interrupção, usando seu procedimento de atualização sem indisponibilidade (zero-downtime).