{"id":"CVE-2026-54527","aliases":["GHSA-f962-v9hr-pfg5","PYSEC-2026-2540","PYSEC-2026-2541"],"url":"https://o3.security/vulnerability/CVE-2026-54527","summary":"JupyterLab Git: Stored XSS leading to RCE","details":"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.","published":"2026-07-08T21:03:01.698Z","modified":"2026-08-12T03:51:38.884931295Z","cvss":null,"epss":{"score":0.00361,"percentile":0.29446,"asOf":"2026-08-21"},"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"npm","name":"@jupyterlab/git","fixedVersion":"0.54.0"},{"ecosystem":"PyPI","name":"jupyterlab-git","fixedVersion":"0.54.0"},{"ecosystem":"PyPI","name":"jupyterlab-git-core","fixedVersion":"0.54.0"}],"fix":{"url":"https://github.com/jupyterlab/jupyterlab-git/commit/c6d37b88f36aa59aee317930b95e427fb9d6b09b","label":"jupyterlab/jupyterlab-git@c6d37b8"},"references":[{"type":"WEB","url":"https://github.com/jupyterlab/jupyterlab-git/releases/tag/v0.54.0"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54527.json"},{"type":"ADVISORY","url":"https://github.com/jupyterlab/jupyterlab-git/security/advisories/GHSA-f962-v9hr-pfg5"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54527"},{"type":"FIX","url":"https://github.com/jupyterlab/jupyterlab-git/commit/c6d37b88f36aa59aee317930b95e427fb9d6b09b"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-12T03:51:38.884931295Z"}}