{"id":"CVE-2021-23518","aliases":["DEBIAN-CVE-2021-23518","DLA-3221-1","EUVD-2022-0723","GHSA-wg6g-ppvx-927h","UBUNTU-CVE-2021-23518"],"status":"published","title":"Prototype Pollution","description":"The package cached-path-relative before 1.1.0 are vulnerable to Prototype Pollution via the cache variable that is set as {} instead of Object.create(null) in the cachedPathRelative function, which allows access to the parent prototype properties when the object is used to create the cached relative path. When using the origin path as __proto__, the attribute of the object is accessed instead of a path. **Note:** This vulnerability derives from an incomplete fix in https://security.snyk.io/vuln/SNYK-JS-CACHEDPATHRELATIVE-72573","severity":{"version":"3.1","score":7.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L/E:P","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.01943,"percentile":0.80439,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-1321"],"published":"2022-01-21T20:05:29Z","modified":"2026-10-23T18:03:11Z","fixes":[{"ecosystem":"npm","package":"cached-path-relative","fixed_in":["1.1.0"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"node-cached-path-relative","fixed_in":["1.1.0+~1.0.0-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"node-cached-path-relative","fixed_in":["1.1.0+~1.0.0-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"node-cached-path-relative","fixed_in":["1.1.0+~1.0.0-1"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+~1.0.0-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+~1.0.0-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+~1.0.0-1"}]}]},{"source":"osv","ecosystem":"Debian:10","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.0.1-2+deb10u1"}]}],"versions":["1.0.1-2"],"bundled":2},{"source":"osv","ecosystem":"npm","package":"cached-path-relative","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.1.0"}]}]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.0.1-1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.0.2-1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.0.2-1","1.0.2-2","1.0.2-3","1.1.0+~1.0.0-1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0+~1.0.0-3"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0+~1.0.0-3"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0+~1.0.2-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"node-cached-path-relative","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0+~1.0.0-3","1.1.0+~1.0.2-1"]}],"products":[{"vendor":"cached-path-relative_project","product":"cached-path-relative"},{"vendor":"debian","product":"debian_linux"},{"vendor":"npm","product":"cached-path-relative"}],"references":[{"url":"https://snyk.io/vuln/SNYK-JS-CACHEDPATHRELATIVE-2342653","tags":["x_transferred","Exploit","Issue Tracking","Patch","Third Party Advisory","fix","web","report"]},{"url":"https://snyk.io/vuln/SNYK-JAVA-ORGWEBJARSNPM-2348246","tags":["x_transferred","Exploit","Issue Tracking","Patch","Third Party Advisory","fix","web","report"]},{"url":"https://github.com/ashaffer/cached-path-relative/commit/40c73bf70c58add5aec7d11e4f36b93d144bb760","tags":["x_transferred","Patch","Third Party Advisory","fix","web","report"]},{"url":"https://lists.debian.org/debian-lts-announce/2022/12/msg00006.html","tags":["mailing-list","x_transferred","Mailing List","Third Party Advisory","advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-23518","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-wg6g-ppvx-927h"},{"url":"https://security-tracker.debian.org/tracker/CVE-2021-23518","tags":["advisory"]},{"url":"https://github.com/ashaffer/cached-path-relative","tags":["package"]},{"url":"https://ubuntu.com/security/CVE-2021-23518","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2021-23518","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2021-23518","title":"Prototype Pollution","description":"The package cached-path-relative before 1.1.0 are vulnerable to Prototype Pollution via the cache variable that is set as {} instead of Object.create(null) in the cachedPathRelative function, which allows access to the parent prototype properties when the object is used to create the cached relative path. When using the origin path as __proto__, the attribute of the object is accessed instead of a path. **Note:** This vulnerability derives from an incomplete fix in https://security.snyk.io/vuln/SNYK-JS-CACHEDPATHRELATIVE-72573","status":"published","published":"2022-01-21T20:05:29.374Z","modified":"2024-09-16T18:33:30.3Z","cvss":[{"version":"3.1","score":7.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L/E:P","level":"high","assessor":"cna"}],"updated_at":"2026-11-02T14:33:00.819444Z"}],"euvd":[{"id":"EUVD-2022-0723","description":"The package cached-path-relative before 1.1.0 are vulnerable to Prototype Pollution via the cache variable that is set as {} instead of Object.create(null) in the cachedPathRelative function, which allows access to the parent prototype properties when the object is used to create the cached relative path. When using the origin path as __proto__, the attribute of the object is accessed instead of a path. **Note:** This vulnerability derives from an incomplete fix in https://security.snyk.io/vuln/SNYK-JS-CACHEDPATHRELATIVE-72573","status":"published","published":"2022-01-21T20:05:29Z","modified":"2024-09-16T18:33:30Z","cvss":[{"version":"3.1","score":7.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L/E:P","level":"high"}],"updated_at":"2026-11-03T00:55:31.571078Z"}],"ghsa":[{"id":"GHSA-wg6g-ppvx-927h","title":"Prototype Pollution in cached-path-relative","description":"The package cached-path-relative before 1.1.0 is vulnerable to Prototype Pollution via the cache variable that is set as {} instead of Object.create(null) in the cachedPathRelative function, which allows access to the parent prototype properties when the object is used to create the cached relative path. When using the origin path as __proto__, the attribute of the object is accessed instead of a path. **Note:** This vulnerability derives from an incomplete fix in https://security.snyk.io/vuln/SNYK-JS-CACHEDPATHRELATIVE-72573","status":"published","published":"2022-01-27T14:27:53Z","modified":"2023-01-31T05:00:22Z","cvss":[{"version":"3.1","score":7.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L","level":"high"}],"cwes":["CWE-1321"],"updated_at":"2026-11-02T14:36:29.100018Z"}],"nvd":[{"id":"CVE-2021-23518","description":"The package cached-path-relative before 1.1.0 are vulnerable to Prototype Pollution via the cache variable that is set as {} instead of Object.create(null) in the cachedPathRelative function, which allows access to the parent prototype properties when the object is used to create the cached relative path. When using the origin path as __proto__, the attribute of the object is accessed instead of a path. **Note:** This vulnerability derives from an incomplete fix in https://security.snyk.io/vuln/SNYK-JS-CACHEDPATHRELATIVE-72573","status":"published","published":"2022-01-21T20:15:07.963Z","modified":"2026-06-17T03:38:48.76Z","cvss":[{"version":"3.1","score":7.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L","level":"high","assessor":"secondary"},{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"primary"},{"version":"2.0","score":7.5,"vector":"AV:N/AC:L/Au:N/C:P/I:P/A:P","level":"high","assessor":"primary"}],"cwes":["CWE-1321"],"updated_at":"2026-11-02T14:07:03.821385Z"}],"osv":[{"id":"CVE-2021-23518","description":"The package cached-path-relative before 1.1.0 are vulnerable to Prototype Pollution via the cache variable that is set as {} instead of Object.create(null) in the cachedPathRelative function, which allows access to the parent prototype properties when the object is used to create the cached relative path. When using the origin path as __proto__, the attribute of the object is accessed instead of a path. **Note:** This vulnerability derives from an incomplete fix in https://security.snyk.io/vuln/SNYK-JS-CACHEDPATHRELATIVE-72573","status":"published","published":"2022-01-21T20:15:07.963Z","modified":"2026-10-20T10:54:32.546347927Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:44:18.778776Z"},{"id":"DEBIAN-CVE-2021-23518","description":"The package cached-path-relative before 1.1.0 are vulnerable to Prototype Pollution via the cache variable that is set as {} instead of Object.create(null) in the cachedPathRelative function, which allows access to the parent prototype properties when the object is used to create the cached relative path. When using the origin path as __proto__, the attribute of the object is accessed instead of a path. **Note:** This vulnerability derives from an incomplete fix in https://security.snyk.io/vuln/SNYK-JS-CACHEDPATHRELATIVE-72573","status":"published","published":"2022-01-21T20:15:07.963Z","modified":"2026-10-23T18:03:11.818357106Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:45:34.637046Z"},{"id":"GHSA-wg6g-ppvx-927h","title":"Prototype Pollution in cached-path-relative","description":"The package cached-path-relative before 1.1.0 is vulnerable to Prototype Pollution via the cache variable that is set as {} instead of Object.create(null) in the cachedPathRelative function, which allows access to the parent prototype properties when the object is used to create the cached relative path. When using the origin path as __proto__, the attribute of the object is accessed instead of a path. **Note:** This vulnerability derives from an incomplete fix in https://security.snyk.io/vuln/SNYK-JS-CACHEDPATHRELATIVE-72573","status":"published","published":"2022-01-27T14:27:53Z","modified":"2025-01-14T09:12:17.995903Z","cvss":[{"version":"3.1","score":7.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L","level":"high"}],"cwes":["CWE-1321"],"updated_at":"2026-11-02T15:46:58.767335Z"},{"id":"UBUNTU-CVE-2021-23518","description":"The package cached-path-relative before 1.1.0 are vulnerable to Prototype Pollution via the cache variable that is set as {} instead of Object.create(null) in the cachedPathRelative function, which allows access to the parent prototype properties when the object is used to create the cached relative path. When using the origin path as __proto__, the attribute of the object is accessed instead of a path. **Note:** This vulnerability derives from an incomplete fix in https://security.snyk.io/vuln/SNYK-JS-CACHEDPATHRELATIVE-72573","status":"published","published":"2022-01-21T20:15:00Z","modified":"2026-10-17T12:56:58.467116569Z","cvss":[{"version":"3.1","score":7.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L","level":"high"},{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:54:26.779273Z"},{"id":"DLA-3221-1","title":"node-cached-path-relative - security update","status":"published","published":"2022-12-05T00:00:00Z","modified":"2026-03-09T01:22:45.287558Z","updated_at":"2026-11-02T15:46:11.734021Z"}]}}
