CVE-2026-44351
fast-jwt: Segredo HMAC vazio aceito via resolvedor de chave assíncrono - bypass de autenticação JWT
- Publicado
- 13 de mai. de 2026
- Atualizado
- 14 de mai. de 2026
- Atribuindo CNA
- GitHub_M
- Evidência observada
- 15 de set. de 2026
CVSS primário
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:NBaixo · próximos 30 dias
- Percentil
- 15,0%
- Data do modelo
- 21 de set. de 2026
EPSS é uma estimativa estatística, não uma certeza ou uma medida de impacto. Combine-o com CVSS, status KEV, exposição e seu ambiente.
Resumo
fast-jwt fornece uma implementação rápida de JSON Web Token (JWT). Antes da versão 6.2.4, uma vulnerabilidade crítica de bypass de autenticação no fluxo de resolução de chaves assíncrono do fast-jwt permite que qualquer atacante não autenticado forje JWTs arbitrários que são aceitos como autênticos. Quando o resolvedor de chaves da aplicação retorna uma string vazia (''), por exemplo, através do fallback comum no estilo JWKS keys[decoded.header.kid] || '', o fast-jwt converte-a num Buffer de comprimento zero, entrega-o a crypto.createSecretKey, deriva allowedAlgorithms = ['HS256','HS384','HS512'] a partir dele, e depois verifica a assinatura do token contra um HMAC de chave vazia. O atacante simplesmente calcula HMAC-SHA256(key='', input='${header}.${payload}'), que o Node aceita sem reclamar — e o verificador retorna o payload escolhido pelo atacante (sub, admin, scopes, etc.) como autêntico. Esta vulnerabilidade está corrigida na versão 6.2.4.
Fontes
1Proof-of-concept para CVE-2026-44351, um bypass de autenticação no fast-jwt <6.2.4 onde uma chave HMAC vazia permite que atacantes forjem JWTs arbitrários aceitos como válidos.
Uso responsável
Use informações de vulnerabilidade apenas em sistemas que você possui ou está autorizado a testar. O Kitploit vincula-se a metadados de pesquisa pública e não armazena código de exploração ou cargas maliciosas.