{"id":"CVE-2020-7679","aliases":["EUVD-2021-1207","GHSA-vrr3-5r3v-7xfw"],"status":"published","title":"Prototype Pollution","description":"In all versions of package casperjs, the mergeObjects utility function is susceptible to Prototype Pollution.","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/RL:O/RC:C","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.02006,"percentile":0.80957,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":false},"cwes":["CWE-1321","CWE-915"],"published":"2020-06-19T10:40:12Z","modified":"2026-06-17T03:25:15Z","affected":[{"source":"ghsa","ecosystem":"npm","package":"casperjs","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"1.1.4"}]}]},{"source":"osv","ecosystem":"npm","package":"casperjs","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"last_affected":"1.1.4"}]}]}],"products":[{"vendor":"casperjs","product":"casperjs"}],"references":[{"url":"https://snyk.io/vuln/SNYK-JAVA-ORGWEBJARSBOWER-572804","tags":["x_refsource_MISC","x_transferred","Exploit","Mitigation","Third Party Advisory","web"]},{"url":"https://snyk.io/vuln/SNYK-JS-CASPERJS-572803","tags":["x_refsource_MISC","x_transferred","Exploit","Mitigation","Third Party Advisory","web"]},{"url":"https://github.com/casperjs/casperjs/blob/master/modules/utils.js%23L680","tags":["x_refsource_MISC","x_transferred","Broken Link","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-7679","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-vrr3-5r3v-7xfw"},{"url":"https://github.com/casperjs/casperjs","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2020-7679","title":"Prototype Pollution","description":"In all versions of package casperjs, the mergeObjects utility function is susceptible to Prototype Pollution.","status":"published","published":"2020-06-19T10:40:12.622Z","modified":"2024-09-16T23:51:13.919Z","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/RL:O/RC:C","level":"high","assessor":"cna"}],"updated_at":"2026-11-02T14:35:58.787905Z"}],"euvd":[{"id":"EUVD-2021-1207","description":"In all versions of package casperjs, the mergeObjects utility function is susceptible to Prototype Pollution.","status":"published","published":"2020-06-19T10:40:12Z","modified":"2024-09-16T23:51:13Z","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/RL:O/RC:C","level":"high"}],"updated_at":"2026-11-03T00:29:04.415682Z"}],"ghsa":[{"id":"GHSA-vrr3-5r3v-7xfw","title":"Improperly Controlled Modification of Dynamically-Determined Object Attributes in casperjs","description":"### Overview\ncasperjs is a navigation scripting \u0026 testing utility for PhantomJS and SlimerJS.\n\nAffected versions of this package are vulnerable to Prototype Pollution via the mergeObjects utility function.\n\n### PoC\n```js\nvar payload = JSON.parse('{\"__proto__\": {\"a\": \"pwned\"}}');\nmergeObjects({}, payload);\nconsole.log({}.a); // prints \"pwned\"\n```","status":"published","published":"2021-05-17T21:00:52Z","modified":"2023-09-13T19:52:14Z","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-915","CWE-1321"],"updated_at":"2026-11-02T14:37:05.004935Z"}],"nvd":[{"id":"CVE-2020-7679","description":"In all versions of package casperjs, the mergeObjects utility function is susceptible to Prototype Pollution.","status":"published","published":"2020-06-19T11:15:10.62Z","modified":"2026-06-17T03:25:15.103Z","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:06:07.249892Z"}],"osv":[{"id":"GHSA-vrr3-5r3v-7xfw","title":"Improperly Controlled Modification of Dynamically-Determined Object Attributes in casperjs","description":"### Overview\ncasperjs is a navigation scripting \u0026 testing utility for PhantomJS and SlimerJS.\n\nAffected versions of this package are vulnerable to Prototype Pollution via the mergeObjects utility function.\n\n### PoC\n```js\nvar payload = JSON.parse('{\"__proto__\": {\"a\": \"pwned\"}}');\nmergeObjects({}, payload);\nconsole.log({}.a); // prints \"pwned\"\n```","status":"published","published":"2021-05-17T21:00:52Z","modified":"2023-11-08T04:04:04.341567Z","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","CWE-915"],"updated_at":"2026-11-02T15:46:57.694388Z"}]}}
