jupyterhub up to 5.4.4 JSON API /hub/spawn cross-site request forgery
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 4.7 | $0-$5k | 0.00 |
Summary
A vulnerability has been found in jupyterhub up to 5.4.4 and classified as problematic. Affected by this vulnerability is an unknown functionality of the file /hub/spawn of the component JSON API. Performing a manipulation results in cross-site request forgery. This vulnerability is reported as CVE-2026-40864. The attack is possible to be carried out remotely. No exploit exists. The affected component should be upgraded.
Details
A vulnerability, which was classified as problematic, was found in jupyterhub up to 5.4.4. This affects an unknown part of the file /hub/spawn of the component JSON API. The manipulation with an unknown input leads to a cross-site request forgery vulnerability. CWE is classifying the issue as CWE-352. The web application does not, or can not, sufficiently verify whether a well-formed, valid, consistent request was intentionally provided by the user who submitted the request. This is going to have an impact on integrity. The summary by CVE is:
JupyterHub is software that allows users to create a multi-user server for Jupyter notebooks. In versions 4.1.0 through 5.4.4, XSRF protection (updated in 4.1.0) inappropriately treated requests with Sec-Fetch-Mode: no-cors as same-origin requests, bypassing XSRF checks. The JSON API is not affected, only HTTP form endpoints, such as /hub/spawn and /hub/accept-share, meaning attackers could trigger server spawn (but not access the server) and if the attacker is a JupyterHub user permitted to share access to their server, cause a user to accept a share and have access to the attacker's server. This issue has been fixed in version 5.4.5. If developers are unable to immediately upgrade, they can temporarily mitigate this issue by dropping requests to JupyterHub with Sec-Fetch-Mode: no-cors if they are using a reverse proxy.
The advisory is shared at github.com. This vulnerability is uniquely identified as CVE-2026-40864 since 04/15/2026. The exploitability is told to be easy. It is possible to initiate the attack remotely. No form of authentication is needed for exploitation. It demands that the victim is doing some kind of user interaction. Technical details are known, but no exploit is available.
The vulnerability scanner Nessus provides a plugin with the ID 316606 (Linux Distros Unpatched Vulnerability : CVE-2026-40864), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 5.4.5 eliminates this vulnerability. Applying the patch 9c5ec277d3cda5a59de2d8c8117efa77bd941127 is able to eliminate this problem. The bugfix is ready for download at github.com. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the vulnerability database at Tenable (316606). If you want to get the best quality for vulnerability data then you always have to consider VulDB.
Product
Name
Version
License
Website
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 4.8VulDB Meta Temp Score: 4.7
VulDB Base Score: 4.3
VulDB Temp Score: 4.1
VulDB Vector: 🔒
VulDB Reliability: 🔍
CNA Base Score: 5.4
CNA Vector (GitHub_M): 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Cross-site request forgeryCWE: CWE-352 / CWE-862 / CWE-863
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
Availability: 🔒
Status: Not defined
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 316606
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2026-40864
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: jupyterhub 5.4.5
Patch: 9c5ec277d3cda5a59de2d8c8117efa77bd941127
Timeline
04/15/2026 CVE reserved05/23/2026 Advisory disclosed
05/23/2026 VulDB entry created
05/26/2026 VulDB entry last update
Sources
Product: github.comAdvisory: GHSA-m68r-v472-jgq9
Status: Confirmed
CVE: CVE-2026-40864 (🔒)
GCVE (CVE): GCVE-0-2026-40864
GCVE (VulDB): GCVE-100-365277
Entry
Created: 05/23/2026 07:49Updated: 05/26/2026 02:07
Changes: 05/23/2026 07:49 (67), 05/26/2026 02:07 (2)
Complete: 🔍
Cache ID: 216::103
If you want to get the best quality for vulnerability data then you always have to consider VulDB.
No comments yet. Languages: en.
Please log in to comment.