PT-2026-38307 · Npm · Fast-Jwt
CVE-2026-44351
·
Publicado
2026-05-06
·
Atualizado
2026-05-13
CVSS v3.1
9.1
Crítica
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
Nome do Software Vulnerável e Versões Afetadas
fast-jwt versões anteriores a 6.2.4
Descrição
Existe uma falha de bypass de autenticação no fluxo de resolução de chaves assíncronas. Quando o resolvedor de chaves de uma aplicação retorna uma string vazia (
'') ou um Buffer de comprimento zero, o software converte isso em um Buffer de comprimento zero e atribui a família de algoritmos HMAC (HS256, HS384, HS512) como os algoritmos permitidos. Isso permite que um invasor não autenticado forje JSON Web Tokens (JWTs) arbitrários assinando-os com uma string vazia. Se o callback assíncrono do verificador retornar um valor vazio (um padrão comum em fallbacks do tipo JWKS), o token forjado é aceito como autêntico, permitindo que o invasor assuma qualquer identidade ou nível de privilégio manipulando claims como sub, admin ou scopes.Detalhes técnicos incluem:
- Função Vulnerável:
prepareKeyOrSecret()não verifica o comprimento da chave antes de criar uma chave secreta. - Fluxo Vulnerável: O caminho do resolvedor de chaves assíncrono em
src/verifier.jspermite que strings vazias prossigam para a verificação de assinatura.
Recomendações
Atualize para a versão 6.2.4 do fast-jwt.
Como medida paliativa temporária, garanta que a função do resolvedor de chaves assíncrono não retorne uma string vazia ou um
Buffer de comprimento zero quando uma chave não for encontrada; em vez disso, deve retornar null ou undefined para disparar um erro de chave ausente.Exploit
Correção
Inadequate Encryption Strength
Improper Authentication
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Fast-Jwt