All vulnerabilities
CRITICALSupply chaincurated

CVE-2026-44727

PyPI · jupyter-server

Summary

Jupyter Server before 2.20.0 has a stored cross-site scripting flaw (CVE-2026-44727). The `NbconvertFileHandler` and `NbconvertPostHandler` served converted notebook output without a sandboxing Content-Security-Policy, so malicious HTML or JavaScript embedded in a notebook executes in the victim's browser within the Jupyter origin. Opening or being shown a crafted notebook can hijack a user's Jupyter session.

How to fix it

  • Upgrade `jupyter-server` to 2.20.0 or later, which restores the sandbox Content-Security-Policy on the nbconvert handlers.
  • Until you upgrade, treat notebooks from untrusted sources as hostile and do not open or render them in a shared Jupyter instance.

How to avoid it in your code

  • Render untrusted, user-controlled content under a strict sandboxing Content-Security-Policy, and serve downloadable HTML from a separate origin where possible.
  • Sanitize or escape document and notebook output that can contain HTML or JavaScript before display.
  • Keep notebook and data-science tooling patched; these tools routinely render untrusted input and are a recurring XSS surface.

References