PT-2026-41393

CVE-2026-45364

·

Publicado

2026-05-15

·

Atualizado

2026-07-21

Descrição por

CVSS 3.1
7.3
Alta
MétricasAV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Nome do Software Vulnerável e Versões Afetadas Better Auth versões anteriores a 1.4.17 Better Auth versões anteriores a 1.5.0-beta.9
Description O limitador de taxa (rate limiter) HTTP no Better Auth identifica requisições com base no endereço IP textual exato encontrado no cabeçalho x-forwarded-for ou em outros cabeçalhos de IP configurados. Esta implementação permite que clientes IPv6 com uma alocação /64 alternem entre 2^64 endereços de origem distintos, contornando efetivamente os limites de taxa em endpoints como '/sign-in/email', '/sign-up/email' e '/forget-password'. Além disso, um único cliente pode burlar o limitador variando a codificação textual de um endereço IPv6 (por exemplo, usando letras maiúsculas, compressão ou formatos mapeados para IPv4) para gerar múltiplas chaves distintas. Este problema ocorre porque a função getIp() retorna o valor do IP literalmente e a função onRequestRateLimit() constrói as chaves via concatenação simples de strings. Este bypass permite tentativas de autenticação ilimitadas, facilitando ataques de credential stuffing, força bruta e enumeração de contas.
Recommendations Para versões anteriores a 1.4.17, atualize para a versão 1.4.17 ou posterior. Para versões anteriores a 1.5.0-beta.9, atualize para a versão 1.5.0-beta.9 ou posterior. Como alternativa para a versão 1.4.16, defina advanced.ipAddress.ipv6Subnet: 64 na configuração. Para versões anteriores a 1.4.16, configure o comprimento do prefixo IPv6 para /64 (ou superior) na política de limite de taxa do CDN, WAF ou balanceador de carga upstream. Como mitigação parcial para qualquer versão, restrinja a janela de customRules para os endpoints de login, cadastro e redefinição de senha.
Explorabilidade
Exploit
Correção
Impactos
Fornecedores
Produtos afetados
Identificadores relacionados
GHSA-P6V2-XCPG-H6XW
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾