Vulnerability · Published Sep 29, 2026 · Assigned by GitHub_M
CVE-2026-102831JupyterLab: Cross-site scripting (XSS) in JupyterLab via notebook cells pasted from the system clipboard
High 8.1
In plain English
A high-severity cross-site scripting in jupyterlab from jupyterlab. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 15% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
JupyterLab is an extensible environment for interactive and reproducible computing, based on the Jupyter Notebook Architecture. From JupyterLab 4.5.0 until 4.5.11 and 4.6.4, from Notebook 7.5.0 until 7.6.3, and from JupyterLite Core 0.7.0 until 0.8.4, the system clipboard cell-paste path accepts attacker-controlled cell JSON without clearing metadata.trusted. When useSystemClipboardForCells is active and pasteCodeCellsWithoutOutput is disabled, a pasted code cell can mark HTML output as trusted, bypass output sanitization, and execute script in the authenticated JupyterLab origin without executing the cell. Markdown and raw cells are not affected because their output is sanitized. This issue is fixed in JupyterLab 4.5.11 and 4.6.4, Notebook 7.6.3, and JupyterLite Core 0.8.4.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | jupyter-notebook | no fix listed | DEBIAN-CVE-2026-102831 |
| Debian:13 | jupyter-notebook | no fix listed | DEBIAN-CVE-2026-102831 |
| Debian:14 | jupyter-notebook | no fix listed | DEBIAN-CVE-2026-102831 |
| PyPI | jupyterlab | 4.5.11 | GHSA-6966-vjj6-99xv |
| PyPI | jupyterlab | 4.5.11, 4.6.4 | PYSEC-2026-4057 |
| PyPI | jupyterlab | 4.6.4 | GHSA-6966-vjj6-99xv |
| PyPI | jupyterlite | 0.8.4 | PYSEC-2026-4058 |
| PyPI | jupyterlite | 0.8.4 | GHSA-6966-vjj6-99xv |
| PyPI | jupyterlite-core | 0.8.4 | PYSEC-2026-4060 |
| PyPI | jupyterlite-core | 0.8.4 | GHSA-6966-vjj6-99xv |
| PyPI | notebook | 7.6.3 | PYSEC-2026-4112 |
| PyPI | notebook | 7.6.3 | GHSA-6966-vjj6-99xv |
| Ubuntu:26.04:LTS | jupyter-notebook | no fix listed | UBUNTU-CVE-2026-102831 |
| Ubuntu:26.10 | jupyter-notebook | no fix listed | UBUNTU-CVE-2026-102831 |
| Ubuntu:26.04:LTS | jupyterlab | no fix listed | UBUNTU-CVE-2026-102831 |
| Ubuntu:26.10 | jupyterlab | no fix listed | UBUNTU-CVE-2026-102831 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| jupyterlab | jupyterlab | >= 4.5.0, < 4.5.11>= 4.6.0, < 4.6.4 |
| jupyterlab | notebook | >= 7.5.0, < 7.6.3 |
| jupyterlab | jupyterlite-core | >= 0.7.0, < 0.8.4 |
Weakness: CWE-79, CWE-345 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N
References
- https://github.com/jupyterlab/jupyterlab/security/advisories/GHSA-6966-vjj6-99xv x_refsource_CONFIRM
- https://github.com/jupyterlab/jupyterlab/commit/1a10a7da5ff655849b21581c2633b46483ae0be9 x_refsource_MISC
- https://github.com/jupyterlab/jupyterlab/commit/7f9f29e29e0c83fb17b0f11da57d06b3c6a40d96 x_refsource_MISC
- https://github.com/jupyterlab/jupyterlab/commit/cf6e89a8d315c4134cefa50c220bca296da466a7 x_refsource_MISC
- https://github.com/jupyterlab/jupyterlab/releases/tag/v4.5.11 x_refsource_MISC
- https://github.com/jupyterlab/jupyterlab/releases/tag/v4.6.4 x_refsource_MISC