{"id":"CVE-2017-1001003","aliases":["EUVD-2017-0365","GHSA-pv8x-p9hq-j328"],"status":"published","title":"Arbitrary Code Execution in mathjs","description":"math.js before 3.17.0 had an issue where private properties such as a constructor could be replaced by using unicode characters when creating an object.","severity":{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.01689,"percentile":0.77205,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-20","CWE-88"],"published":"2017-11-27T14:00:00Z","modified":"2026-10-20T10:48:01Z","fixes":[{"ecosystem":"npm","package":"mathjs","fixed_in":["3.17.0"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"mathjs","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.17.0"}]}]},{"source":"osv","ecosystem":"npm","package":"mathjs","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"3.17.0"}]}]}],"products":[{"vendor":"math.js","product":"math.js"},{"vendor":"mathjs_project","product":"mathjs"}],"references":[{"url":"https://github.com/josdejong/mathjs/blob/master/HISTORY.md#2017-11-18-version-3170","tags":["x_refsource_CONFIRM","x_transferred","web"]},{"url":"https://github.com/josdejong/mathjs/commit/a60f3c8d9dd714244aed7a5569c3dccaa3a4e761","tags":["x_refsource_CONFIRM","x_transferred","fix","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2017-1001003","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-pv8x-p9hq-j328","tags":["advisory"]},{"url":"https://www.npmjs.com/advisories/551","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2017-1001003","description":"math.js before 3.17.0 had an issue where private properties such as a constructor could be replaced by using unicode characters when creating an object.","status":"published","published":"2017-11-27T14:00:00Z","modified":"2024-09-17T03:18:21.144Z","cwes":["CWE-88"],"updated_at":"2026-11-02T14:33:12.267141Z"}],"euvd":[{"id":"EUVD-2017-0365","description":"math.js before 3.17.0 had an issue where private properties such as a constructor could be replaced by using unicode characters when creating an object.","status":"published","published":"2017-11-27T14:00:00Z","modified":"2024-09-17T03:18:21Z","updated_at":"2026-11-03T00:28:32.883624Z"}],"ghsa":[{"id":"GHSA-pv8x-p9hq-j328","title":"Arbitrary Code Execution in mathjs","description":"math.js before 3.17.0 had an issue where private properties such as a constructor could be replaced by using unicode characters when creating an object.\n\n\n## Recommendation\n\nUpgrade to version 3.17.0 or later.","status":"published","published":"2017-12-18T22:27:53Z","modified":"2023-09-12T18:41:34Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-88"],"updated_at":"2026-11-02T14:37:04.447845Z"}],"nvd":[{"id":"CVE-2017-1001003","description":"math.js before 3.17.0 had an issue where private properties such as a constructor could be replaced by using unicode characters when creating an object.","status":"published","published":"2017-11-27T14:29:00.31Z","modified":"2026-06-17T00:59:18.953Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/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-88","CWE-20"],"updated_at":"2026-11-02T14:04:09.7374Z"}],"osv":[{"id":"CVE-2017-1001003","description":"math.js before 3.17.0 had an issue where private properties such as a constructor could be replaced by using unicode characters when creating an object.","status":"published","published":"2017-11-27T14:29:00.31Z","modified":"2026-10-20T10:48:01.102681439Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:44:03.851821Z"},{"id":"GHSA-pv8x-p9hq-j328","title":"Arbitrary Code Execution in mathjs","description":"math.js before 3.17.0 had an issue where private properties such as a constructor could be replaced by using unicode characters when creating an object.\n\n\n## Recommendation\n\nUpgrade to version 3.17.0 or later.","status":"published","published":"2017-12-18T22:27:53Z","modified":"2023-11-08T03:58:48.069147Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-88"],"updated_at":"2026-11-02T15:46:53.700556Z"}]}}
