CVE-2026-44727
CVE-2026-44727 · Jupyter Server: Stored XSS in `NbconvertFileHandler` / `NbconvertPostHandler` via missing `sandbox` CSP
This page contains facts from public vulnerability sources. Check the original advisory before updating.
Jupyter Server is the backend for Jupyter web applications. Prior to 2.20, the nbconvert HTTP handlers in jupyter_server render user-authored notebook HTML under the Jupyter origin without a sandbox directive in their Content-Security-Policy. Combined with nbconvert.HTMLExporter's default non-sanitizing behavior, a notebook carrying an HTML payload in a display_data output triggers stored XSS with cookie access, full /api/* authority, and kernel RCE. This vulnerability is fixed in 2.20.
CVSS 9.3 · Critical · EPSS 0.4% · Fix available
- Published
- Updated
Affected products and versions
jupyter_server
- Versions
- < 2.20: Affected
No fix published
jupyter-server Debian:12
- Versions
- 1.23.3-1
- 1.23.3-2
- 2.14.0-1
- 2.14.2-1
- 2.14.2-2
- 2.14.2-3
- 2.14.2-4
- 2.14.2-5
- 2.15.0-1
- 2.17.0-1
- 2.20.0-1
- 2.20.0-2
- 2.20.0-3
- 2.9.1-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
jupyter-server Debian:13
- Versions
- 2.15.0-1
- 2.17.0-1
- 2.20.0-1
- 2.20.0-2
- 2.20.0-3
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
jupyter-server Debian:14
- Versions
- 2.15.0-1
- 2.17.0-1
- Affected ranges
- ECOSYSTEM: < 2.20.0-1
Update to 2.20.0-1
jupyter-server PyPI
- Versions
- 0.0.0
- 0.0.1
- 0.0.2
- 0.0.3
- 0.0.4
- 0.0.5
- 0.1.0
- 0.1.1
- 0.2.0
- 0.2.1
- 0.3.0
- 1.0.0
- 1.0.0rc0
- 1.0.0rc1
- 1.0.0rc10
- 1.0.0rc11
- 1.0.0rc12
- 1.0.0rc13
- 1.0.0rc14
- 1.0.0rc15
- 1.0.0rc16
- 1.0.0rc2
- 1.0.0rc3
- 1.0.0rc4
- 1.0.0rc5
- 1.0.0rc6
- 1.0.0rc7
- 1.0.0rc8
- 1.0.0rc9
- 1.0.1
- 1.0.10
- 1.0.11
- 1.0.2
- 1.0.3
- 1.0.4
- 1.0.5
- 1.0.6
- 1.0.7
- 1.0.8
- 1.0.9
- 1.1.0
- 1.1.1
- 1.1.2
- 1.1.3
- 1.1.4
- 1.10.0
- 1.10.1
- 1.10.2
- 1.11.0
- 1.11.1
- 1.11.2
- 1.12.0
- 1.12.1
- 1.13.0
- 1.13.1
- 1.13.2
- 1.13.3
- 1.13.4
- 1.13.5
- 1.15.0
- 1.15.1
- 1.15.2
- 1.15.3
- 1.15.4
- 1.15.5
- 1.15.6
- 1.16.0
- 1.17.0
- 1.17.1
- 1.18.0
- 1.18.1
- 1.19.0
- 1.19.1
- 1.2.0
- 1.2.1
- 1.2.2
- 1.2.3
- 1.21.0
- 1.23.0
- 1.23.1
- 1.23.2
- 1.23.3
- 1.23.4
- 1.23.5
- 1.23.6
- 1.24.0
- 1.3.0
- 1.4.0
- 1.4.1
- 1.5.0
- 1.5.1
- 1.6.0
- 1.6.1
- 1.6.2
- 1.6.3
- 1.6.4
- 1.7.0
- 1.7.0a1
- 1.7.0a2
- 1.8.0
- 1.9.0
- 2.0.0
- 2.0.0a0
- 2.0.0a1
- 2.0.0a2
- 2.0.0b0
- 2.0.0b1
- 2.0.0rc0
- 2.0.0rc1
- 2.0.0rc2
- 2.0.0rc3
- 2.0.0rc4
- 2.0.0rc5
- 2.0.0rc6
- 2.0.0rc7
- 2.0.0rc8
- 2.0.1
- 2.0.2
- 2.0.3
- 2.0.4
- 2.0.5
- 2.0.6
- 2.0.7
- 2.1.0
- 2.10.0
- 2.10.1
- 2.11.0
- 2.11.1
- 2.11.2
- 2.12.0
- 2.12.1
- 2.12.2
- 2.12.3
- 2.12.4
- 2.12.5
- 2.13.0
- 2.14.0
- 2.14.1
- 2.14.2
- 2.15.0
- 2.16.0
- 2.17.0
- 2.18.0
- 2.18.1
- 2.18.2
- 2.19.0
- 2.2.0
- 2.2.1
- 2.3.0
- 2.4.0
- 2.5.0
- 2.6.0
- 2.7.0
- 2.7.1
- 2.7.2
- 2.7.3
- 2.8.0
- 2.9.0
- 2.9.1
- Affected ranges
- ECOSYSTEM: < 2.20.0
Update to 2.20.0
jupyter-server Ubuntu:22.04:LTS
- Versions
- 1.2.2-1
- 1.13.1-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
jupyter-server Ubuntu:24.04:LTS
- Versions
- 1.23.3-1
- 1.23.3-2
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
jupyter-server Ubuntu:25.10
- Versions
- 2.14.2-5
- 2.15.0-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
jupyter-server Ubuntu:26.10
- Versions
- 2.17.0-1
- 2.20.0-3
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
jupyter-server Ubuntu:26.04:LTS
- Versions
- 2.15.0-1
- 2.17.0-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
Original sources
- https://github.com/jupyter-server/jupyter_server/security/advisories/GHSA-fcw5-x6j4-ccmp
- https://github.com/jupyter-server/jupyter_server/commit/6cbee8d65e71abac851c4492fea987ad080580bd
- https://access.redhat.com/security/cve/CVE-2026-44727
- https://bugzilla.redhat.com/show_bug.cgi?id=2491516
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-44727.json
- https://access.redhat.com/errata/RHSA-2026:43038
- https://access.redhat.com/errata/RHSA-2026:60520
- https://nvd.nist.gov/vuln/detail/CVE-2026-44727