PT-2026-51629 · Gogs · Gogs

CVE-2026-52811

·

Publicado

2026-06-23

·

Atualizado

2026-07-30

CVSS v4.0

9.0

Crítica

VetorAV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
Nome do Software Vulnerável e Versões Afetadas Gogs versões anteriores a 0.14.3
Descrição Existe um problema na função (*Repository).UploadRepoFiles onde as verificações de links simbólicos (symlinks) são realizadas apenas na folha do destino do upload usando osx.IsSymlink(targetPath), diferentemente de outras funções que validam cada componente do caminho. Um invasor com acesso de escrita ao repositório pode explorar isso realizando um upload multipart com um nome de arquivo contendo uma barra invertida literal.
No Linux, essa barra invertida é preservada por filepath.Base e posteriormente convertida em uma barra normal por pathx.Clean, permitindo que a operação de escrita seja redirecionada através de um link simbólico de diretório previamente commitado. Como iox.CopyFile utiliza os.Create sem a flag O NOFOLLOW, o sistema segue o link simbólico pai e grava dados arbitrários em qualquer local onde o ID de usuário do Gogs tenha permissões. Isso pode resultar em um acesso via SSH ao sobrescrever ~git/.ssh/authorized keys ou Execução Remota de Código (RCE) ao sobrescrever <repo>.git/hooks/post-receive. Este problema afeta instalações em Linux e macOS; versões para Windows não são afetadas.
Recomendações Atualize o Gogs para a versão 0.14.3. Como mitigação temporária, restrinja o acesso de escrita ao repositório apenas a usuários confiáveis. Restrinja o uso da função (*Repository).UploadRepoFiles até que a atualização seja aplicada.

Exploit

Correção

RCE

Link Following

Path traversal

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-52811
GHSA-89MR-XQFV-758M
GO-2026-5249
OPENSUSE-SU-2026:21483-1

Produtos afetados

Gogs