Medium severity · published May 5, 2026
CVE-2026-40934
jupyter-server authentication cookies remain valid after password reset due to static cookie secret
6.8
CVSS
0.3%
EPSS
No
On KEV
Description
Jupyter Server is the backend for Jupyter web applications. In versions 2.17.0 and earlier, the secret used to sign authentication cookies is persisted to a static file at ~/.local/share/jupyter/runtime/jupyter_cookie_secret and is never rotated when a user changes their password. After a password reset and server restart, any previously issued authentication cookie remains cryptographically valid because the signing key has not changed. An attacker who has captured a session cookie through any means retains full authenticated access to the server regardless of subsequent password changes. This affects deployments using password-based authentication, particularly shared or public-facing servers where credential rotation is expected to revoke existing sessions. This issue has been fixed in version 2.18.0.
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N
Attack vector
Network
Complexity
High
Privileges
Low
User interaction
None
Confidentiality
High
Integrity
High
Availability
None
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.3% · higher than 26% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
JU
jupyter_server · jupyter-server
< 2.18.0 · source: vendor
JS
Jupyter Server · Jupyter
before 2.18.0 · source: NVD
Affected product
JU
jupyter_server
jupyter-server
More from jupyter_server
8.8
CVE-2026-114135
Jupyter Server: Gateway WebSocket handler bypasses kernel execute authorization
8.8
CVE-2026-35397
jupyter-server path traversal allows access to sibling directories sharing root_dir name prefix
7.3
CVE-2026-40110
jupyter-server CORS origin validation bypass via unanchored regex in allow_origin_pat
7.1
CVE-2026-86049
Jupyter Server: 5xx request logging leaks token-bearing Referer header values
6.1
CVE-2025-61669
jupyter_server next parameter open redirect can redirect users to external domains