# CVE-2026-54528: JupyterLab Git case-sensitivity bypass in excluded_paths

Source: https://junglewise.ai/threats/cve-2026-54528-jupyterlab-git-case-sensitivity-bypass-in-excluded-paths  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-07-08. Updated: 2026-07-08  
License: CC BY 4.0 with a link back

CVE-2026-54528 · Severity: high · CVSS 7.1 · Published 2026-07-08

JupyterLab Git is an extension that allows users to manage Git repositories directly within the JupyterLab interface. A security flaw in how the extension handles file path restrictions allows authenticated users to bypass access controls on systems with case-insensitive filesystems (such as Windows or macOS). By simply changing the capitalization of a folder name in a web request, an attacker can view sensitive files, git history, and source code that administrators intended to keep hidden.

Technologies: [jupyterlab-git (PyPI)](https://junglewise.ai/threats/technologies/jupyterlab-git). Vendors: [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2026-54528 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-54528 being exploited in the wild.

**How severe is CVE-2026-54528?** High severity, with a CVSS score of 7.1, published 8 July 2026.

**Which products and versions are affected?** jupyterlab-git (PyPI) <= 0.53.0, ECOSYSTEM:introduced=0,fixed=0.54.0.

**Is there a fix for CVE-2026-54528?** Yes. jupyterlab-git (PyPI): upgrade to 0.54.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-54528 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-54528?** Check whether you run jupyterlab-git (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- jupyterlab-git (PyPI): upgrade to 0.54.0 or later

  ```sh
  pip install "jupyterlab-git>=0.54.0"
  ```


## Technical details

The vulnerability exists in the GitHandler.prepare() method within jupyterlab_git/handlers.py. The extension uses fnmatch.fnmatchcase() to validate requested paths against an admin-defined 'excluded_paths' list. Because fnmatchcase() is strictly case-sensitive, it fails to block requests where the path casing is modified (e.g., '/Secrets/' instead of '/secrets/'). On case-insensitive filesystems like NTFS (Windows) or APFS (macOS), these varied paths resolve to the same underlying directory. An authenticated attacker can exploit this to bypass security controls and access the /content, /status, and /diff endpoints for restricted directories. The issue is resolved in version 0.54.0 by implementing case-folding during the comparison.

## Affected products

- jupyterlab jupyterlab-git < 0.54.0

## Identifiers

- CVE-2026-54528
- GHSA-436q-jwfr-rm2h
- PYSEC-2026-2539

## Timeline

- 2026-06-17: patched: Version 0.54.0 released
- 2026-06-18: advisory: GitHub Security Advisory published
- 2026-07-08: disclosed: CVE published to NVD

## References

- [https://github.com/jupyterlab/jupyterlab-git/commit/460035275b5963dc96e364e60ba6a73717fbd033](https://github.com/jupyterlab/jupyterlab-git/commit/460035275b5963dc96e364e60ba6a73717fbd033)
- [https://github.com/jupyterlab/jupyterlab-git/releases/tag/v0.54.0](https://github.com/jupyterlab/jupyterlab-git/releases/tag/v0.54.0)
- [https://github.com/jupyterlab/jupyterlab-git/security/advisories/GHSA-436q-jwfr-rm2h](https://github.com/jupyterlab/jupyterlab-git/security/advisories/GHSA-436q-jwfr-rm2h)

## Related threats

- [JupyterLab Git stored XSS leading to RCE in Git History tab](https://junglewise.ai/threats/cve-2026-54527-jupyterlab-git-stored-xss-leading-to-rce-in-git-history-tab)
- [PYSEC-2026-1483 - jupyterlab-git has a command injection vulnerability in "Open Git Repository in Terminal"](https://junglewise.ai/threats/cve-2025-30370-jupyterlab-git-has-a-command-injection-vulnerability-in-open-git)
