High severity · published May 5, 2026
CVE-2026-40110
jupyter-server CORS origin validation bypass via unanchored regex in allow_origin_pat
7.3
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 Origin header validation uses Python's re.match() to check incoming origins against the allow_origin_pat configuration value. Because re.match() only anchors at the start of the string and does not require a full match, a pattern intended to match only a trusted domain (e.g., trusted.example.com) will also match any origin that begins with that domain followed by additional characters (e.g., trusted.example.com.evil.com). An attacker who controls such a domain can bypass the CORS origin restriction and make cross-origin requests to the Jupyter Server API from an untrusted site. This issue has been fixed in version 2.18.0.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N
Attack vector
Network
Complexity
Low
Privileges
Low
User interaction
Required
Confidentiality
High
Integrity
High
Availability
None
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.3% · higher than 24% 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.17.0 · source: vendor
JS
Jupyter Server · Jupyter
before 2.18.0 · source: NVD
RH
Red Hat Migration Toolkit for Applications 8.2 · Red Hat
All versions, or not specified · source: CISA
RH
Red Hat OpenShift AI (RHOAI) · Red Hat
All versions, or not specified · source: CISA
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-40110
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-40110
Patch
https://github.com/jupyter-server/jupyter_server/commit/057869a327c46730afede3eab0ca2d2e3e74acea
Patch
https://github.com/jupyter-server/jupyter_server/commit/49b34392feaa97735b3b777e3baf8f22f2a14ed8
Issue Tracking
https://github.com/jupyter-server/jupyter_server/pull/603
Mitigation
https://github.com/jupyter-server/jupyter_server/security/advisories/GHSA-24qx-w28j-9m6p
access.redhat.com
https://access.redhat.com/errata/RHSA-2026:43038
access.redhat.com
https://access.redhat.com/security/cve/CVE-2026-40110
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.1
CVE-2026-86049
Jupyter Server: 5xx request logging leaks token-bearing Referer header values
6.8
CVE-2026-40934
jupyter-server authentication cookies remain valid after password reset due to static cookie secret
6.1
CVE-2025-61669
jupyter_server next parameter open redirect can redirect users to external domains
