CVE-2021-23436
Summary
| CVE | CVE-2021-23436 |
|---|---|
| State | PUBLIC |
| Assigner | [email protected] |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2021-09-01 18:15:00 UTC |
| Updated | 2021-09-10 13:33:00 UTC |
| Description | 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. |
Risk And Classification
Problem Types: CWE-843
NVD Known Affected Configurations (CPE 2.3)
| Type | Vendor | Product | Version | Update | Edition | Language |
|---|---|---|---|---|---|---|
| Application | Immer Project | Immer | All | All | All | All |
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| Prototype Pollution in org.webjars.npm:immer | Snyk | MISC | snyk.io | |
| fix(security): Follow up on CVE-2020-28477 where `path: [["__proto__"… · immerjs/immer@fa671e5 · GitHub | MISC | github.com | |
| Prototype Pollution in immer | Snyk | MISC | snyk.io | |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
Vendor Comments And Credit
Discovery Credit
LEGACY: Alessio Della Libera of Snyk Research Team
Legacy QID Mappings
- 981061 Nodejs (npm) Security Update for immer (GHSA-33f9-j839-rf8h)