CVE-2022-24999 in the critical feed json
qs vulnerable to Prototype Pollution
published 2022-11-26 3 y ago modified 2026-06-17 4 mo ago also GHSA-hrpp-h998-j3pp , EUVD-2022-7366
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 15.7%
- EPSS 15.7% chance of exploitation in 30 days, percentile 96%
- public exploits
- 0
- none known
Summary
qs before 6.10.3, as used in Express before 4.17.3 and other products, allows attackers to cause a Node process hang for an Express application because an __ proto__ key can be used. In many typical Express 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 (and therefore Express 4.17.3, which has "deps: qs@6.9.7" in its release description, is not vulnerable).
Patch / fix
- npm qs 6.2.4, 6.3.3, 6.4.1, 6.5.3, 6.6.1, 6.7.3, 6.8.3, 6.9.7, 6.10.3
- qs_project qs 6.2.4, 6.3.3, 6.5.3, 6.7.3, 6.8.3, 6.9.7, 6.10.3
- openjsf express 4.17.3
- node-qs Debian 14, Debian 13, Debian 12 6.10.3+ds+~6.9.7-1
debian advisories DEBIAN-CVE-2022-24999
- node-qs Ubuntu Pro 20.04 LTS 6.9.1+ds-1ubuntu0.1~esm1
- node-express Ubuntu Pro 20.04 LTS 4.17.1-2ubuntu0.1~esm2
ubuntu advisories UBUNTU-CVE-2022-24999
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- nodejs-packaging RHEL 8, RHEL 8.6 EUS, RHEL 8.4 EUS 23-3.module+el8.3.0+6519+9f98ed83
- npm RHEL 8 1:6.14.17-1.14.21.1.2.module+el8.7.0+17528+a329cd47
- nodejs RHEL 8 1:14.21.1-2.module+el8.7.0+17528+a329cd47
- nodejs-nodemon RHEL 8 2.0.20-2.module+el8.7.0+17528+a329cd47
- nodejs-full-i18n RHEL 8 1:14.21.1-2.module+el8.7.0+17528+a329cd47
- rh-nodejs14-nodejs RHEL 3 SOFTWARE_COLLECTIONS 14.21.1-3.el7
- rh-nodejs14-nodejs-nodemon RHEL 3 SOFTWARE_COLLECTIONS 2.0.20-2.el7
- rh-nodejs14-npm RHEL 3 SOFTWARE_COLLECTIONS 6.14.17-14.21.1.3.el7
red hat advisories RHSA-2023:1742RHSA-2023:1533RHSA-2023:0050RHSA-2023:0612
- npm AlmaLinux 8 1:6.14.17-1.14.21.1.2.module_el8.7.0+3373+a4c18c43
- nodejs AlmaLinux 8 1:14.21.1-2.module_el8.7.0+3373+a4c18c43
- nodejs-nodemon AlmaLinux 8 2.0.20-2.module_el8.7.0+3373+a4c18c43
- nodejs-full-i18n AlmaLinux 8 1:14.21.1-2.module_el8.7.0+3373+a4c18c43
- nodejs-packaging AlmaLinux 8 23-3.module_el8.4.0+2522+3bd42762
almalinux advisories ALSA-2023:0050
- nodejs Rocky Linux 8 1:14.21.1-2.module+el8.7.0+1116+bd2a84b4
- nodejs-nodemon Rocky Linux 8 2.0.20-2.module+el8.7.0+1108+49363b0d
- nodejs-packaging Rocky Linux 8 23-3.module+el8.7.0+1071+4bdda2a8
- nodejs-packaging Rocky Linux 8 23-3.module+el8.3.0+100+234774f7
- nodejs-packaging Rocky Linux 8 23-3.module+el8.5.0+733+de4fee6c
rocky linux advisories RLSA-2023:0050
- github.com/ljharb/qs@4310742 commit
- github.com/ljharb/qs@727ef5d commit
- github.com/ljharb/qs@7320525 commit
- github.com/ljharb/qs@8b4cc14 commit
- github.com/ljharb/qs@ba24e74 commit
- github.com/ljharb/qs@e799ba5 commit
- github.com/ljharb/qs@ed0f5dc commit
- github.com/ljharb/qs@f945393 commit
- github.com/ljharb/qs@fc36827 commit
- github.com/ljharb/qs#428 pull request
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-2022-24999 updated cvss 7.5
express: "qs" prototype poisoning causes the hang of the node process
-
Red Hat .NET Core 3.1 on Red Hat Enterprise Linux rh-dotnet31-dotnet, rh-dotnet31-dotnet-host, rh-dotnet31-dotnet-sdk-3.1, rh-dotnet31-dotnet-hostfxr-3.1, rh-dotnet31-dotnet-runtime-3.1, rh-dotnet31-dotnet-templates-3.1, +6 moreaffected: no fix planned “Out of support scope”
-
Red Hat Migration Toolkit for Virtualization migration-toolkit-virtualization/mtv-ui-rhel8affected: no fix available “Fix deferred”
-
Red Hat OpenShift Service Mesh 2 openshift-service-mesh/kiali-rhel8 Red Hat OpenShift Service Mesh 2.1 servicemesh-grafana, servicemesh-prometheus, openshift-service-mesh/kiali-rhel8affected: no fix planned “Will not fix”
-
Red Hat Advanced Cluster Management for Kubernetes 2 rhacm2/grc-ui-rhel8, rhacm2/console-rhel8, rhacm2/search-ui-rhel8, rhacm2/grc-ui-api-rhel8, rhacm2/search-api-rhel8, rhacm2/console-api-rhel8, +1 more Red Hat Advanced Cluster Security 3 advanced-cluster-security/rhacs-docs-rhel8, advanced-cluster-security/rhacs-main-rhel8, advanced-cluster-security/rhacs-roxctl-rhel8, advanced-cluster-security/rhacs-rhel8-operatoraffected: no fix available, no fix planned “Will not fix”
-
Red Hat Ansible Automation Platform 1.2 qsaffected: no fix available
-
Red Hat Ansible Automation Platform 2 aap-azure-uiaffected: no fix planned “Will not fix”
-
Red Hat build of Apicurio Registry 2 qsaffected: no fix available
-
Red Hat Ceph Storage 4 cockpit-ceph-installeraffected: no fix planned “Will not fix”
show 23 moreshow fewer
-
Red Hat Decision Manager 7 qsaffected: no fix planned “Out of support scope”
-
Red Hat Directory Server 11 389-ds-baseaffected: no fix planned “Will not fix”
-
Red Hat Discovery 1 discovery-server-containeraffected: no fix available
-
Red Hat Fuse 7 nodejs-qsaffected: no fix planned “Will not fix”
-
Red Hat Integration Camel K 1 qsaffected: no fix available
-
Red Hat JBoss Data Grid 7 nodejs-qs Red Hat OpenShift Container Platform 3.11 openshift3/ose-consoleaffected: no fix planned “Out of support scope”
-
Red Hat OpenShift Container Platform 4 openshift4/ose-consoleaffected: no fix planned “Will not fix”
-
Red Hat Openshift Container Storage 4 ocs4/mcg-core-rhel8affected: no fix planned “Out of support scope”
-
Red Hat Openshift Data Foundation 4 nodejs, noobaa-core-container, odf4/odf-console-rhel9, odf4/odf-multicluster-console-rhel8 Red Hat OpenShift Dev Spaces devspaces/code-rhel8, devspaces/dashboard-rhel8, devspaces-theia-rhel8-container, devspaces-theia-endpoint-rhel8-containeraffected: no fix available, no fix planned “Will not fix”
-
Red Hat OpenShift GitOps openshift-gitops-1/argocd-rhel8 Red Hat OpenShift Virtualization 4 container-native-virtualization/kubevirt-console-pluginaffected: no fix available
-
Red Hat Process Automation 7 qsaffected: no fix planned “Out of support scope”
-
Red Hat Quay 3 quay/quay-rhel8 Red Hat Satellite 6 rubygem-rabl, tfm-rubygem-rablaffected: no fix planned “Will not fix”
-
Red Hat MTA 6.0 for RHEL 8 mta/mta-ui-rhel8 6.0.1-10fixed: vendor fix RHSA-2023:0934
-
Red Hat Enterprise Linux AppStream (v. 8) nodejs 14.21.1-2.module+el8.7.0+17528+a329cd47, nodejs-packaging 23-3.module+el8.3.0+6519+9f98ed83, nodejs-nodemon 2.0.20-2.module+el8.7.0+17528+a329cd47, npm 6.14.17-1.14.21.1.2.module+el8.7.0+17528+a329cd47, nodejs-full-i18n 14.21.1-2.module+el8.7.0+17528+a329cd47fixed: vendor fix RHSA-2023:0050
-
Red Hat Enterprise Linux AppStream EUS (v.8.4) nodejs 14.21.3-1.module+el8.4.0+18317+43f5ac16, nodejs-packaging 23-3.module+el8.3.0+6519+9f98ed83, nodejs-nodemon 2.0.20-3.module+el8.4.0+18317+43f5ac16, npm 6.14.18-1.14.21.3.1.module+el8.4.0+18317+43f5ac16, nodejs-full-i18n 14.21.3-1.module+el8.4.0+18317+43f5ac16fixed: vendor fix RHSA-2023:1533
-
Red Hat Enterprise Linux AppStream EUS (v.8.6) nodejs 14.21.3-1.module+el8.6.0+18532+cbe6f646, nodejs-packaging 23-3.module+el8.3.0+6519+9f98ed83, nodejs-nodemon 2.0.20-3.module+el8.6.0+18532+cbe6f646, npm 6.14.18-1.14.21.3.1.module+el8.6.0+18532+cbe6f646, nodejs-full-i18n 14.21.3-1.module+el8.6.0+18532+cbe6f646fixed: vendor fix RHSA-2023:1742
-
Red Hat Migration Toolkit 1.7 rhmtc/openshift-migration-ui-rhel8 v1.7.8-5fixed: vendor fix RHSA-2023:1428
-
Red Hat Software Collections for RHEL Workstation(v. 7) rh-nodejs14-nodejs 14.21.1-3.el7, rh-nodejs14-npm 6.14.17-14.21.1.3.el7, rh-nodejs14-nodejs-nodemon 2.0.20-2.el7, rh-nodejs14-nodejs-full-i18n 14.21.1-3.el7 Red Hat Software Collections for RHEL(v. 7) rh-nodejs14-nodejs 14.21.1-3.el7, rh-nodejs14-npm 6.14.17-14.21.1.3.el7, rh-nodejs14-nodejs-nodemon 2.0.20-2.el7, rh-nodejs14-nodejs-full-i18n 14.21.1-3.el7fixed: vendor fix RHSA-2023:0612
-
Red Hat RHODF 4.12 for RHEL 8 odf4/mcg-core-rhel8 v4.12.3-4fixed: vendor fix RHSA-2023:3265
-
Red Hat RHOL 5.5 for RHEL 8 openshift-logging/logging-view-plugin-rhel8 v5.5.8-3fixed: vendor fix RHSA-2023:0930
-
Red Hat RHOL 5.6 for RHEL 8 openshift-logging/logging-view-plugin-rhel8 v5.6.3-5fixed: vendor fix RHSA-2023:0932
-
Red Hat RHOSSM 2.2 for RHEL 8 openshift-service-mesh/prometheus-rhel8 2.2.7-7fixed: vendor fix RHSA-2023:3645
-
Red Hat MTA 6.0 for RHEL 8 mta/mta-hub-rhel8 6.0.1-8, mta/mta-pathfinder-rhel8 6.0.1-6, mta/mta-admin-addon-rhel8 6.0.1-8, mta/mta-windup-addon-rhel8 6.0.1-9 Red Hat OpenShift Developer Tools and Services odo Red Hat Enterprise Linux 8 npm, nodejs, nodejs-libs, nodejs-nodemon, nodejs-full-i18n, nodejs-packaging, +1 morenot affected: vulnerable code not present
7 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-25-084-01 updated cvss 7.5
ABB RMC-100
-
ABB RMC-100 >=2105457-036, <2105457-044 ABB RMC-100 LITE >=2106229-010, <2106229-016affected: vendor fix new.abb.com
-
ABB RMC-100 2105452-048 ABB RMC-100 LITE 2106260-017fixed
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
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 18 mo ago
Exploit prediction
15.70% chance of exploitation in the next 30 days, higher than 96% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/n8tz/CVE-2022-24999 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CISA ADP | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | qs | >=6.10.0, <6.10.3 >=6.9.0, <6.9.7 >=6.8.0, <6.8.3 >=6.7.0, <6.7.3 >=6.6.0, <6.6.1 >=6.5.0, <6.5.3 >=6.4.0, <6.4.1 >=6.3.0, <6.3.3 <6.2.4 |
6.10.3 6.9.7 6.8.3 6.7.3 6.6.1 6.5.3 6.4.1 6.3.3 6.2.4 |
Classification
- Weakness
-
- CWE-1321 Improperly Controlled Modification of Object Prototype Attributes
- Technology feeds
References
-
github.com
/ljharb/qs/pull/428
web, issue-tracking, patch
-
github.com
/ljharb/qs/commit/4310742efbd8c03f6495f07906b45213da0a32ec
web
-
github.com
/ljharb/qs/commit/727ef5d34605108acb3513f72d5435972ed15b68
web
-
github.com
/ljharb/qs/commit/73205259936317b40f447c5cdb71c5b341848e1b
web
-
github.com
/ljharb/qs/commit/8b4cc14cda94a5c89341b77e5fe435ec6c41be2d
web
-
github.com
/ljharb/qs/commit/ba24e74dd17931f825adb52f5633e48293b584e1
web
-
github.com
/ljharb/qs/commit/e799ba57e573a30c14b67c1889c7c04d508b9105
web
-
github.com
/ljharb/qs/commit/ed0f5dcbef4b168a8ae299d78b1e4a2e9b1baf1f
web
-
github.com
/ljharb/qs/commit/f945393cfe442fe8c6e62b4156fd35452c0686ee
web
-
github.com
/ljharb/qs/commit/fc3682776670524a42e19709ec4a8138d0d7afda
web
-
github.com
/n8tz/CVE-2022-24999
web, exploit, third-party-advisory
-
github.com
/expressjs/express/releases/tag/4.17.3
web, release-notes
-
lists.debian.org
/debian-lts-announce/2023/01/msg00039.html
mailing-list, web, third-party-advisory
- security.netapp.com /advisory/ntap-20230908-0005/
-
nvd.nist.gov
/vuln/detail/CVE-2022-24999
advisory
-
github.com
/ljharb/qs
package
-
security.netapp.com
/advisory/ntap-20230908-0005
web
Sources
- CVE List CVE-2022-24999
- GitHub Advisory GHSA-hrpp-h998-j3pp
- NVD CVE-2022-24999
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.