Lookup for vulnerable packages by Package URL.

Purlpkg:npm/qs@2.2.4
Typenpm
Namespace
Nameqs
Version2.2.4
Qualifiers
Subpath
Is_vulnerabletrue
Next_non_vulnerable_version6.14.2
Latest_non_vulnerable_version6.14.2
Affected_by_vulnerabilities
0
url VCID-9ykq-nq81-4fcp
vulnerability_id VCID-9ykq-nq81-4fcp
summary
qs's arrayLimit bypass in its bracket notation allows DoS via memory exhaustion
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[]=value` consumes one parameter slot. The severity has been reduced accordingly.
references
0
reference_url https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2025-15284.json
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
url https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2025-15284.json
1
reference_url https://api.first.org/data/v1/epss?cve=CVE-2025-15284
reference_id
reference_type
scores
0
value 0.00061
scoring_system epss
scoring_elements 0.19006
published_at 2026-04-24T12:55:00Z
1
value 0.00061
scoring_system epss
scoring_elements 0.19113
published_at 2026-04-21T12:55:00Z
2
value 0.00061
scoring_system epss
scoring_elements 0.19105
published_at 2026-04-18T12:55:00Z
3
value 0.00061
scoring_system epss
scoring_elements 0.19095
published_at 2026-04-16T12:55:00Z
4
value 0.00061
scoring_system epss
scoring_elements 0.19137
published_at 2026-04-13T12:55:00Z
5
value 0.00061
scoring_system epss
scoring_elements 0.19331
published_at 2026-04-02T12:55:00Z
6
value 0.00061
scoring_system epss
scoring_elements 0.19238
published_at 2026-04-11T12:55:00Z
7
value 0.00061
scoring_system epss
scoring_elements 0.19232
published_at 2026-04-09T12:55:00Z
8
value 0.00061
scoring_system epss
scoring_elements 0.19179
published_at 2026-04-08T12:55:00Z
9
value 0.00061
scoring_system epss
scoring_elements 0.19099
published_at 2026-04-07T12:55:00Z
10
value 0.00061
scoring_system epss
scoring_elements 0.19383
published_at 2026-04-04T12:55:00Z
11
value 0.00061
scoring_system epss
scoring_elements 0.19191
published_at 2026-04-12T12:55:00Z
url https://api.first.org/data/v1/epss?cve=CVE-2025-15284
2
reference_url https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-15284
reference_id
reference_type
scores
url https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-15284
3
reference_url https://github.com/ljharb/qs
reference_id
reference_type
scores
0
value 3.7
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value 6.3
scoring_system cvssv4
scoring_elements 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
2
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs
4
reference_url https://github.com/ljharb/qs/commit/3086902ecf7f088d0d1803887643ac6c03d415b9
reference_id
reference_type
scores
0
value 3.7
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value 6.3
scoring_system cvssv4
scoring_elements 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
2
value MODERATE
scoring_system generic_textual
scoring_elements
3
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:N/A:Y/T:P/P:M/B:A/M:M/D:T/2025-12-30T14:55:26Z/
url https://github.com/ljharb/qs/commit/3086902ecf7f088d0d1803887643ac6c03d415b9
5
reference_url https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1124315
reference_id 1124315
reference_type
scores
url https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1124315
6
reference_url https://bugzilla.redhat.com/show_bug.cgi?id=2425946
reference_id 2425946
reference_type
scores
url https://bugzilla.redhat.com/show_bug.cgi?id=2425946
7
reference_url https://nvd.nist.gov/vuln/detail/CVE-2025-15284
reference_id CVE-2025-15284
reference_type
scores
0
value 3.7
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value 6.3
scoring_system cvssv4
scoring_elements 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
2
value MODERATE
scoring_system generic_textual
scoring_elements
url https://nvd.nist.gov/vuln/detail/CVE-2025-15284
8
reference_url https://github.com/advisories/GHSA-6rw7-vpxm-498p
reference_id GHSA-6rw7-vpxm-498p
reference_type
scores
0
value MODERATE
scoring_system cvssv3.1_qr
scoring_elements
url https://github.com/advisories/GHSA-6rw7-vpxm-498p
9
reference_url https://github.com/ljharb/qs/security/advisories/GHSA-6rw7-vpxm-498p
reference_id GHSA-6rw7-vpxm-498p
reference_type
scores
0
value 3.7
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value MODERATE
scoring_system cvssv3.1_qr
scoring_elements
2
value 6.3
scoring_system cvssv4
scoring_elements 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
3
value MODERATE
scoring_system generic_textual
scoring_elements
4
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:N/A:Y/T:P/P:M/B:A/M:M/D:T/2025-12-30T14:55:26Z/
url https://github.com/ljharb/qs/security/advisories/GHSA-6rw7-vpxm-498p
10
reference_url https://access.redhat.com/errata/RHSA-2026:0261
reference_id RHSA-2026:0261
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:0261
11
reference_url https://access.redhat.com/errata/RHSA-2026:0414
reference_id RHSA-2026:0414
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:0414
12
reference_url https://access.redhat.com/errata/RHSA-2026:0531
reference_id RHSA-2026:0531
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:0531
13
reference_url https://access.redhat.com/errata/RHSA-2026:0761
reference_id RHSA-2026:0761
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:0761
14
reference_url https://access.redhat.com/errata/RHSA-2026:1000
reference_id RHSA-2026:1000
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:1000
15
reference_url https://access.redhat.com/errata/RHSA-2026:1517
reference_id RHSA-2026:1517
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:1517
16
reference_url https://access.redhat.com/errata/RHSA-2026:1552
reference_id RHSA-2026:1552
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:1552
17
reference_url https://access.redhat.com/errata/RHSA-2026:1596
reference_id RHSA-2026:1596
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:1596
18
reference_url https://access.redhat.com/errata/RHSA-2026:1730
reference_id RHSA-2026:1730
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:1730
19
reference_url https://access.redhat.com/errata/RHSA-2026:1942
reference_id RHSA-2026:1942
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:1942
20
reference_url https://access.redhat.com/errata/RHSA-2026:2078
reference_id RHSA-2026:2078
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2078
21
reference_url https://access.redhat.com/errata/RHSA-2026:2129
reference_id RHSA-2026:2129
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2129
22
reference_url https://access.redhat.com/errata/RHSA-2026:2145
reference_id RHSA-2026:2145
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2145
23
reference_url https://access.redhat.com/errata/RHSA-2026:2147
reference_id RHSA-2026:2147
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2147
24
reference_url https://access.redhat.com/errata/RHSA-2026:2148
reference_id RHSA-2026:2148
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2148
25
reference_url https://access.redhat.com/errata/RHSA-2026:2149
reference_id RHSA-2026:2149
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2149
26
reference_url https://access.redhat.com/errata/RHSA-2026:2256
reference_id RHSA-2026:2256
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2256
27
reference_url https://access.redhat.com/errata/RHSA-2026:2350
reference_id RHSA-2026:2350
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2350
28
reference_url https://access.redhat.com/errata/RHSA-2026:2456
reference_id RHSA-2026:2456
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2456
29
reference_url https://access.redhat.com/errata/RHSA-2026:2500
reference_id RHSA-2026:2500
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2500
30
reference_url https://access.redhat.com/errata/RHSA-2026:2568
reference_id RHSA-2026:2568
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2568
31
reference_url https://access.redhat.com/errata/RHSA-2026:2672
reference_id RHSA-2026:2672
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2672
32
reference_url https://access.redhat.com/errata/RHSA-2026:2681
reference_id RHSA-2026:2681
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2681
33
reference_url https://access.redhat.com/errata/RHSA-2026:2762
reference_id RHSA-2026:2762
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2762
34
reference_url https://access.redhat.com/errata/RHSA-2026:2900
reference_id RHSA-2026:2900
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:2900
35
reference_url https://access.redhat.com/errata/RHSA-2026:3710
reference_id RHSA-2026:3710
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:3710
36
reference_url https://access.redhat.com/errata/RHSA-2026:3712
reference_id RHSA-2026:3712
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:3712
37
reference_url https://access.redhat.com/errata/RHSA-2026:3713
reference_id RHSA-2026:3713
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:3713
38
reference_url https://access.redhat.com/errata/RHSA-2026:3825
reference_id RHSA-2026:3825
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:3825
39
reference_url https://access.redhat.com/errata/RHSA-2026:4185
reference_id RHSA-2026:4185
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:4185
40
reference_url https://access.redhat.com/errata/RHSA-2026:4215
reference_id RHSA-2026:4215
reference_type
scores
url https://access.redhat.com/errata/RHSA-2026:4215
fixed_packages
0
url pkg:npm/qs@6.14.1
purl pkg:npm/qs@6.14.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-pxq3-b7gn-3yah
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.14.1
aliases CVE-2025-15284, GHSA-6rw7-vpxm-498p
risk_score 3.4
exploitability 0.5
weighted_severity 6.8
resource_url http://public2.vulnerablecode.io/vulnerabilities/VCID-9ykq-nq81-4fcp
1
url VCID-bcuh-2e2c-53gy
vulnerability_id VCID-bcuh-2e2c-53gy
summary
qs vulnerable to Prototype Pollution
qs before 6.10.3 allows attackers to cause a Node process hang because an `__ proto__` key can be used. In many typical web framework use cases, an unauthenticated remote attacker can place the attack payload in the query string of the URL that is used to visit the application, such as `a[__proto__]=b&a[__proto__]&a[length]=100000000`. The fix was backported to qs 6.9.7, 6.8.3, 6.7.3, 6.6.1, 6.5.3, 6.4.1, 6.3.3, and 6.2.4.
references
0
reference_url https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2022-24999.json
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
url https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2022-24999.json
1
reference_url https://api.first.org/data/v1/epss?cve=CVE-2022-24999
reference_id
reference_type
scores
0
value 0.01142
scoring_system epss
scoring_elements 0.78485
published_at 2026-04-24T12:55:00Z
1
value 0.01142
scoring_system epss
scoring_elements 0.78452
published_at 2026-04-21T12:55:00Z
2
value 0.01142
scoring_system epss
scoring_elements 0.78383
published_at 2026-04-02T12:55:00Z
3
value 0.01142
scoring_system epss
scoring_elements 0.78424
published_at 2026-04-08T12:55:00Z
4
value 0.01142
scoring_system epss
scoring_elements 0.78397
published_at 2026-04-07T12:55:00Z
5
value 0.01142
scoring_system epss
scoring_elements 0.78414
published_at 2026-04-04T12:55:00Z
6
value 0.01543
scoring_system epss
scoring_elements 0.8138
published_at 2026-04-13T12:55:00Z
7
value 0.01543
scoring_system epss
scoring_elements 0.81388
published_at 2026-04-12T12:55:00Z
8
value 0.01543
scoring_system epss
scoring_elements 0.814
published_at 2026-04-11T12:55:00Z
9
value 0.01543
scoring_system epss
scoring_elements 0.81379
published_at 2026-04-09T12:55:00Z
10
value 0.01543
scoring_system epss
scoring_elements 0.81417
published_at 2026-04-16T12:55:00Z
11
value 0.01543
scoring_system epss
scoring_elements 0.81418
published_at 2026-04-18T12:55:00Z
url https://api.first.org/data/v1/epss?cve=CVE-2022-24999
2
reference_url https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-24999
reference_id
reference_type
scores
url https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-24999
3
reference_url https://github.com/expressjs/express/releases/tag/4.17.3
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
2
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-04-29T13:56:22Z/
url https://github.com/expressjs/express/releases/tag/4.17.3
4
reference_url https://github.com/ljharb/qs
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs
5
reference_url https://github.com/ljharb/qs/commit/4310742efbd8c03f6495f07906b45213da0a32ec
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs/commit/4310742efbd8c03f6495f07906b45213da0a32ec
6
reference_url https://github.com/ljharb/qs/commit/727ef5d34605108acb3513f72d5435972ed15b68
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs/commit/727ef5d34605108acb3513f72d5435972ed15b68
7
reference_url https://github.com/ljharb/qs/commit/73205259936317b40f447c5cdb71c5b341848e1b
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs/commit/73205259936317b40f447c5cdb71c5b341848e1b
8
reference_url https://github.com/ljharb/qs/commit/8b4cc14cda94a5c89341b77e5fe435ec6c41be2d
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs/commit/8b4cc14cda94a5c89341b77e5fe435ec6c41be2d
9
reference_url https://github.com/ljharb/qs/commit/ba24e74dd17931f825adb52f5633e48293b584e1
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs/commit/ba24e74dd17931f825adb52f5633e48293b584e1
10
reference_url https://github.com/ljharb/qs/commit/e799ba57e573a30c14b67c1889c7c04d508b9105
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs/commit/e799ba57e573a30c14b67c1889c7c04d508b9105
11
reference_url https://github.com/ljharb/qs/commit/ed0f5dcbef4b168a8ae299d78b1e4a2e9b1baf1f
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs/commit/ed0f5dcbef4b168a8ae299d78b1e4a2e9b1baf1f
12
reference_url https://github.com/ljharb/qs/commit/f945393cfe442fe8c6e62b4156fd35452c0686ee
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs/commit/f945393cfe442fe8c6e62b4156fd35452c0686ee
13
reference_url https://github.com/ljharb/qs/commit/fc3682776670524a42e19709ec4a8138d0d7afda
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs/commit/fc3682776670524a42e19709ec4a8138d0d7afda
14
reference_url https://github.com/ljharb/qs/pull/428
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
2
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-04-29T13:56:22Z/
url https://github.com/ljharb/qs/pull/428
15
reference_url https://github.com/n8tz/CVE-2022-24999
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
2
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-04-29T13:56:22Z/
url https://github.com/n8tz/CVE-2022-24999
16
reference_url https://lists.debian.org/debian-lts-announce/2023/01/msg00039.html
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
2
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-04-29T13:56:22Z/
url https://lists.debian.org/debian-lts-announce/2023/01/msg00039.html
17
reference_url https://nvd.nist.gov/vuln/detail/CVE-2022-24999
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://nvd.nist.gov/vuln/detail/CVE-2022-24999
18
reference_url https://security.netapp.com/advisory/ntap-20230908-0005
reference_id
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value HIGH
scoring_system generic_textual
scoring_elements
url https://security.netapp.com/advisory/ntap-20230908-0005
19
reference_url https://bugzilla.redhat.com/show_bug.cgi?id=2150323
reference_id 2150323
reference_type
scores
url https://bugzilla.redhat.com/show_bug.cgi?id=2150323
20
reference_url https://github.com/advisories/GHSA-hrpp-h998-j3pp
reference_id GHSA-hrpp-h998-j3pp
reference_type
scores
0
value HIGH
scoring_system cvssv3.1_qr
scoring_elements
url https://github.com/advisories/GHSA-hrpp-h998-j3pp
21
reference_url https://security.netapp.com/advisory/ntap-20230908-0005/
reference_id ntap-20230908-0005
reference_type
scores
0
value 7.5
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
1
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-04-29T13:56:22Z/
url https://security.netapp.com/advisory/ntap-20230908-0005/
22
reference_url https://access.redhat.com/errata/RHSA-2023:0050
reference_id RHSA-2023:0050
reference_type
scores
url https://access.redhat.com/errata/RHSA-2023:0050
23
reference_url https://access.redhat.com/errata/RHSA-2023:0612
reference_id RHSA-2023:0612
reference_type
scores
url https://access.redhat.com/errata/RHSA-2023:0612
24
reference_url https://access.redhat.com/errata/RHSA-2023:0930
reference_id RHSA-2023:0930
reference_type
scores
url https://access.redhat.com/errata/RHSA-2023:0930
25
reference_url https://access.redhat.com/errata/RHSA-2023:0932
reference_id RHSA-2023:0932
reference_type
scores
url https://access.redhat.com/errata/RHSA-2023:0932
26
reference_url https://access.redhat.com/errata/RHSA-2023:0934
reference_id RHSA-2023:0934
reference_type
scores
url https://access.redhat.com/errata/RHSA-2023:0934
27
reference_url https://access.redhat.com/errata/RHSA-2023:1428
reference_id RHSA-2023:1428
reference_type
scores
url https://access.redhat.com/errata/RHSA-2023:1428
28
reference_url https://access.redhat.com/errata/RHSA-2023:1533
reference_id RHSA-2023:1533
reference_type
scores
url https://access.redhat.com/errata/RHSA-2023:1533
29
reference_url https://access.redhat.com/errata/RHSA-2023:1742
reference_id RHSA-2023:1742
reference_type
scores
url https://access.redhat.com/errata/RHSA-2023:1742
30
reference_url https://access.redhat.com/errata/RHSA-2023:3265
reference_id RHSA-2023:3265
reference_type
scores
url https://access.redhat.com/errata/RHSA-2023:3265
31
reference_url https://access.redhat.com/errata/RHSA-2023:3645
reference_id RHSA-2023:3645
reference_type
scores
url https://access.redhat.com/errata/RHSA-2023:3645
32
reference_url https://usn.ubuntu.com/7693-1/
reference_id USN-7693-1
reference_type
scores
url https://usn.ubuntu.com/7693-1/
fixed_packages
0
url pkg:npm/qs@6.2.4
purl pkg:npm/qs@6.2.4
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-9ykq-nq81-4fcp
1
vulnerability VCID-pxq3-b7gn-3yah
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.2.4
1
url pkg:npm/qs@6.3.3
purl pkg:npm/qs@6.3.3
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-9ykq-nq81-4fcp
1
vulnerability VCID-pxq3-b7gn-3yah
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.3.3
2
url pkg:npm/qs@6.4.1
purl pkg:npm/qs@6.4.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-9ykq-nq81-4fcp
1
vulnerability VCID-pxq3-b7gn-3yah
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.4.1
3
url pkg:npm/qs@6.5.3
purl pkg:npm/qs@6.5.3
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-9ykq-nq81-4fcp
1
vulnerability VCID-pxq3-b7gn-3yah
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.5.3
4
url pkg:npm/qs@6.6.1
purl pkg:npm/qs@6.6.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-9ykq-nq81-4fcp
1
vulnerability VCID-pxq3-b7gn-3yah
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.6.1
5
url pkg:npm/qs@6.7.3
purl pkg:npm/qs@6.7.3
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-9ykq-nq81-4fcp
1
vulnerability VCID-pxq3-b7gn-3yah
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.7.3
6
url pkg:npm/qs@6.8.3
purl pkg:npm/qs@6.8.3
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-9ykq-nq81-4fcp
1
vulnerability VCID-pxq3-b7gn-3yah
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.8.3
7
url pkg:npm/qs@6.9.7
purl pkg:npm/qs@6.9.7
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-9ykq-nq81-4fcp
1
vulnerability VCID-pxq3-b7gn-3yah
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.9.7
8
url pkg:npm/qs@6.10.3
purl pkg:npm/qs@6.10.3
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-9ykq-nq81-4fcp
1
vulnerability VCID-pxq3-b7gn-3yah
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.10.3
aliases CVE-2022-24999, GHSA-hrpp-h998-j3pp
risk_score 4.0
exploitability 0.5
weighted_severity 8.0
resource_url http://public2.vulnerablecode.io/vulnerabilities/VCID-bcuh-2e2c-53gy
2
url VCID-pxq3-b7gn-3yah
vulnerability_id VCID-pxq3-b7gn-3yah
summary
qs's arrayLimit bypass in comma parsing allows denial of service
### Summary
The `arrayLimit` option in qs does not enforce limits for comma-separated values when `comma: true` is enabled, allowing attackers to cause denial-of-service via memory exhaustion. This is a bypass of the array limit enforcement, similar to the bracket notation bypass addressed in GHSA-6rw7-vpxm-498p (CVE-2025-15284).

### Details
When the `comma` option is set to `true` (not the default, but configurable in applications), qs allows parsing comma-separated strings as arrays (e.g., `?param=a,b,c` becomes `['a', 'b', 'c']`). However, the limit check for `arrayLimit` (default: 20) and the optional throwOnLimitExceeded occur after the comma-handling logic in `parseArrayValue`, enabling a bypass. This permits creation of arbitrarily large arrays from a single parameter, leading to excessive memory allocation.

**Vulnerable code** (lib/parse.js: lines ~40-50):
```js
if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {
    return val.split(',');
}

if (options.throwOnLimitExceeded && currentArrayLength >= options.arrayLimit) {
    throw new RangeError('Array limit exceeded. Only ' + options.arrayLimit + ' element' + (options.arrayLimit === 1 ? '' : 's') + ' allowed in an array.');
}

return val;
```
The `split(',')` returns the array immediately, skipping the subsequent limit check. Downstream merging via `utils.combine` does not prevent allocation, even if it marks overflows for sparse arrays.This discrepancy allows attackers to send a single parameter with millions of commas (e.g., `?param=,,,,,,,,...`), allocating massive arrays in memory without triggering limits. It bypasses the intent of `arrayLimit`, which is enforced correctly for indexed (`a[0]=`) and bracket (`a[]=`) notations (the latter fixed in v6.14.1 per GHSA-6rw7-vpxm-498p).

### PoC
**Test 1 - Basic bypass:**
```
npm install qs
```

```js
const qs = require('qs');

const payload = 'a=' + ','.repeat(25);  // 26 elements after split (bypasses arrayLimit: 5)
const options = { comma: true, arrayLimit: 5, throwOnLimitExceeded: true };

try {
  const result = qs.parse(payload, options);
  console.log(result.a.length);  // Outputs: 26 (bypass successful)
} catch (e) {
  console.log('Limit enforced:', e.message);  // Not thrown
}
```
**Configuration:**
- `comma: true`
- `arrayLimit: 5`
- `throwOnLimitExceeded: true`

Expected: Throws "Array limit exceeded" error.
Actual: Parses successfully, creating an array of length 26.


### Impact
Denial of Service (DoS) via memory exhaustion.

### Suggested Fix
Move the `arrayLimit` check before the comma split in `parseArrayValue`, and enforce it on the resulting array length. Use `currentArrayLength` (already calculated upstream) for consistency with bracket notation fixes.

**Current code** (lib/parse.js: lines ~40-50):
```js
if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {
    return val.split(',');
}

if (options.throwOnLimitExceeded && currentArrayLength >= options.arrayLimit) {
    throw new RangeError('Array limit exceeded. Only ' + options.arrayLimit + ' element' + (options.arrayLimit === 1 ? '' : 's') + ' allowed in an array.');
}

return val;
```

**Fixed code:**
```js
if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {
    const splitArray = val.split(',');
    if (splitArray.length > options.arrayLimit - currentArrayLength) {  // Check against remaining limit
        if (options.throwOnLimitExceeded) {
            throw new RangeError('Array limit exceeded. Only ' + options.arrayLimit + ' element' + (options.arrayLimit === 1 ? '' : 's') + ' allowed in an array.');
        } else {
            // Optionally convert to object or truncate, per README
            return splitArray.slice(0, options.arrayLimit - currentArrayLength);
        }
    }
    return splitArray;
}

if (options.throwOnLimitExceeded && currentArrayLength >= options.arrayLimit) {
    throw new RangeError('Array limit exceeded. Only ' + options.arrayLimit + ' element' + (options.arrayLimit === 1 ? '' : 's') + ' allowed in an array.');
}

return val;
```
This aligns behavior with indexed and bracket notations, reuses `currentArrayLength`, and respects `throwOnLimitExceeded`. Update README to note the consistent enforcement.
references
0
reference_url https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2026-2391.json
reference_id
reference_type
scores
0
value 5.3
scoring_system cvssv3
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
url https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2026-2391.json
1
reference_url https://api.first.org/data/v1/epss?cve=CVE-2026-2391
reference_id
reference_type
scores
0
value 0.0005
scoring_system epss
scoring_elements 0.15525
published_at 2026-04-24T12:55:00Z
1
value 0.0005
scoring_system epss
scoring_elements 0.15484
published_at 2026-04-21T12:55:00Z
2
value 0.00058
scoring_system epss
scoring_elements 0.1831
published_at 2026-04-08T12:55:00Z
3
value 0.00058
scoring_system epss
scoring_elements 0.18221
published_at 2026-04-18T12:55:00Z
4
value 0.00058
scoring_system epss
scoring_elements 0.18208
published_at 2026-04-16T12:55:00Z
5
value 0.00058
scoring_system epss
scoring_elements 0.18462
published_at 2026-04-02T12:55:00Z
6
value 0.00058
scoring_system epss
scoring_elements 0.18264
published_at 2026-04-13T12:55:00Z
7
value 0.00058
scoring_system epss
scoring_elements 0.18316
published_at 2026-04-12T12:55:00Z
8
value 0.00058
scoring_system epss
scoring_elements 0.18517
published_at 2026-04-04T12:55:00Z
9
value 0.00058
scoring_system epss
scoring_elements 0.18227
published_at 2026-04-07T12:55:00Z
10
value 0.00058
scoring_system epss
scoring_elements 0.18363
published_at 2026-04-11T12:55:00Z
url https://api.first.org/data/v1/epss?cve=CVE-2026-2391
2
reference_url https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2026-2391
reference_id
reference_type
scores
url https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2026-2391
3
reference_url https://github.com/ljharb/qs
reference_id
reference_type
scores
0
value 3.7
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value LOW
scoring_system generic_textual
scoring_elements
url https://github.com/ljharb/qs
4
reference_url https://github.com/ljharb/qs/commit/f6a7abff1f13d644db9b05fe4f2c98ada6bf8482
reference_id
reference_type
scores
0
value 3.7
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value 6.3
scoring_system cvssv4
scoring_elements CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
2
value LOW
scoring_system generic_textual
scoring_elements
3
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2026-02-12T15:00:21Z/
url https://github.com/ljharb/qs/commit/f6a7abff1f13d644db9b05fe4f2c98ada6bf8482
5
reference_url https://github.com/ljharb/qs/security/advisories/GHSA-w7fw-mjwx-w883
reference_id
reference_type
scores
0
value 3.7
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value LOW
scoring_system cvssv3.1_qr
scoring_elements
2
value 6.3
scoring_system cvssv4
scoring_elements CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
3
value LOW
scoring_system generic_textual
scoring_elements
4
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2026-02-12T15:00:21Z/
url https://github.com/ljharb/qs/security/advisories/GHSA-w7fw-mjwx-w883
6
reference_url https://nvd.nist.gov/vuln/detail/CVE-2026-2391
reference_id
reference_type
scores
0
value 3.7
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value LOW
scoring_system generic_textual
scoring_elements
url https://nvd.nist.gov/vuln/detail/CVE-2026-2391
7
reference_url https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1127940
reference_id 1127940
reference_type
scores
url https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1127940
8
reference_url https://bugzilla.redhat.com/show_bug.cgi?id=2439353
reference_id 2439353
reference_type
scores
url https://bugzilla.redhat.com/show_bug.cgi?id=2439353
9
reference_url https://github.com/advisories/GHSA-w7fw-mjwx-w883
reference_id GHSA-w7fw-mjwx-w883
reference_type
scores
0
value LOW
scoring_system cvssv3.1_qr
scoring_elements
url https://github.com/advisories/GHSA-w7fw-mjwx-w883
fixed_packages
0
url pkg:npm/qs@6.14.2
purl pkg:npm/qs@6.14.2
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/qs@6.14.2
aliases CVE-2026-2391, GHSA-w7fw-mjwx-w883
risk_score 2.9
exploitability 0.5
weighted_severity 5.7
resource_url http://public2.vulnerablecode.io/vulnerabilities/VCID-pxq3-b7gn-3yah
Fixing_vulnerabilities
Risk_score4.0
Resource_urlhttp://public2.vulnerablecode.io/packages/pkg:npm/qs@2.2.4