
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-2391 is an arrayLimit bypass vulnerability in the qs npm package that allows denial-of-service via memory exhaustion when the comma: true option is enabled. It affects qs versions >= 6.7.0 and <= 6.14.1 for Node.js. The vulnerability was disclosed and published on February 12, 2026, with a patch released in version 6.14.2. The GitHub Advisory Database rates it Low severity with a CVSS v3.1 score of 3.7 (AV:N/AC:H/PR:N/UI:N), while Feedly's estimate assigns a CVSS v3.1 score of 7.5 (High) based on a lower attack complexity assessment (GitHub Advisory, qs Security Advisory).
The root cause is improper input validation (CWE-20) in lib/parse.js of the qs library. When comma: true is configured, the parseArrayValue function calls val.split(',') and immediately returns the resulting array before the arrayLimit check (default: 20) or throwOnLimitExceeded guard is evaluated — meaning those safety controls are entirely bypassed for comma-parsed values. An attacker can craft a single query parameter containing millions of commas (e.g., ?param=,,,,,,,,...), causing the server to allocate a massive array in memory with no limit enforcement. This is analogous to the bracket notation bypass fixed in GHSA-6rw7-vpxm-498p (CVE-2025-15284), which addressed the same class of issue for a[]= notation in v6.14.1. A public proof-of-concept is included in the advisory itself (GitHub Advisory, Fix Commit).
Successful exploitation results in a Denial of Service (DoS) condition through server-side memory exhaustion. There is no confidentiality or integrity impact — the vulnerability is limited to availability. Applications that use qs with comma: true and expose query string parsing to untrusted network input are at risk of becoming unresponsive or crashing due to excessive memory allocation triggered by a single malformed request (GitHub Advisory, qs Security Advisory).
A proof-of-concept is publicly available within the official security advisory itself, demonstrating that a simple Node.js script using qs.parse() with comma: true can bypass the arrayLimit and throwOnLimitExceeded controls (qs Security Advisory). There is no evidence of in-the-wild exploitation or threat actor attribution at this time. The EPSS score is approximately 0.049% (16th percentile), indicating a low probability of exploitation in the near term. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog.
qs library (versions 6.7.0–6.14.1) with the comma: true option enabled in its query string parsing configuration.GET /?param= followed by millions of comma characters (,,,,,...).qs with comma: true. No authentication is required.qs parser calls val.split(',') on the parameter value, creating an array with millions of elements before any limit check occurs, causing the server process to allocate excessive memory.param=%2C%2C%2C... or param=,,,,...); high-volume requests to query-string-parsing endpoints from a single source IP./var/log/syslog or dmesg) attributed to the Node.js application process.The primary remediation is to upgrade the qs npm package to version 6.14.2 or later, which enforces arrayLimit on comma-parsed values by checking the split array length before returning it (Fix Commit, GitHub Advisory). As a temporary workaround, disable the comma: true option in qs configuration if it is not required by the application. Organizations running affected IBM products (including IBM API Connect, IBM Maximo Application Suite, IBM Cloud Pak for Automation, IBM watsonx Orchestrate, IBM Guardium Data Security Center, and others) should apply the relevant IBM security bulletins (IBM Advisory).
The vulnerability was reported by security researcher SharokhAtaie and coordinated by ljharb (the qs maintainer), who published the advisory and fix on February 12, 2026 (qs Security Advisory). IBM issued multiple security bulletins across its product portfolio acknowledging the impact of CVE-2026-2391 on products including IBM API Connect, IBM Maximo Application Suite, IBM Cloud Pak for Automation, and others (IBM Advisory). A community technical write-up titled "Death by a Thousand Commas" was published on dev.to, and the vulnerability received coverage in weekly threat landscape digests, reflecting moderate community interest given its DoS-only impact and non-default configuration requirement.
Fix availability across major Linux distributions and their releases.
bionic (esm-apps)
node-qs
devel
node-qs
focal (esm-apps)
node-qs
jammy
node-qs
jammy (esm-apps)
node-qs
noble
node-qs
noble (esm-apps)
node-qs
resolute
node-qs
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."