Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
gitea-CVE-2026-28699 — Lab + writeup para CVE-2026-28699: bypass da imposição de escopo OAuth2 do Gitea via autenticação HTTP Basic | Kitploit
Ferramentas/GitHubGitHub/alardiians/gitea-cve-2026-28699
Autenticação e AutorizaçãoAnálise de VulnerabilidadesExploraçãoExploração de Aplicações WebCTFTestes de PenetraçãoAprendizado e EducaçãoLabs e Prática
GitHubalardiians/gitea-cve-2026-28699

gitea-CVE-2026-28699

Lab + writeup para CVE-2026-28699: bypass da imposição de escopo OAuth2 do Gitea via autenticação HTTP Basic

Ver Repositório
1há 2 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2026-28699: Bypass de Escopo OAuth2 do Gitea via Autenticação Básica HTTP

Um token de acesso OAuth2 do Gitea com escopo apenas para read:user pode realizar ações de escrita completas quando enviado como Authorization: Basic base64(<token>:x-oauth-basic) em vez de como um token Bearer. A verificação de escopo é ignorada para qualquer token apresentado via autenticação básica.

Afetado: <= 1.26.1. Corrigido na 1.26.2. Aviso: GHSA-9r5x-wg6m-x2rc. CWE-863. Gravidade Alta.

Artigo completo: WRITEUP.md

Início rápido

root@kitploit:~
pip install -r requirements.txt   # requests
python fetch_binaries.py          # pulls vulnerable 1.26.1 + patched 1.26.2 for your OS
python poc.py 1.26.1              # vulnerable: Basic-auth write succeeds (scope bypassed)
python poc.py 1.26.2              # patched: Basic-auth write blocked (403)

poc.py cria uma instância descartável do Gitea no SQLite no diretório temporário do sistema, executa o fluxo de código de autorização OAuth2 para gerar um token exclusivo read:user, depois chama um endpoint de escrita via Bearer e Basic e exibe o veredito. Defina POC_DEBUG=1 para ver as etapas do fluxo de autenticação.

Saída esperada

Vulnerável 1.26.1:

root@kitploit:~
[Bearer] PATCH /api/v1/user/settings -> HTTP 403   (blocked)
[Basic ] PATCH /api/v1/user/settings -> HTTP 200   (ALLOWED -- scope BYPASSED)
>>> VULNERABLE: read:user token performed a write via Basic auth.

Corrigido 1.26.2:

root@kitploit:~
[Bearer] PATCH /api/v1/user/settings -> HTTP 403   (blocked)
[Basic ] PATCH /api/v1/user/settings -> HTTP 403   (blocked)
>>> PATCHED: scope enforced on both Bearer and Basic.

Causa raiz em uma tabela

services/auth/basic.go definia IsApiToken mas não ApiTokenScope para tokens OAuth2. O middleware tokenRequiresScopes retorna cedo quando o escopo está ausente, então nada é verificado. A correção 1.26.2 adiciona o store.GetData()["ApiTokenScope"] = accessTokenScope ausente.

Arquivos

Uso autorizado apenas

Para educação e testes de segurança autorizados: seu próprio laboratório, máquinas CTF e HTB, alvos de bug bounty no escopo. O PoC executa seu próprio Gitea descartável, portanto, não aponte para nada que você não possua.

Baixar ferramenta
Apresentação de autenticaçãoIsApiTokenApiTokenScopeescopo aplicado?
Token OAuth2 via Bearertruedefinidosim
Token OAuth2 via Basictrueausentenão (falha aberta)
Token de acesso pessoaltruedefinidosim
ArquivoPropósito
WRITEUP.mdAnálise de causa raiz, impacto, remediação, detecção
fetch_binaries.pyBaixa os binários 1.26.1 / 1.26.2 para seu SO/arquitetura
poc.pyProvisiona Gitea, gera um token read:user, testa Bearer vs Basic
requirements.txtrequests