PT-2026-67312 · Unknown · @Better-Auth/Oauth-Provider
CVSS v3.1
6.4
Média
| Vetor | AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N |
Nome do Software Vulnerável e Versões Afetadas
@better-auth/oauth-provider versões anteriores a 1.7.0-beta.4
Descrição
O @better-auth/oauth-provider falha ao vincular a audiência do token de acesso à concessão de autorização, permitindo que clientes solicitem tokens para recursos não relacionados. Isso ocorre porque o provedor aceita o parâmetro
resource apenas no endpoint de token e não registra os recursos solicitados no código de autorização ou na linha do token de atualização. Consequentemente, um cliente pode obter um token de acesso JWT direcionado a um servidor de recursos que a autorização do usuário nunca cobriu, desde que o recurso esteja na lista de permissões validAudiences do servidor. Este comportamento diverge da RFC 8707, pois o endpoint de token deve apenas restringir, e não ampliar, os recursos autorizados. O problema afeta o endpoint /oauth2/token e a reivindicação aud em JWTs. Um invasor pode ignorar os limites de autorização pretendidos para usar um token concedido para um recurso em outro, embora o acesso permaneça limitado aos escopos concedidos.Recomendações
Atualize o @better-auth/oauth-provider para a versão 1.7.0-beta.4 ou posterior e execute a migração de esquema usando
npx auth migrate.
Como solução temporária, defina validAudiences para uma única audiência ou deixe-o desconfigurado para usar a URL base padrão.
Configure os servidores de recursos para aceitar tokens apenas quando seu próprio identificador for a audiência esperada e rejeite tokens onde a reivindicação aud seja um array que liste outras audiências.
Evite confiar no indicador resource como um limite de autorização até que a correção seja aplicada.Exploit
Correção
Improper Authorization
Incorrect Authorization
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
@Better-Auth/Oauth-Provider