PT-2026-56301 · Npm · Better Auth+1

CVE-2026-53517

·

Publicado

2026-07-07

·

Atualizado

2026-07-21

CVSS v3.1

8.1

Alta

VetorAV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Nome do Software Vulnerável e Versões Afetadas @better-auth/oauth-provider versões 1.6.0 até 1.6.10 better-auth versões 1.4.8-beta.7 até 1.5.x
Description O endpoint POST /oauth2/token do @better-auth/oauth-provider está suscetível a uma condição de corrida durante o processo de concessão de refresh token. O sistema executa uma sequência não atômica de leitura, validação, revogação e emissão da linha oauthRefreshToken. Isso permite que solicitações simultâneas usando o mesmo token de atualização pai ignorem a verificação de revogação, resultando na criação de famílias de tokens de atualização bifurcadas. Este problema pode levar ao acesso não autorizado indefinido se um token de atualização for roubado, pois o invasor pode manter um ramo de token válido que sobrevive a revogações individuais. A falha ocorre porque o predicado de atualização é baseado apenas no ID e não verifica se o token já foi revogado, e o esquema do banco de dados carece de uma restrição de unicidade no campo do token.
Recommendations Atualize o @better-auth/oauth-provider para a versão 1.6.11 ou posterior. Atualize o better-auth para a versão 1.6.0 ou posterior. Como mitigação temporária, não solicite o escopo offline access para evitar a emissão de tokens de atualização. Como mitigação temporária, defina refreshTokenExpiresIn para um valor muito baixo (ex: 60 segundos) para limitar a persistência de famílias de tokens bifurcadas. Como mitigação temporária, configure o adaptador de banco de dados para executar o manipulador de atualização OAuth sob isolamento serializável ou use um bloqueio pessimista ao nível de linha (SELECT ... FOR UPDATE) na tabela oauthRefreshToken. Adicione manualmente uma restrição de unicidade à coluna oauthRefreshToken.token no banco de dados para fornecer defesa em profundidade.

Exploit

Correção

Race Condition

Insufficient Session Expiration

Time Of Check To Time Of Use

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

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-53517
GHSA-392P-2Q2V-4372

Produtos afetados

@Better-Auth/Oauth-Provider
Better Auth