Description
JupyterLab before 4.5.9 contains a stored cross-site scripting vulnerability in the Extension Manager that fails to validate URI protocols in package metadata URLs. Attackers can publish malicious PyPI packages with javascript: URLs in project metadata that execute arbitrary JavaScript in the JupyterLab origin when users click the extension name.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| jupyterlab | jupyterlab | < 4.5.9 | 4.5.9 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | jupyterlab | 4.4.10+ds1+~3.1.0+~0.16.6+~cs1.4.4-4 | — |
| Debian 13 | jupyterlab | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | jupyterlab | No fix yet | — |
| Ubuntu 26.04 LTS | jupyterlab | No fix yet | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | jupyterlab | < 4.5.9 | 4.5.9 | GHSA-vmhf-c436-hxj4 |
References
- GitHub Security Advisory (GHSA-vmhf-c436-hxj4) vendor-advisory
- Patch Commit patch
- Patch Commit patch
- VulnCheck Advisory: JupyterLab before 4.5.9 Stored XSS via Extension Manager third-party-advisory