CVE-2022-21190
Summary
| CVE | CVE-2022-21190 |
|---|---|
| State | PUBLIC |
| Assigner | [email protected] |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2022-05-13 20:15:00 UTC |
| Updated | 2022-05-24 14:11:00 UTC |
| Description | This affects the package convict before 6.2.3. This is a bypass of [CVE-2022-22143](https://security.snyk.io/vuln/SNYK-JS-CONVICT-2340604). The [fix](https://github.com/mozilla/node-convict/commit/3b86be087d8f14681a9c889d45da7fe3ad9cd880) introduced, relies on the startsWith method and does not prevent the vulnerability: before splitting the path, it checks if it starts with __proto__ or this.constructor.prototype. To bypass this check it's possible to prepend the dangerous paths with any string value followed by a dot, like for example foo.__proto__ or foo.this.constructor.prototype. |
Risk And Classification
Problem Types: CWE-1321
NVD Known Affected Configurations (CPE 2.3)
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| Prototype Pollution in [email protected] · GitHub | CONFIRM | gist.github.com | |
| More more complete fix for prototype pollution · mozilla/node-convict@1ea0ab1 · GitHub | CONFIRM | github.com | |
| N/A | CONFIRM | github.com | |
| Prototype Pollution in convict | CVE-2022-21190 | Snyk | CONFIRM | snyk.io | |
| N/A | CONFIRM | github.com | |
| node-convict/main.js at 3b86be087d8f14681a9c889d45da7fe3ad9cd880 · mozilla/node-convict · GitHub | MITRE | github.com | |
| node-convict/CHANGELOG.md at master · mozilla/node-convict · GitHub | MITRE | github.com | |
| 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 Security Team
There are currently no legacy QID mappings associated with this CVE.