CVE-2026-35397
HighCVSS 8.8Exploitation Probability (EPSS)
Low risk45th percentile - higher than 45% of all known CVEs
Summary
Jupyter Server versions 2.17.0 and earlier contain a path traversal vulnerability in the REST API that 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. An attacker can read, write, and delete files in affected sibling directories. Multi-tenant deployments with predictable naming schemes are particularly at risk. Version 2.18.0 contains a fix.
Risk Assessment
The organization is at risk of unauthorized access to other users' files in multi-tenant environments, potentially leading to data leakage and integrity violations.
Recommendation
Immediately upgrade Jupyter Server to version 2.18.0 or later. As a temporary workaround, ensure folder names do not share a common prefix with any sibling directory.
Other vulnerabilities in Jupyter Server
See all- CVE-2026-44727Medium
Jupyter Server prior to version 2.20 has a stored XSS vulnerability in nbconvert handlers. A notebook with an HTML payload in display_data output can lead to cookie theft, full API access, and kernel RCE.
- CVE-2026-6657High
In jupyter-server versions 1.12.0 through 2.17.0, a vulnerability allows bypassing CORS origin validation when using `allow_origin_pat`. The issue is due to `re.match()` only anchoring at the start, allowing attacker-controlled domains like `trusted.example.com.evil.com` to pass validation for patterns intended for `trusted.example.com`. This affects CORS headers, WebSocket connections, referer validation, and login redirects, potentially enabling phishing, arbitrary code execution, and unauthorized access to sensitive API responses.
- CVE-2026-5422High
A path traversal vulnerability in jupyter-server 2.17.0 due to an incorrect root directory boundary check in the _get_os_path() function. This allows unauthorized read/write access to files in sibling directories.
- CVE-2026-40934Medium
Jupyter Server up to version 2.17.0 persists the secret used to sign authentication cookies to a static file and does not rotate it after a password change. After a password reset and server restart, previously issued cookies remain valid, allowing an attacker who captured a session cookie to retain access despite the password change.
- CVE-2026-40110High
Jupyter Server versions 2.17.0 and earlier use re.match() for Origin header validation, allowing bypass of CORS restrictions. An attacker controlling a domain like trusted.example.com.evil.com can make cross-origin requests to the server API.
- CVE-2023-40170Medium
In jupyter-server, improper cross-site credential checks on `/files/` URLs could allow exposure of certain file contents or accessing files when opening untrusted files. This issue has been addressed in version `2.7.2`.
- CVE-2023-39968Medium
The vulnerability in jupyter-server allows for an Open Redirect attack, enabling redirection of users to arbitrary sites after logging into a Jupyter server. Maliciously crafted login links can lead to unauthorized redirects.
Original NVD description (English source)
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.

