{"id":"CVE-2019-10745","aliases":["EUVD-2019-0624","GHSA-66rh-8fw6-59q6"],"status":"published","title":"assign-deep Vulnerable to Prototype Pollution","description":"assign-deep is vulnerable to Prototype Pollution in versions before 0.4.8 and version 1.0.0. The function assign-deep could be tricked into adding or modifying properties of Object.prototype using either a constructor or a _proto_ payload.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.01142,"percentile":0.669,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-1321","CWE-20","CWE-915"],"published":"2019-08-20T18:13:22Z","modified":"2026-06-17T02:11:35Z","fixes":[{"ecosystem":"npm","package":"assign-deep","fixed_in":["0.4.8","1.0.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"assign-deep","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.4.8"}]}]},{"source":"ghsa","ecosystem":"npm","package":"assign-deep","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.0.0"},{"last_affected":"1.0.0"},{"fixed":"1.0.1"}]}],"versions":["1.0.0"]},{"source":"osv","ecosystem":"npm","package":"assign-deep","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.4.8"}]}]},{"source":"osv","ecosystem":"npm","package":"assign-deep","ranges":[{"type":"SEMVER","events":[{"introduced":"1.0.0"},{"fixed":"1.0.1"}]}],"versions":["1.0.0"]}],"products":[{"vendor":"assign-deep_project","product":"assign-deep"}],"references":[{"url":"https://snyk.io/vuln/SNYK-JS-ASSIGNDEEP-450211","tags":["x_refsource_CONFIRM","x_transferred","Exploit","Patch","Third Party Advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2019-10745","tags":["advisory"]},{"url":"https://www.npmjs.com/advisories/1014","tags":["web"]},{"url":"https://github.com/jonschlinkert/assign-deep/commit/8e3cc4a34246733672c71e96532105384937e56c","tags":["web"]},{"url":"https://github.com/jonschlinkert/assign-deep/commit/90bf1c551d05940898168d04066bbf15060f50cc","tags":["web"]},{"url":"https://github.com/advisories/GHSA-66rh-8fw6-59q6"},{"url":"https://github.com/jonschlinkert/assign-deep","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2019-10745","description":"assign-deep is vulnerable to Prototype Pollution in versions before 0.4.8 and version 1.0.0. The function assign-deep could be tricked into adding or modifying properties of Object.prototype using either a constructor or a _proto_ payload.","status":"published","published":"2019-08-20T18:13:22Z","modified":"2024-08-04T22:32:01.531Z","updated_at":"2026-11-02T14:20:19.056416Z"}],"euvd":[{"id":"EUVD-2019-0624","description":"assign-deep is vulnerable to Prototype Pollution in versions before 0.4.8 and version 1.0.0. The function assign-deep could be tricked into adding or modifying properties of Object.prototype using either a constructor or a _proto_ payload.","status":"published","published":"2019-08-20T18:13:22Z","modified":"2024-08-04T22:32:01Z","updated_at":"2026-11-03T02:40:51.633398Z"}],"ghsa":[{"id":"GHSA-66rh-8fw6-59q6","title":"assign-deep Vulnerable to Prototype Pollution","description":"Versions of `assign-deep` prior to 1.0.1 and 0.4.8 are vulnerable to Prototype Pollution. The `assign` function fails to validate which Object properties it updates. This allows attackers to modify the prototype of Object, causing the addition or modification of an existing property on all objects.\n\n## Recommendation\n\nUpgrade to versions 1.0.1, 0.4.8, or later.","status":"published","published":"2019-08-21T16:15:13Z","modified":"2023-01-27T05:09:01Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high"}],"cwes":["CWE-20","CWE-915","CWE-1321"],"updated_at":"2026-11-02T14:36:22.592333Z"}],"nvd":[{"id":"CVE-2019-10745","description":"assign-deep is vulnerable to Prototype Pollution in versions before 0.4.8 and version 1.0.0. The function assign-deep could be tricked into adding or modifying properties of Object.prototype using either a constructor or a _proto_ payload.","status":"published","published":"2019-08-20T19:15:10.493Z","modified":"2026-06-17T02:11:35.38Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:N/I:P/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-1321"],"updated_at":"2026-11-02T14:05:23.725587Z"}],"osv":[{"id":"GHSA-66rh-8fw6-59q6","title":"assign-deep Vulnerable to Prototype Pollution","description":"Versions of `assign-deep` prior to 1.0.1 and 0.4.8 are vulnerable to Prototype Pollution. The `assign` function fails to validate which Object properties it updates. This allows attackers to modify the prototype of Object, causing the addition or modification of an existing property on all objects.\n\n## Recommendation\n\nUpgrade to versions 1.0.1, 0.4.8, or later.","status":"published","published":"2019-08-21T16:15:13Z","modified":"2026-03-13T22:11:37.57316Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high"}],"cwes":["CWE-1321","CWE-20","CWE-915"],"updated_at":"2026-11-02T15:46:39.266402Z"}]}}
