{"id":"CVE-2023-46308","aliases":["EUVD-2024-0449","GHSA-wjc4-73q6-gv3m","RSEC-2025-1","openSUSE-SU-2024:13607-1"],"status":"published","title":"plotly.js prototype pollution vulnerability","description":"In Plotly plotly.js before 2.25.2, plot API calls have a risk of __proto__ being polluted in expandObjectPaths or nestedProperty.","severity":{"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","from":"nvd"},"epss":{"day":"2026-11-10","score":0.00936,"percentile":0.61123,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-1321"],"published":"2024-01-03T00:00:00Z","modified":"2026-10-28T02:30:28Z","fixes":[{"ecosystem":"Packagist","package":"plotly/plotly.js","fixed_in":["2.25.2"],"sources":["ghsa","osv"]},{"ecosystem":"npm","package":"plotly.js","fixed_in":["2.25.2"],"sources":["ghsa","osv"]},{"ecosystem":"CRAN","package":"plotly","fixed_in":["4.12.0"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"Packagist","package":"plotly/plotly.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.25.2"}]}]},{"source":"ghsa","ecosystem":"npm","package":"plotly.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.25.2"}]}]},{"source":"osv","ecosystem":"Packagist","package":"plotly/plotly.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.25.2"}]}],"versions":["v1.23.2","v1.24.0","v1.24.1","v1.24.2","v1.25.0","v1.25.1","v1.25.2","v1.26.0","v1.26.1","v1.27.0","v1.27.1","v1.28.0","v1.28.1","v1.28.2","v1.28.3","v1.29.0","v1.29.1","v1.29.2","v1.29.3","v1.30.0","v1.30.1","v1.31.0","v1.31.1","v1.31.2","v1.32.0","v1.33.0","v1.33.1","v1.34.0","v1.35.0","v1.35.1","v1.35.2","v1.36.0","v1.36.1","v1.37.0","v1.37.1","v1.38.0","v1.38.1","v1.38.2","v1.38.3","v1.39.0","v1.39.1","v1.39.2","v1.39.3","v1.39.4","v1.40.0","v1.40.1","v1.41.0","v1.41.1","v1.41.2","v1.41.3","v1.42.0","v1.42.1","v1.42.2","v1.42.3","v1.42.4","v1.42.5","v1.43.0","v1.43.1","v1.43.2","v1.44.0","v1.44.1","v1.44.2","v1.44.3","v1.44.4","v1.45.0","v1.45.1","v1.45.2","v1.45.3","v1.46.0","v1.46.1","v1.47.0","v1.47.1","v1.47.2","v1.47.3","v1.47.4","v1.48.0","v1.48.1","v1.48.2","v1.48.3","v1.49.0","v1.49.1","v1.49.2","v1.49.3","v1.49.4","v1.49.5","v1.50.0","v1.50.1","v1.51.0","v1.51.1","v1.51.2","v1.51.3","v1.52.0","v1.52.1","v1.52.2","v1.52.3","v1.53.0","v1.54.0","v1.54.1","v1.54.2","v1.54.3","v1.54.4","v1.54.5","v1.54.6","v1.54.7","v1.55.0","v1.55.1","v1.55.2","v1.56.0","v1.57.0","v1.57.1","v1.58.0","v1.58.1","v1.58.2","v1.58.3","v1.58.4","v1.58.5","v2.0.0","v2.0.0-rc.0","v2.0.0-rc.1","v2.0.0-rc.2","v2.0.0-rc.3","v2.1.0","v2.10.0","v2.10.1","v2.11.0","v2.11.1","v2.12.0","v2.12.1","v2.13.0","v2.13.1","v2.13.2","v2.13.3","v2.14.0","v2.15.0","v2.15.1","v2.16.0","v2.16.1","v2.16.2","v2.16.3","v2.16.4","v2.16.5","v2.17.0","v2.17.1","v2.18.0","v2.18.1","v2.18.2","v2.19.0","v2.19.1","v2.2.0","v2.2.1","v2.20.0","v2.21.0","v2.22.0","v2.23.0","v2.23.1","v2.23.2","v2.24.0","v2.24.1","v2.24.2","v2.24.3","v2.25.0","v2.25.1","v2.3.0","v2.3.1","v2.4.0","v2.4.1","v2.4.2","v2.5.0","v2.5.1","v2.6.0","v2.6.1","v2.6.2","v2.6.3","v2.6.4","v2.7.0","v2.8.0","v2.8.1","v2.8.2","v2.8.3","v2.9.0"]},{"source":"osv","ecosystem":"npm","package":"plotly.js","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2.25.2"}]}]},{"source":"osv","ecosystem":"CRAN","package":"plotly","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"2.0.2"},{"fixed":"4.12.0"}]}],"versions":["2.0.2","2.0.3","2.0.16","3.4.1","3.4.13","3.6.0","4.5.2","4.5.6","4.6.0","4.7.0","4.7.1","4.8.0","4.9.0","4.9.1","4.9.2","4.9.2.1","4.9.2.2","4.9.3","4.9.4","4.9.4.1","4.10.0","4.10.1","4.10.2","4.10.3","4.10.4","4.11.0"]}],"products":[{"vendor":"plotly","product":"plotly.js"}],"references":[{"url":"https://plotly.com/javascript/","tags":["x_transferred","Product","web"]},{"url":"https://github.com/plotly/plotly.js/releases/tag/v2.25.2","tags":["x_transferred","Release Notes","web"]},{"url":"https://github.com/plotly/plotly.R/issues/2463","tags":["report","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-46308","tags":["advisory","web"]},{"url":"https://github.com/plotly/plotly.js/commit/02498404c8ad7a3395191e65694fb142a37b0fe9","tags":["web"]},{"url":"https://github.com/plotly/plotly.js/commit/5efd2a1f07a418b230a5626fc6c1c7929c47949d","tags":["web"]},{"url":"https://plotly.com/javascript","tags":["web"]},{"url":"https://github.com/advisories/GHSA-wjc4-73q6-gv3m"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/46xxx/CVE-2023-46308.json","tags":["advisory"]},{"url":"https://github.com/plotly/plotly.js","tags":["package"]},{"url":"https://github.com/plotly/plotly.R/pull/2471","tags":["web"]},{"url":"","tags":["advisory"]},{"url":"https://www.suse.com/security/cve/CVE-2023-46308","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2023-46308","description":"In Plotly plotly.js before 2.25.2, plot API calls have a risk of __proto__ being polluted in expandObjectPaths or nestedProperty.","status":"published","published":"2024-01-03T00:00:00Z","modified":"2025-12-24T05:48:34.33Z","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","assessor":"adp"}],"cwes":["CWE-1321"],"updated_at":"2026-11-02T14:35:23.309349Z"}],"euvd":[{"id":"EUVD-2024-0449","description":"In Plotly plotly.js before 2.25.2, plot API calls have a risk of __proto__ being polluted in expandObjectPaths or nestedProperty.","status":"published","published":"2024-01-03T00:00:00Z","modified":"2025-12-24T05:48:34Z","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-02T19:49:01.709544Z"}],"ghsa":[{"id":"GHSA-wjc4-73q6-gv3m","title":"plotly.js prototype pollution vulnerability","description":"In Plotly plotly.js before 2.25.2, plot API calls have a risk of __proto__ being polluted in expandObjectPaths or nestedProperty.","status":"published","published":"2024-01-03T06:30:27Z","modified":"2025-12-26T15:16:51Z","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"}],"cwes":["CWE-1321"],"updated_at":"2026-11-02T14:39:14.093341Z"}],"nvd":[{"id":"CVE-2023-46308","description":"In Plotly plotly.js before 2.25.2, plot API calls have a risk of __proto__ being polluted in expandObjectPaths or nestedProperty.","status":"published","published":"2024-01-03T05:15:11.36Z","modified":"2026-06-17T06:30:37.893Z","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","assessor":"primary"},{"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":"secondary"}],"cwes":["CWE-1321"],"updated_at":"2026-11-02T14:08:59.830468Z"}],"osv":[{"id":"CVE-2023-46308","description":"In Plotly plotly.js before 2.25.2, plot API calls have a risk of __proto__ being polluted in expandObjectPaths or nestedProperty.","status":"published","published":"2024-01-03T00:00:00Z","modified":"2026-10-28T02:30:28.207791933Z","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:34.287121Z"},{"id":"GHSA-wjc4-73q6-gv3m","title":"plotly.js prototype pollution vulnerability","description":"In Plotly plotly.js before 2.25.2, plot API calls have a risk of __proto__ being polluted in expandObjectPaths or nestedProperty.","status":"published","published":"2024-01-03T06:30:27Z","modified":"2025-12-26T15:36:43.06985Z","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"}],"cwes":["CWE-1321"],"updated_at":"2026-11-02T15:46:58.767335Z"},{"id":"openSUSE-SU-2024:13607-1","title":"jupyter-panel-1.3.7-1.1 on GA media","description":"These are all security issues fixed in the jupyter-panel-1.3.7-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2026-02-04T02:44:33.421345Z","updated_at":"2026-11-02T16:58:36.327643Z"},{"id":"RSEC-2025-1","title":"Risk of __proto__ pollution Vulnerability","description":"The plotly R package up through the latest 4.11.0 includes plotly.js library 2.11.1. \nPlotly.js releases prior to version 2.25.2 have a risk of __proto__ being polluted in expandObjectPaths or nestedProperty.\n","status":"published","published":"2025-12-23T15:00:00Z","modified":"2025-12-26T20:44:53.041765Z","updated_at":"2026-11-02T15:53:39.492624Z"}]}}
