PT-2025-53805 · Qs+2 · Qs+2

Samipmainali

·

Publicado

2025-01-01

·

Atualizado

2026-06-04

·

CVE-2025-15284

CVSS v2.0

7.8

Alta

VetorAV:N/AC:L/Au:N/C:N/I:N/A:C
Nome do Software Vulnerável e Versões Afetadas Versões do qs anteriores à 6.14.1
Descrição Existe uma falha na biblioteca qs (módulos de parse) onde a opção arrayLimit não aplica corretamente os limites ao usar notação de colchetes em query strings, levando a uma potencial Negação de Serviço (DoS) HTTP. A opção arrayLimit valida apenas a notação indexada (ex.: a[0]=1), mas contorna a validação para notação de colchetes (ex.: a[]=1). Isso permite que atacantes esgotem a memória do servidor enviando solicitações com um grande número de elementos de array em notação de colchetes. O código vulnerável está localizado em lib/parse.js, linhas 159-162, onde utils.combine([], leaf) é usado sem verificar o arrayLimit. Um atacante pode explorar isso enviando uma requisição HTTP manipulada para um endpoint de API como /api/search com uma query string contendo numerosos parâmetros usando notação de colchetes, como filters[]=x&filters[]=x&...&filters[]=x. A aplicação então analisa essa query string usando qs.parse() com um arrayLimit especificado, mas a biblioteca falha em aplicar o limite, resultando em consumo excessivo de memória. O parâmetro vulnerável é a própria query string, especificamente os valores associados a parâmetros de array como filters.
Recomendações Atualize o qs para a versão 6.14.1 ou posterior.

Correção

DoS

Memory Leak

RCE

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

ALSA-2026:18480
ALSA-2026:18868
AZL-73316
AZL-73319
AZL-73353
AZL-73359
BDU:2026-00332
CVE-2025-15284
GHSA-6RW7-VPXM-498P
RHSA-2026:18868

Produtos afetados

Debian
Rocky Linux
Qs