PT-2026-63312 · Gitea+1 · Gitea+1
CVSS v3.1
4.3
Média
| Vetor | AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N |
Nome do Software Vulnerável e Versões Afetadas
Gitea versões 1.25.4 até 2026-05-16
Description
Quando um repositório público é alterado para privado via API REST, os registros de observação (watches) não são limpos corretamente. Isso ocorre porque a função
updateRepository(), utilizada pelo endpoint PATCH /api/v1/repos/{owner}/{repo}, não chama a função ClearRepoWatches, diferentemente do caminho utilizado pela interface web. Consequentemente, usuários cujo acesso foi revogado ainda podem visualizar o repositório agora privado no endpoint GET /api/v1/user/subscriptions?private=true, expondo metadados sensíveis como a descrição do repositório, branch padrão, linguagem e lista de licenças. Além disso, este problema permite que o contador NumWatches permaneça inflacionado e cria um potencial de vazamento de conteúdo através de futuros caminhos de notificação que possam carecer de verificações de acesso adequadas.Recommendations
Na função
updateRepository() em services/repository/repository.go, adicione uma chamada para ClearRepoWatches imediatamente após ClearRepoStars quando um repositório for definido como privado.
Como mitigação temporária, evite usar o endpoint PATCH /api/v1/repos/{owner}/{repo} para alterar a visibilidade do repositório para privado e utilize as Configurações da interface web.Exploit
Correção
DoS
Information Disclosure
Improper Preservation of Permissions
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Gitea
Red Os