Jupyter Server Proxy's Websocket Proxying does not require authentication
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub. Impact type from CWE-306.
Summary
Jupyter Server Proxy allows users to run arbitrary external processes alongside their Jupyter notebook servers and provides authenticated web access. Prior to versions 3.2.3 and 4.1.1, Jupyter Server Proxy did not check user authentication appropriately when proxying websockets, allowing unauthenticated access to anyone who had network access to the Jupyter server endpoint. This vulnerability can allow unauthenticated remote access to any websocket endpoint set up to be accessible via Jupyter Server Proxy. In many cases, this leads to remote unauthenticated arbitrary code execution, due to how affected instances use websockets. The websocket endpoints exposed by `jupyter_server` itself is not affected. Projects that do not rely on websockets are also not affected. Versions 3.2.3 and 4.1.1 contain a fix for this issue.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- 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 |
|---|---|---|---|---|---|
| jupyterhub | jupyter-server-proxy | 4.0.0 to before 4.1.1; before 3.2.3 | 4.1.1, 3.2.3 | Patch available | CNA |
| — | jupyter-server-proxy (PyPI) | 4.0.0 to before 4.1.1 | 4.1.1 | Patch available | GHSA-w3vc-fx9p-wp4v |
| — | jupyter-server-proxy (PyPI) | before 3.2.3 | 3.2.3 | Patch available | GHSA-w3vc-fx9p-wp4v |
- jupyter-server-proxy Vendorjupyterhub Affected 4.0.0 to before 4.1.1; before 3.2.3 Fixed in 4.1.1, 3.2.3 Patch available CNA
- jupyter-server-proxy (PyPI) Vendor— Affected 4.0.0 to before 4.1.1 Fixed in 4.1.1 Patch available GHSA-w3vc-fx9p-wp4v
- jupyter-server-proxy (PyPI) Vendor— Affected before 3.2.3 Fixed in 3.2.3 Patch available GHSA-w3vc-fx9p-wp4v
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:jupyter:jupyter_server_proxy:*:*:*:*:*:*:*:* | before 3.2.3; 4.0.0 to before 4.1.1 | Vulnerable | jupyterlab |
- cpe:2.3:a:jupyter:jupyter_server_proxy:*:*:*:*:*:*:*:* Versions before 3.2.3; 4.0.0 to before 4.1.1 Vulnerable ·jupyterlab
Remediation
- Fix · CNA jupyter-server-proxy (jupyterhub) Fixed in 4.1.1, 3.2.3
- Fix · GHSA-w3vc-fx9p-wp4v jupyter-server-proxy (PyPI) Fixed in 4.1.1 Advisory →
- Fix · GHSA-w3vc-fx9p-wp4v jupyter-server-proxy (PyPI) Fixed in 3.2.3 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2024-28179
- 2026-10-03 Alias added: GHSA-w3vc-fx9p-wp4v
References
Patch 2
Advisory 2
More jupyterhub vulnerabilities
- TI-2025-23499 Jupyter Remote Desktop Proxy makes TigerVNC accessible via the network and not just via a UNIX socket as intended CVSS 4.0CRITICAL 9.0
- TI-2023-10877 JupyterHub's LTI13Authenticator: JWT signature not validated CVSS 3.1CRITICAL 10.0
- TI-2021-16545 Remote code execution in Binderhub CVSS 3.1CRITICAL 9.8
- TI-2021-18033 Improper Access Control in jupyterhub-firstuseauthenticator CVSS 3.1CRITICAL 9.8
- TI-2021-16546 Code injection in nbgitpuller CVSS 3.1CRITICAL 9.6
- TI-2024-23295 Jupyter Server Proxy has a reflected XSS issue in host parameter CVSS 3.1CRITICAL 9.7
Sources
- CVE-2024-28179 · CVE Program
- CVE-2024-28179 · NVD
- FIRST EPSS
- GHSA-w3vc-fx9p-wp4v · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences