{"id":"CVE-2022-21189","aliases":["GHSA-3xgx-r9j4-qw9w"],"url":"https://o3.security/vulnerability/CVE-2022-21189","summary":"Prototype Pollution","details":"Dexie is a minimalistic wrapper for IndexedDB. The package dexie before 3.2.2, from 4.0.0-alpha.1 and before 4.0.0-alpha.3 are vulnerable to Prototype Pollution in the Dexie.setByKeyPath(obj, keyPath, value) function which does not properly check the keys being set (like __proto__ or constructor). This can allow an attacker to add/modify properties of the Object.prototype leading to prototype pollution vulnerability. **Note:** This vulnerability can occur in multiple ways, for example when modifying a collection with untrusted user input.","published":"2022-05-01T15:25:21.478Z","modified":"2026-08-12T03:51:38.134167397Z","cvss":{"score":7.3,"severity":"HIGH","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L/E:P"},"epss":null,"cisaKev":null,"exploitsKnown":2,"affectedPackages":[{"ecosystem":"npm","name":"dexie","fixedVersion":"3.2.2"},{"ecosystem":"npm","name":"dexie","fixedVersion":"4.0.0-alpha.3"}],"fix":{"url":"https://github.com/dexie/Dexie.js/commit/1d655a69b9f28c3af6fae10cf5c61df387dc689b","label":"dexie/Dexie.js@1d655a6"},"references":[{"type":"WEB","url":"https://github.com/dexie/Dexie.js/blob/fe682ef24568278c3b31d9d6c93de095d4b77ae8/src/functions/utils.ts%23L134-L164"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/21xxx/CVE-2022-21189.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2022-21189"},{"type":"ADVISORY","url":"https://snyk.io/vuln/SNYK-JAVA-ORGWEBJARSNPM-2805308"},{"type":"ADVISORY","url":"https://snyk.io/vuln/SNYK-JS-DEXIE-2607042"},{"type":"FIX","url":"https://github.com/dexie/Dexie.js/commit/1d655a69b9f28c3af6fae10cf5c61df387dc689b"},{"type":"PACKAGE","url":"https://github.com/dexie/Dexie.js"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-12T03:51:38.134167397Z"}}