Vulnerability · Published Jul 8, 2026 · Assigned by GitHub_M
CVE-2026-54527JupyterLab Git: Stored XSS leading to RCE
Critical 9.3
In plain English
A critical-severity cross-site scripting in jupyterlab-git from jupyterlab. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 45% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
JupyterLab Git is a Git extension for JupyterLab. From 0.30.0b3 before 0.54.0, the PlainTextDiff.ts createHeader() method passes Git filenames directly to innerHTML when rendering renamed files in commit history, allowing a crafted filename to execute JavaScript when a victim views the rename diff in the Git History tab. This issue is fixed in version 0.54.0.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| PyPI | jupyterlab-git | 0.54.0 | GHSA-f962-v9hr-pfg5 |
| PyPI | jupyterlab-git | 0.54.0 | PYSEC-2026-2540 |
| PyPI | jupyterlab-git-core | 0.54.0 | GHSA-f962-v9hr-pfg5 |
| PyPI | jupyterlab-git-core | 0.54.0 | PYSEC-2026-2541 |
| npm | @jupyterlab/git | 0.54.0 | GHSA-f962-v9hr-pfg5 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| jupyterlab | jupyterlab-git | >= 0.30.0b3, < 0.54.0 |
Weakness: CWE-79 · Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H