Skip to content

qs vulnerable to Prototype Pollution

High severity GitHub Reviewed Published Nov 27, 2022 to the GitHub Advisory Database • Updated Feb 13, 2024

Package

npm qs (npm)

Affected versions

>= 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

Patched versions

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

Description

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

Published by the National Vulnerability Database Nov 26, 2022
Published to the GitHub Advisory Database Nov 27, 2022
Reviewed Dec 6, 2022
Last updated Feb 13, 2024

Severity

High
7.5
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Weaknesses

CVE ID

CVE-2022-24999

GHSA ID

GHSA-hrpp-h998-j3pp

Source code

Credits

Checking history
See something to contribute? Suggest improvements for this vulnerability.