Skip to content
Fencer Vulns
low 3.7

CVE-2025-15284 json

arrayLimit bypass in bracket notation allows DoS via memory exhaustion

published 2025-12-29 10 mo ago modified 2026-10-14 25 d ago also GHSA-6rw7-vpxm-498p , EUVD-2025-205660

cvss
3.7
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.4%
EPSS 0.4% chance of exploitation in 30 days, percentile 39%
public exploits
0
none known

Summary

Improper Input Validation vulnerability in qs (parse modules) allows HTTP DoS.This issue affects qs: < 6.14.1.

Summary

The arrayLimit option in qs did not enforce limits for bracket notation (a[]=1&a[]=2), only for indexed notation (a[0]=1). This is a consistency bug; arrayLimit should apply uniformly across all array notations.

Note: The default parameterLimit of 1000 effectively mitigates the DoS scenario originally described. With default options, bracket notation cannot produce arrays larger than parameterLimit regardless of arrayLimit, because each a[]=valueconsumes one parameter slot. The severity has been reduced accordingly.

Details

The arrayLimit option only checked limits for indexed notation (a[0]=1&a[1]=2) but did not enforce it for bracket notation (a[]=1&a[]=2).

Vulnerable code (lib/parse.js:159-162):

if (root === '[]' && options.parseArrays) { obj = utils.combine([], leaf); // No arrayLimit check }

Working code (lib/parse.js:175):

else if (index <= options.arrayLimit) { // Limit checked here obj = []; obj[index] = leaf; }

The bracket notation handler at line 159 uses utils.combine([], leaf) without validating against options.arrayLimit, while indexed notation at line 175 checks index <= options.arrayLimit before creating arrays.

PoC

const qs = require('qs'); const result = qs.parse('a[]=1&a[]=2&a[]=3&a[]=4&a[]=5&a[]=6', { arrayLimit: 5 }); console.log(result.a.length); // Output: 6 (should be max 5)

Note on parameterLimit interaction: The original advisory's "DoS demonstration" claimed a length of 10,000, but parameterLimit (default: 1000) caps parsing to 1,000 parameters. With default options, the actual output is 1,000, not 10,000.

Impact

Consistency bug in arrayLimit enforcement. With default parameterLimit, the practical DoS risk is negligible since parameterLimit already caps the total number of parsed parameters (and thus array elements from bracket notation). The risk increases only when parameterLimit is explicitly set to a very high value.

Patch / fix

  • npm qs 6.14.1
  • qs_project qs 6.14.1
  • node-qs Debian 14 6.14.1+ds+~6.14.0-1

debian advisories DEBIAN-CVE-2025-15284

  • linux-sgx RHEL 9 2.26-7.el9
  • sgx-mpa RHEL 9 2.26-7.el9
  • tdx-qgs RHEL 9 2.26-7.el9
  • sgx-libs RHEL 9 2.26-7.el9
  • sgx-pccs RHEL 9 2.26-7.el9
  • sgx-common RHEL 9 2.26-7.el9
  • sgx-pccs-admin RHEL 9 2.26-7.el9
  • sgx-pckid-tool RHEL 9 2.26-7.el9

red hat advisories RHSA-2026:33371RHSA-2026:18868RHSA-2026:18480

  • sgx-mpa AlmaLinux 10 2.26-7.el10
  • tdx-qgs AlmaLinux 10 2.26-7.el10
  • sgx-libs AlmaLinux 10 2.26-7.el10
  • sgx-pccs AlmaLinux 10 2.26-7.el10
  • sgx-common AlmaLinux 10 2.26-7.el10
  • sgx-pccs-admin AlmaLinux 10 2.26-7.el10
  • sgx-pckid-tool AlmaLinux 10 2.26-7.el10
  • sgx-mpa AlmaLinux 9 2.26-7.el9

almalinux advisories ALSA-2026:18480ALSA-2026:18868

  • linux-sgx Rocky Linux 10 2.26-7.el10
  • linux-sgx Rocky Linux 9 2.26-7.el9

rocky linux advisories RLSA-2026:18480RLSA-2026:18868

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2025-15284 updated cvss 7.5

qs: qs: Denial of Service via improper input validation in array parsing

  • Red Hat Logging Subsystem for Red Hat OpenShift openshift-logging/vector-rhel9, openshift-logging/fluentd-rhel9, openshift-logging/kibana6-rhel8, openshift-logging/eventrouter-rhel9, openshift-logging/elasticsearch6-rhel9, openshift-logging/logging-curator5-rhel9, +7 more
    affected: workaround, no fix planned “Will not fix”
  • Red Hat Migration Toolkit for Applications 8 mta/mta-ui-rhel9
    affected: workaround, no fix available
  • Red Hat Migration Toolkit for Virtualization mtv-candidate/mtv-console-plugin-rhel9, migration-toolkit-virtualization/mtv-console-plugin-rhel9
    affected: workaround, no fix available, no fix planned “Will not fix”
  • Red Hat Node HealthCheck Operator workload-availability/node-remediation-console-rhel8
    affected: workaround, no fix planned “Will not fix”
  • Red Hat OpenShift Lightspeed openshift-lightspeed/lightspeed-console-plugin-rhel9, openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9
    affected: workaround, no fix available
  • Red Hat OpenShift Pipelines openshift-pipelines/pipelines-hub-ui-rhel9, openshift-pipelines/pipelines-hub-api-rhel8, openshift-pipelines/pipelines-hub-api-rhel9, openshift-pipelines/pipelines-hub-db-migration-rhel8, openshift-pipelines/pipelines-hub-db-migration-rhel9 Red Hat OpenShift Serverless openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9, openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9, openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9, openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9, openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9, openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9, +3 more Red Hat 3scale API Management Platform 2 3scale-amp21/system, 3scale-amp22/system, 3scale-amp24/system, 3scale-amp25/system, 3scale-amp26/system, 3scale-amp2/system-rhel7, +2 more
    affected: workaround, no fix available, no fix planned “Will not fix”
  • Red Hat Advanced Cluster Management for Kubernetes 2 rhacm2/acm-grafana-rhel9
    affected: workaround, no fix available
  • Red Hat Advanced Cluster Security 4 advanced-cluster-security/rhacs-roxctl-rhel8, advanced-cluster-security/rhacs-rhel8-operator, advanced-cluster-security/rhacs-operator-bundle, advanced-cluster-security/rhacs-scanner-v4-rhel8, advanced-cluster-security/rhacs-scanner-v4-db-rhel8 Red Hat Ansible Automation Platform 2 ansible-automation-platform-24/lightspeed-rhel8
    affected: workaround, no fix planned “Will not fix”
show 24 more
  • Red Hat build of Apicurio Registry 2 io.apicurio-apicurio-registry
    affected: workaround, no fix available
  • Red Hat build of OptaPlanner 8 org.optaweb.vehiclerouting-optaweb-vehicle-routing
    affected: workaround, no fix planned “Will not fix”
  • Red Hat Ceph Storage 8 rhceph/grafana-rhel9 Red Hat Connectivity Link 1 rhcl-1/rhcl-console-plugin-rhel9 Red Hat Data Grid 8 org.infinispan-infinispan-console Red Hat Edge Manager preview rhem/flightctl-ui-ocp-rhel9
    affected: workaround, no fix available
  • Red Hat Enterprise Linux AI (RHEL AI) 3 rhelai3/bootc-cuda-rhel9, rhelai3/disk-image-cuda-rhel9 Red Hat Fuse 7 io.hawt-project, io.apicurio-apicurito, io.hawt-hawtio-online, io.syndesis-syndesis-parent
    affected: workaround, no fix planned “Will not fix”
  • Red Hat OpenShift AI (RHOAI) rhoai/odh-dashboard-rhel8
    affected: workaround, no fix available
  • Red Hat OpenShift Container Platform 4 openshift4/ose-console, openshift4/ose-console-rhel9, openshift4/ose-networking-console-plugin-rhel9
    affected: workaround, no fix available, no fix planned “Will not fix”
  • Red Hat OpenShift Dev Spaces devspaces-tech-preview/idea-rhel9 Red Hat OpenShift GitOps openshift-gitops-1/dex-rhel8, openshift-gitops-1/argocd-rhel8, openshift-gitops-1/argocd-rhel9, openshift-gitops-1/gitops-rhel8, openshift-gitops-1/must-gather-rhel8, openshift-gitops-1/argo-rollouts-rhel8, +4 more
    affected: workaround, no fix planned “Will not fix”
  • Red Hat Satellite 6 satellite/iop-remediations-rhel9, satellite/iop-advisor-frontend-rhel9, satellite/iop-vulnerability-frontend-rhel9, satellite/iop-host-inventory-frontend-rhel9
    affected: workaround, no fix available
  • Red Hat streams for Apache Kafka 3 com.github.streamshub-console
    affected: workaround, no fix planned “Will not fix”
  • Red Hat Cryostat 4 on RHEL 9 cryostat/cryostat-openshift-console-plugin-rhel9 4.1.0-16
    fixed: vendor fix RHSA-2026:0761
  • Red Hat Multicluster Global Hub 1.4.9 multicluster-globalhub 1770126537
    fixed: vendor fix RHSA-2026:2500
  • Red Hat Multicluster Global Hub 1.5.8 multicluster-globalhub 1770109405
    fixed: vendor fix RHSA-2026:2256
  • Red Hat Network Observability (NETOBSERV) 1.11.0 network-observability 1771227610, network-observability 1771227650
    fixed: vendor fix RHSA-2026:2900
  • Red Hat Advanced Cluster Security 4.8 advanced-cluster-security 1769615659
    fixed: vendor fix RHSA-2026:1517
  • Red Hat Advanced Cluster Security 4.9 advanced-cluster-security 1770074713, advanced-cluster-security 1770250889
    fixed: vendor fix RHSA-2026:2350
  • Red Hat Ansible Automation Platform 2.6 ansible-automation-platform-26 1768889939
    fixed: vendor fix RHSA-2026:1596
  • Red Hat Developer Hub 1.7 rhdh 1.7.4-1767715042
    fixed: vendor fix RHSA-2026:0261
  • Red Hat Developer Hub 1.8 rhdh 1768247401
    fixed: vendor fix RHSA-2026:0531
  • Red Hat Discovery 2 discovery 1767904573
    fixed: vendor fix RHSA-2026:0414
  • Red Hat Enterprise Linux AppStream (v. 9) sgx-mpa 2.26-7.el9, tdx-qgs 2.26-7.el9, sgx-libs 2.26-7.el9, sgx-pccs 2.26-7.el9, linux-sgx 2.26-7.el9, sgx-common 2.26-7.el9, +2 more
    fixed: vendor fix RHSA-2026:18868
  • Red Hat Enterprise Linux AppStream (v. 10) sgx-mpa 2.26-7.el10, tdx-qgs 2.26-7.el10, sgx-libs 2.26-7.el10, sgx-pccs 2.26-7.el10, linux-sgx 2.26-7.el10, sgx-common 2.26-7.el10, +2 more
    fixed: vendor fix RHSA-2026:18480
  • Red Hat JBoss Enterprise Application Platform 7.3 EUS for RHEL 7 Server eap7-wildfly 7.3.18-3.GA_redhat_00001.1.el7eap, eap7-wildfly-modules 7.3.18-3.GA_redhat_00001.1.el7eap, eap7-wildfly-javadocs 7.3.18-3.GA_redhat_00001.1.el7eap, eap7-wildfly-java-jdk8 7.3.18-3.GA_redhat_00001.1.el7eap, eap7-wildfly-java-jdk11 7.3.18-3.GA_redhat_00001.1.el7eap
    fixed: vendor fix RHSA-2026:33371
  • Red Hat Migration Toolkit 1.8 rhmtc/openshift-migration-ui-rhel8 1783690532
    fixed: vendor fix RHSA-2026:41928
  • Red Hat OpenShift AI 3.3 rhoai 1769162595, rhoai 1771502843, rhoai 1771502844, rhoai 1771502845, rhoai 1771502863, rhoai 1771502869, +14 more
    fixed: vendor fix RHSA-2026:19712

23 more fixed, 62 more not affected in the full advisory

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

cisa ICSA-26-071-03 updated cvss 7.5

Siemens SIDIS Prime

  • Siemens SIDIS Prime < 4.0.800
    affected: fixed in V4.0.800

Facts from CISA's republication of the vendor's own advisory (CSAF); the linked advisory is the authoritative source. CISA notification · csaf

CISA SSVC

Exploitation
none
Automatable
yes
Technical impact
partial
Assessed
10 mo ago

Exploit prediction

0.45% chance of exploitation in the next 30 days, higher than 39% of all scored CVEs (FIRST EPSS, 2026-11-08).

Exploits and checks

  • github.com https://github.com/ljharb/qs/security/advisories/GHSA-6rw7-vpxm-498p referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
CNA 4.0 6.3 CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:L
CNA 3.1 3.7 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
CNA 4.0 6.3 CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:L/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
GitHub 3.1 3.7 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L

Affected packages

ecosystem package affected fixed in
npm qs
<6.14.1
6.14.1

Classification

Weakness
  • CWE-20 Improper Input Validation

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.