PT-2026-83502 · Npm · Qs
CVSS v4.0
6.3
Média
| Vetor | AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N |
Nome do Software Vulnerável e Versões Afetadas
qs versões 2.2.5 até 6.15.3
Description
A função
qs.stringify pode lançar um TypeError ao serializar um objeto que contenha uma propriedade constructor com um membro isBuffer verdadeiro, porém não chamável. Isso ocorre porque a função utils.isBuffer() realiza duck-typing ao invocar obj.constructor.isBuffer(obj) sem verificar previamente se isBuffer é realmente uma função. Um invasor pode disparar isso fornecendo entradas especialmente manipuladas via qs.parse (usando plainObjects: true ou allowPrototypes: true) ou através de JSON.parse. Em ambientes como Express 4 ou body-parser com extended: true, tais entradas podem ser passadas diretamente via req.query ou req.body. Isso pode levar a uma negação de serviço onde a requisição afetada retorna um erro 500 ou, em casos onde a chamada ocorre fora de um limite de erro (como em um manipulador async), pode causar a interrupção de todo o processo.Recommendations
Atualize o qs para a versão 6.16.0 ou posterior.
Exploit
Correção
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Qs