CVE-2026-35397
Description
Jupyter Server is the backend for Jupyter web applications. In versions 2.17.0 and earlier, a path traversal vulnerability in the REST API allows an authenticated user to escape the configured root_dir and access sibling directories whose names begin with the same prefix as the root_dir. For example, with a root_dir named "test", the API permits access to a sibling directory named "testtest" through a crafted request to the /api/contents endpoint using encoded path components. An attacker can read, write, and delete files in affected sibling directories. Multi-tenant deployments using predictable naming schemes are particularly at risk, as a user with a directory named "user1" could access directories for user10 through user19 and beyond. A user who can choose a single-character folder name could gain access to a significant number of sibling directories. Version 2.18.0 contains a fix. As a workaround, ensure folder names do not share a common prefix with any sibling directory.
Predictions
Heuristic predictions, AS-IS, for prioritization only.
Mitigations
Vendor advisory: debian — https://security-tracker.debian.org/tracker/CVE-2026-35397
Vendor advisory: security-advisories@github.com — https://github.com/jupyter-server/jupyter_server/security/advisories/GHSA-5789-5fc7-67v3
OS impact
| OS | Version | Status | Fixed in |
|---|---|---|---|
| debian | bookworm | affected | |
| debian | bullseye | affected | |
| debian | forky | affected | |
| debian | sid | affected | |
| debian | trixie | affected | |
Package impact
| Ecosystem | Package | Vulnerable | Fixed |
|---|---|---|---|
| PyPI | jupyter-server | <2.18.0 | 2.18.0 |
| PIP | jupyter-server | <= 2.17.0 | 2.18.0 |
Application impact
| Vendor | Product | Versions | Fixed |
|---|---|---|---|
| jupyter | jupyter_server | {"endExcluding":"2.18.0"} | 2.18.0 |
References
CWEs
CWE-22
Verify integrity in audit chain (admin only). AS-IS.