CVE-2022-24999
express: "qs" prototype poisoning causes the hang of the node process
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
1Exploited in Wild
-Decision
Descriptions
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).
qs anterior a 6.10.3, como se usa en Express anterior a 4.17.3 y otros productos, permite a los atacantes provocar que un proceso de Nodo se cuelgue para una aplicación Express porque se puede usar una clave __ proto__. En muchos casos de uso típicos de Express, un atacante remoto no autenticado puede colocar el payload del ataque en la cadena de consulta de la URL que se utiliza para visitar la aplicación, como a[__proto__]=b&a[__proto__]&a[length] =100000000. La solución se respaldó a qs 6.9.7, 6.8.3, 6.7.3, 6.6.1, 6.5.3, 6.4.1, 6.3.3 y 6.2.4 (y por lo tanto a Express 4.17.3, que tiene "deps : qs@6.9.7" en la descripción de su versión, no es vulnerable).
A flaw was found in the express.js npm package of nodejs:14 module stream. Express.js Express is vulnerable to a denial of service caused by a prototype pollution flaw in qs. By adding or modifying properties of Object.prototype using a __proto__ or constructor payload, a remote attacker can cause a denial of service.
CVSS Scores
SSVC
- Decision:-
Timeline
- 2022-02-14 CVE Reserved
- 2022-11-26 CVE Published
- 2024-07-17 EPSS Updated
- 2024-08-03 CVE Updated
- 2024-08-03 First Exploit
- ---------- Exploited in Wild
- ---------- KEV Due Date
CWE
- CWE-1321: Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')
CAPEC
References (7)
URL | Date | SRC |
---|---|---|
https://github.com/n8tz/CVE-2022-24999 | 2024-08-03 |
URL | Date | SRC |
---|---|---|
https://github.com/ljharb/qs/pull/428 | 2023-09-08 |
URL | Date | SRC |
---|---|---|
https://access.redhat.com/security/cve/CVE-2022-24999 | 2023-06-15 | |
https://bugzilla.redhat.com/show_bug.cgi?id=2150323 | 2023-06-15 |
Affected Vendors, Products, and Versions
Vendor | Product | Version | Other | Status | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
Qs Project Search vendor "Qs Project" | Qs Search vendor "Qs Project" for product "Qs" | < 6.2.4 Search vendor "Qs Project" for product "Qs" and version " < 6.2.4" | node.js |
Affected
| ||||||
Qs Project Search vendor "Qs Project" | Qs Search vendor "Qs Project" for product "Qs" | >= 6.3.0 < 6.3.3 Search vendor "Qs Project" for product "Qs" and version " >= 6.3.0 < 6.3.3" | node.js |
Affected
| ||||||
Qs Project Search vendor "Qs Project" | Qs Search vendor "Qs Project" for product "Qs" | >= 6.5.0 < 6.5.3 Search vendor "Qs Project" for product "Qs" and version " >= 6.5.0 < 6.5.3" | node.js |
Affected
| ||||||
Qs Project Search vendor "Qs Project" | Qs Search vendor "Qs Project" for product "Qs" | >= 6.7.0 < 6.7.3 Search vendor "Qs Project" for product "Qs" and version " >= 6.7.0 < 6.7.3" | node.js |
Affected
| ||||||
Qs Project Search vendor "Qs Project" | Qs Search vendor "Qs Project" for product "Qs" | >= 6.8.0 < 6.8.3 Search vendor "Qs Project" for product "Qs" and version " >= 6.8.0 < 6.8.3" | node.js |
Affected
| ||||||
Qs Project Search vendor "Qs Project" | Qs Search vendor "Qs Project" for product "Qs" | >= 6.9.0 < 6.9.7 Search vendor "Qs Project" for product "Qs" and version " >= 6.9.0 < 6.9.7" | node.js |
Affected
| ||||||
Qs Project Search vendor "Qs Project" | Qs Search vendor "Qs Project" for product "Qs" | >= 6.10.0 < 6.10.3 Search vendor "Qs Project" for product "Qs" and version " >= 6.10.0 < 6.10.3" | node.js |
Affected
| ||||||
Qs Project Search vendor "Qs Project" | Qs Search vendor "Qs Project" for product "Qs" | 6.4.0 Search vendor "Qs Project" for product "Qs" and version "6.4.0" | node.js |
Affected
| ||||||
Qs Project Search vendor "Qs Project" | Qs Search vendor "Qs Project" for product "Qs" | 6.6.0 Search vendor "Qs Project" for product "Qs" and version "6.6.0" | node.js |
Affected
| ||||||
Openjsf Search vendor "Openjsf" | Express Search vendor "Openjsf" for product "Express" | < 4.17.3 Search vendor "Openjsf" for product "Express" and version " < 4.17.3" | node.js |
Affected
| ||||||
Debian Search vendor "Debian" | Debian Linux Search vendor "Debian" for product "Debian Linux" | 10.0 Search vendor "Debian" for product "Debian Linux" and version "10.0" | - |
Affected
|