Unknown · Better Auth · CVE-2025-61928
**Nome do Software Vulnerável e Versões Afetadas**
Versões do Better Auth anteriores à 1.3.26
**Descrição**
O Better Auth é uma biblioteca de autenticação e autorização para TypeScript. Um bypass de autenticação crítico permite que atacantes não autenticados criem ou modifiquem chaves de API para qualquer usuário. Isso é conseguido ao enviar uma requisição para a rota `/api/auth/api-key/create` com um ID de usuário no corpo da requisição. A lógica da aplicação trata incorretamente a ausência de uma sessão, permitindo que o `userId` controlado pelo atacante no corpo da requisição seja usado para criar ou modificar chaves de API. Especificamente, o código `session?.user ?? (authRequired ? null : { id: ctx.body.userId })` define o objeto de usuário com base no `userId` no corpo da requisição quando não existe sessão. Isso contorna as verificações de autenticação e permite que o atacante gere chaves de API para qualquer usuário, potencialmente comprometendo dados do usuário e a funcionalidade da aplicação. O mesmo problema existe no endpoint de atualização. Estima-se que mais de 300.000 projetos baixem esta biblioteca semanalmente, potencialmente tornando um grande número de aplicações vulneráveis.
**Endpoints da API:**
`/api/auth/api-key/create`
**Parâmetros ou Variáveis Vulneráveis:**
`userId`, `ctx.body`
**Recomendações**
Atualize o Better Auth para a versão 1.3.26 ou posterior.