CORS Origin Validation Bypass in jupyter-server
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Deferred Red Hat: fix deferred
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and Red Hat. Impact type from CWE-346.
Summary
A vulnerability in jupyter-server versions 1.12.0 through 2.17.0 allows an attacker to bypass CORS origin validation when the `allow_origin_pat` configuration is used. The issue arises from the use of `re.match()` for validating the `Origin` header, which only anchors at the start of the string. This allows attacker-controlled domains such as `trusted.example.com.evil.com` to pass validation against patterns intended to match `trusted.example.com`. The vulnerability affects multiple locations in the codebase, including CORS headers, WebSocket connections, referer validation, and login redirects, potentially enabling phishing attacks, arbitrary code execution, and unauthorized access to sensitive API responses.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| jupyterlab | jupyter/jupyter | up to latest | — | No fix listed | CNA |
- jupyter/jupyter Vendorjupyterlab Affected up to latest Fixed in — No fix listed CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:jupyter:jupyter_server:*:*:*:*:*:*:*:* | 1.12.0 – 2.17.0 | Vulnerable | jupyterlab |
- cpe:2.3:a:jupyter:jupyter_server:*:*:*:*:*:*:*:* Versions 1.12.0 – 2.17.0 Vulnerable ·jupyterlab
Remediation
No fixed version listed by the sources yet.
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Migration Toolkit for Applications 8 | Affected | No fix yet: Fix deferred |
| Red Hat OpenShift AI (RHOAI) | Affected | No fix yet: Fix deferred |
Timeline
- 2026-10-02 Threatist record created from CVE-2026-6657
- 2026-10-25 EPSS moved to the 90th–95th percentile
References
More jupyterlab Jupyter Server vulnerabilities
- TI-2026-04748 Path Traversal in jupyter/jupyter CVSS 3.1HIGH 8.1
- TI-2026-27533 jupyter-server path traversal allows access to sibling directories sharing root_dir name prefix CVSS 4.0HIGH 7.6
- TI-2025-38102 jupyter_server next parameter open redirect can redirect users to external domains CVSS 4.0MEDIUM 6.3
- TI-2026-32614 Jupyter Server: Stored XSS in `NbconvertFileHandler` / `NbconvertPostHandler` via missing `sandbox` CSP CVSS 4.0CRITICAL 9.3
- TI-2024-23252 Jupyter server on Windows discloses Windows user password hash CVSS 3.1HIGH 7.5
- TI-2022-11782 Known or guessable hidden files may be accessed in Jupyter Server CVSS 3.1HIGH 8.8
Sources
- CVE-2026-6657 · CVE Program
- CVE-2026-6657 · NVD
- FIRST EPSS
- CVE-2026-6657 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences