CVE-2024-28179: Jupyter Server Proxy's Websocket Proxying does not require authentication
jupyter-server-proxy
is used to expose ports local to a Jupyter server listening to web traffic to the Jupyter server’s authenticated users by proxying web requests and websockets. Dependent packages (partial list) also use jupyter-server-proxy
to expose other popular interactive applications (such as RStudio, Linux Desktop via VNC, Code Server, Panel, etc) along with the Jupyter server. This feature is commonly used in hosted environments (such as a JupyterHub) to expose non-Jupyter interactive frontends or APIs to the user.
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.
References
- github.com/advisories/GHSA-w3vc-fx9p-wp4v
- github.com/jupyterhub/jupyter-server-proxy
- github.com/jupyterhub/jupyter-server-proxy/commit/764e499f61a87641916a7a427d4c4b1ac3f321a9
- github.com/jupyterhub/jupyter-server-proxy/commit/bead903b7c0354b6efd8b4cde94b89afab653e03
- github.com/jupyterhub/jupyter-server-proxy/security/advisories/GHSA-w3vc-fx9p-wp4v
- nvd.nist.gov/vuln/detail/CVE-2024-28179
Detect and mitigate CVE-2024-28179 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →