Yonatan-Pl

#8215de 56,333
35.7CVSS total
Vulnerabilidades · 4
Alta
2
Crítica
2
PT-2026-63305
8.1
2026-07-21
Gitea · Gitea · CVE-2026-58439
**Nome do Software Vulnerável e Versões Afetadas** Gitea versões anteriores a 1.27.0 **Description** O Gitea não reavalia a flag `official` em revisões de pull requests existentes quando o branch de destino de um pull request é alterado. Um invasor com acesso de escrita a um repositório pode obter uma aprovação `official: true` em um pull request direcionado a um branch não protegido e, em seguida, redirecionar esse pull request para um branch protegido. Como o sistema não verifica se o revisor está na lista de permissões (whitelist) de aprovação do novo branch de destino, a aprovação obsoleta é preservada. Isso permite que o invasor satisfaça os requisitos do branch protegido e mescle alterações sem a aprovação legítima do mantenedor, contornando efetivamente a proteção de branch e escalando privilégios. Detalhes técnicos incluem o seguinte: - **API Endpoints:** `/api/v1/repos/{owner}/{repo}/pulls` e `/api/v1/repos/{owner}/{repo}/pulls/{index}/reviews` são utilizados durante o processo de exploração. - **Vulnerable Parameters or Variables:** A flag `official` é armazenada como um booleano no registro de revisão e não é atualizada durante o processo `ChangeTargetBranch`. - **Function Names:** O problema envolve as funções `IsUserOfficialReviewer()`, `ChangeTargetBranch()` e `GetGrantedApprovalsCount()`, que falha ao re-verificar a lista de permissões em relação ao novo branch. **Recommendations** Atualize o Gitea para a versão 1.27.0 ou posterior. Como medida de mitigação temporária, restrinja o acesso de escrita aos repositórios apenas a usuários confiáveis para evitar o redirecionamento não autorizado de pull requests.