GHSA-33f9-j839-rf8h

Suggest an improvement
Source
https://github.com/advisories/GHSA-33f9-j839-rf8h
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2021/09/GHSA-33f9-j839-rf8h/GHSA-33f9-j839-rf8h.json
JSON Data
https://api.test.osv.dev/v1/vulns/GHSA-33f9-j839-rf8h
Aliases
Published
2021-09-02T17:17:37Z
Modified
2025-01-08T10:42:05.978063Z
Severity
  • 9.8 (Critical) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H CVSS Calculator
Summary
Prototype Pollution in immer
Details

This affects the package immer before 9.0.6. A type confusion vulnerability can lead to a bypass of CVE-2020-28477 when the user-provided keys used in the path parameter are arrays. In particular, this bypass is possible because the condition (p === "__proto__" || p === "constructor") in applyPatches_ returns false if p is ['__proto__'] (or ['constructor']). The === operator (strict equality operator) returns false if the operands have different type.

Database specific
{
    "github_reviewed": true,
    "nvd_published_at": "2021-09-01T18:15:00Z",
    "severity": "CRITICAL",
    "github_reviewed_at": "2021-09-02T16:57:31Z",
    "cwe_ids": [
        "CWE-1321",
        "CWE-843"
    ]
}
References

Affected packages

npm / immer

Package

Affected ranges

Type
SEMVER
Events
Introduced
7.0.0
Fixed
9.0.6

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2021/09/GHSA-33f9-j839-rf8h/GHSA-33f9-j839-rf8h.json"