{"id":"CVE-2026-54528","aliases":["GHSA-436q-jwfr-rm2h","PYSEC-2026-2539"],"url":"https://o3.security/vulnerability/CVE-2026-54528","summary":"jupyterlab-git excluded_paths Case-Sensitivity Bypass Allows Reading Excluded Directories","details":"JupyterLab Git is a Git extension for JupyterLab. Prior to 0.54.0, jupyterlab-git uses fnmatch.fnmatchcase() in GitHandler.prepare() in jupyterlab_git/handlers.py to enforce excluded_paths, allowing an authenticated user on a case-insensitive filesystem to vary URL path casing and read excluded directories. This issue is fixed in version 0.54.0.","published":"2026-07-08T21:04:18.613Z","modified":"2026-08-12T03:51:46.309400045Z","cvss":{"score":7.1,"severity":"HIGH","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N"},"epss":{"score":0.0035,"percentile":0.28299,"asOf":"2026-08-21"},"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"PyPI","name":"jupyterlab-git","fixedVersion":"0.54.0"}],"fix":{"url":"https://github.com/jupyterlab/jupyterlab-git/commit/460035275b5963dc96e364e60ba6a73717fbd033","label":"jupyterlab/jupyterlab-git@4600352"},"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-54528.json"},{"type":"ADVISORY","url":"https://github.com/jupyterlab/jupyterlab-git/security/advisories/GHSA-436q-jwfr-rm2h"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54528"},{"type":"FIX","url":"https://github.com/jupyterlab/jupyterlab-git/commit/460035275b5963dc96e364e60ba6a73717fbd033"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-12T03:51:46.309400045Z"}}