Fast-Jwt · Fast-Jwt · CVE-2026-35041
Nome do Software Vulnerável e Versões Afetadas: fast-jwt versões 5.0.0 até 6.2.0
Descrição: fast-jwt é suscetível a uma condição de negação de serviço quando a opção de verificação `allowedAud` é configurada usando uma expressão regular. Como a declaração `aud` é controlada pelo atacante e avaliada em relação à `RegExp` fornecida, um JWT criado pode desencadear um retrocesso catastrófico no mecanismo de expressão regular JavaScript, levando a um consumo significativo de CPU durante a verificação. Isso pode afetar gateways de API, middleware de autenticação, comunicação entre serviços e pipelines de validação de tokens OAuth / OIDC. A vulnerabilidade ocorre com um JWT assinado validamente, tornando-o explorável em contextos autenticados. O problema se deve à biblioteca permitir expressões regulares na validação de declarações e à capacidade do atacante de controlar a declaração `aud`, resultando em um crescimento exponencial do tempo de verificação à medida que o comprimento da entrada aumenta. Isso pode bloquear threads do loop de eventos Node.js, degradar a taxa de transferência da API, causar falhas em cascata de serviços, aumentar os custos de execução sem servidor e saturar a infraestrutura de autenticação.
Recomendações: Para as versões 5.0.0 até 6.2.0, evite usar expressões regulares nas opções `allowedAud`, `allowedIss`, `allowedSub`, `allowedJti` ou `allowedNonce`. Se expressões regulares forem necessárias, certifique-se de que sejam seguras e não contenham quantificadores aninhados que possam levar a um retrocesso catastrófico.