{"id":"CVE-2015-4707","aliases":["DEBIAN-CVE-2015-4707","EUVD-2017-0063","GHSA-66gw-5xpf-gfp5","MGASA-2015-0300","PYSEC-2017-46","UBUNTU-CVE-2015-4707"],"status":"published","title":"Improper Neutralization of Input During Web Page Generation in IPython","description":"Cross-site scripting (XSS) vulnerability in IPython before 3.2 allows remote attackers to inject arbitrary web script or HTML via vectors involving JSON error messages and the /api/notebooks path.","severity":{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.02274,"percentile":0.83202,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-79"],"published":"2015-08-03T20:55:18Z","modified":"2026-09-09T07:01:05Z","fixes":[{"ecosystem":"PyPI","package":"ipython","fixed_in":["3.2.0"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"ipython","fixed_in":["2.4.1-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"ipython","fixed_in":["2.4.1-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"ipython","fixed_in":["2.4.1-1"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"ipython","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.2.0"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"ipython","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.1-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"ipython","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.1-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"ipython","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.1-1"}]}]},{"source":"osv","ecosystem":"PyPI","package":"ipython","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.2.0"}]}],"versions":["0.10","0.10.1","0.10.2","0.11","0.12","0.12.1","0.13","0.13.1","0.13.2","0.6.10","0.6.11","0.6.12","0.6.13","0.6.14","0.6.15","0.6.4","0.6.5","0.6.6","0.6.7","0.6.8","0.6.9","0.7.0","0.7.1","0.7.1.fix1","0.7.2","0.7.3","0.7.4.svn.r2010","0.8.0","0.8.1","0.8.2","0.8.3","0.8.4","0.9","0.9.1","1.0.0","1.1.0","1.2.0","1.2.1","2.0.0","2.1.0","2.2.0","2.3.0","2.3.1","2.4.0","2.4.1","3.0.0","3.1.0"]},{"source":"osv","ecosystem":"Mageia:4","package":"ipython","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.0-1.mga4"}]}],"bundled":2},{"source":"osv","ecosystem":"Mageia:5","package":"ipython","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.0-2.2.mga5"}]}],"bundled":2},{"source":"osv","ecosystem":"PyPI","package":"ipython","ranges":[{"type":"GIT","events":[{"introduced":"0"},{"fixed":"c2078a53543ed502efd968649fee1125e0eb549c"},{"fixed":"7222bd53ad089a65fd610fab4626f9d0ab47dfce"}]},{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.2.0"}]}],"versions":["0.10","0.10.1","0.10.2","0.11","0.12","0.12.1","0.13","0.13.1","0.13.2","0.6.10","0.6.11","0.6.12","0.6.13","0.6.14","0.6.15","0.6.4","0.6.5","0.6.6","0.6.7","0.6.8","0.6.9","0.7.0","0.7.1","0.7.1.fix1","0.7.2","0.7.3","0.7.4.svn.r2010","0.8.0","0.8.1","0.8.2","0.8.3","0.8.4","0.9","0.9.1","1.0.0","1.1.0","1.2.0","1.2.1","2.0.0","2.1.0","2.2.0","2.3.0","2.3.1","2.4.0","2.4.1","3.0.0","3.1.0"]}],"products":[{"vendor":"ipython","product":"ipython"}],"references":[{"url":"https://ipython.org/ipython-doc/3/whatsnew/version3.html","tags":["x_refsource_CONFIRM","x_transferred","Vendor Advisory","advisory","web"]},{"url":"https://github.com/ipython/ipython/commit/7222bd53ad089a65fd610fab4626f9d0ab47dfce","tags":["x_refsource_CONFIRM","x_transferred","Patch","Third Party Advisory","advisory","fix","web"]},{"url":"http://www.openwall.com/lists/oss-security/2015/06/22/7","tags":["mailing-list","x_refsource_MLIST","x_transferred","Mailing List","Third Party Advisory","advisory","article","web"]},{"url":"https://github.com/ipython/ipython/commit/c2078a53543ed502efd968649fee1125e0eb549c","tags":["x_refsource_CONFIRM","x_transferred","Patch","Third Party Advisory","advisory","fix","web"]},{"url":"http://www.securityfocus.com/bid/75328","tags":["vdb-entry","x_refsource_BID","x_transferred","Third Party Advisory","VDB Entry","advisory","web"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1235688","tags":["x_refsource_CONFIRM","x_transferred","Issue Tracking","Third Party Advisory","advisory","report","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2015-4707","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-66gw-5xpf-gfp5","tags":["advisory"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/ipython/PYSEC-2017-46.yaml","tags":["web"]},{"url":"https://web.archive.org/web/20200227150022/https://www.securityfocus.com/bid/75328","tags":["web"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2015-4707","tags":["advisory"]},{"url":"https://github.com/ipython/ipython","tags":["package"]},{"url":"https://advisories.mageia.org/MGASA-2015-0300.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=16183","tags":["report"]},{"url":"http://openwall.com/lists/oss-security/2015/06/22/7","tags":["web"]},{"url":"http://openwall.com/lists/oss-security/2015/07/12/4","tags":["web"]},{"url":"https://ubuntu.com/security/CVE-2015-4707","tags":["report"]},{"url":"http://www.openwall.com/lists/oss-security/2015/06/22/4","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2015-4707","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2015-4707","description":"Cross-site scripting (XSS) vulnerability in IPython before 3.2 allows remote attackers to inject arbitrary web script or HTML via vectors involving JSON error messages and the /api/notebooks path.","status":"published","published":"2017-09-20T18:00:00Z","modified":"2024-08-06T06:25:20.163Z","updated_at":"2026-11-02T14:35:43.322279Z"}],"euvd":[{"id":"EUVD-2017-0063","description":"Cross-site scripting (XSS) vulnerability in IPython before 3.2 allows remote attackers to inject arbitrary web script or HTML via vectors involving JSON error messages and the /api/notebooks path.","status":"published","published":"2017-09-20T18:00:00Z","modified":"2024-08-06T06:25:20Z","updated_at":"2026-11-03T02:22:03.142599Z"}],"ghsa":[{"id":"GHSA-66gw-5xpf-gfp5","title":"Improper Neutralization of Input During Web Page Generation in IPython","description":"Cross-site scripting (XSS) vulnerability in IPython before 3.2 allows remote attackers to inject arbitrary web script or HTML via vectors involving JSON error messages and the /api/notebooks path.","status":"published","published":"2022-05-13T01:31:05Z","modified":"2024-09-23T16:09:37Z","cvss":[{"version":"4.0","score":5.3,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N","level":"medium"},{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T14:38:05.526697Z"}],"nvd":[{"id":"CVE-2015-4707","description":"Cross-site scripting (XSS) vulnerability in IPython before 3.2 allows remote attackers to inject arbitrary web script or HTML via vectors involving JSON error messages and the /api/notebooks path.","status":"published","published":"2017-09-20T18:29:00.89Z","modified":"2026-06-17T00:27:45.633Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium","assessor":"primary"},{"version":"2.0","score":4.3,"vector":"AV:N/AC:M/Au:N/C:N/I:P/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T14:03:19.244941Z"}],"osv":[{"id":"CVE-2015-4707","description":"Cross-site scripting (XSS) vulnerability in IPython before 3.2 allows remote attackers to inject arbitrary web script or HTML via vectors involving JSON error messages and the /api/notebooks path.","status":"published","published":"2017-09-20T18:29:00Z","modified":"2026-04-16T06:25:31.50636102Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:44:00.594921Z"},{"id":"DEBIAN-CVE-2015-4707","description":"Cross-site scripting (XSS) vulnerability in IPython before 3.2 allows remote attackers to inject arbitrary web script or HTML via vectors involving JSON error messages and the /api/notebooks path.","status":"published","published":"2017-09-20T18:29:00.89Z","modified":"2026-09-09T07:01:05.593092501Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:45:26.752992Z"},{"id":"GHSA-66gw-5xpf-gfp5","title":"Improper Neutralization of Input During Web Page Generation in IPython","description":"Cross-site scripting (XSS) vulnerability in IPython before 3.2 allows remote attackers to inject arbitrary web script or HTML via vectors involving JSON error messages and the /api/notebooks path.","status":"published","published":"2022-05-13T01:31:05Z","modified":"2024-09-23T16:38:38.98467Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"},{"version":"4.0","score":5.3,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N","level":"medium"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T15:46:39.266402Z"},{"id":"UBUNTU-CVE-2015-4707","description":"Cross-site scripting (XSS) vulnerability in IPython before 3.2 allows remote attackers to inject arbitrary web script or HTML via vectors involving JSON error messages and the /api/notebooks path.","status":"withdrawn","published":"2017-09-20T18:29:00Z","modified":"2025-07-16T07:17:32.933765Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:54:10.385269Z"},{"id":"MGASA-2015-0300","title":"Updated ipython package fixes security vulnerability","description":"JSON error responses from the IPython notebook REST API contained\nURL parameters and were incorrectly reported as text/html instead of\napplication/json. The error messages included some of these URL params,\nresulting in a cross site scripting attack (CVE-2015-4707).\n\nPOST requests exposed via the IPython REST API are vulnerable to\ncross-site request forgery (CSRF). Web pages on different domains can make\nnon-AJAX POST requests to known IPython URLs, and IPython will honor them.\nThe user's browser will automatically send IPython cookies along with the\nrequests. The response is blocked by the Same-Origin Policy, but the\nrequest isn't (CVE-2015-5607).\n\nThe Mageia 5 package has been patched to fix these issues.  The Mageia 4\npackage wasn't vulnerable to CVE-2015-4707, but it has been updated and\npatched to fix CVE-2015-5607.\n","status":"published","published":"2015-08-03T20:55:18Z","modified":"2026-04-16T06:24:24.734065966Z","updated_at":"2026-11-02T15:49:39.792687Z"},{"id":"PYSEC-2017-46","description":"Cross-site scripting (XSS) vulnerability in IPython before 3.2 allows remote attackers to inject arbitrary web script or HTML via vectors involving JSON error messages and the /api/notebooks path.","status":"published","published":"2017-09-20T18:29:00Z","modified":"2023-11-08T03:57:55.719283Z","updated_at":"2026-11-02T15:52:51.645172Z"}]}}
