CVE-2026-114135: Jupyter Server gateway WebSocket handler skips kernel authorization

jupyter-server Updated 22 Oct 2026

Summary

22/10/2026
Yes i
High
8.8

CVE-2026-114135: Authenticated users denied kernel execution may still open kernel channels, execute code, and access data or credentials available to those kernels. Affects jupyter-server versions >= 2.0.0, < 2.6.0. Fixed in 2.6.0. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Lume, the Habilume companion Habilume Habit tracker with a companion that grows with you Complete habits, earn Lume Points, and watch your Lume grow as you stay consistent. App Store Google Play

Background

Jupyter Server is a Python server package in the PyPI ecosystem. It provides the server-side services used by Jupyter applications, including kernel communication over WebSockets. Deployments can connect it to a Jupyter Gateway or Enterprise Gateway, where configured authorization rules control which authenticated users may execute kernels.

Vulnerability Detail

The missing authorization check lets an authenticated user bypass a restriction on kernel execution and send messages to an upstream kernel. In the default gateway configuration, Jupyter Server versions 2.0.0 through 2.5.0 replace the normal kernel channel handler with a gateway WebSocket handler that checks authentication but does not ask the configured Authorizer whether the user may execute kernels. This is an authorization bypass, not an authentication bypass, and can expose kernel-accessible data and credentials.

How To Fix

Latest published version: 2.21.1 as of 23 Oct 2026

pip install --upgrade "jupyter-server==2.21.1"

Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.

If you need the minimum change

2.6.0

This is the first release that contains the fix.

pip install --upgrade "jupyter-server==2.6.0"

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

AI-generated workaround (not vendor-documented): For jupyter-server, disable gateway mode or restrict access to gateway WebSocket routes until upgrading. If gateway access is required, limit it to trusted users and verify that the configured authorization policy denies unauthorized kernel execution.

Documented mitigation:

authorizer.is_authorized(...)

Conclusion

Upgrade jupyter-server to 2.6.0 or later to address the default gateway configuration issue. The deprecated handler can still expose the behavior if registered directly, so review whether that handler is in use. Vulert monitors the dependencies in Pipfile.lock and alerts when a new vulnerability affects them; check an application at https://vulert.com/scanner.

See every vulnerability recorded for jupyter-server →

Share this vulnerability

FAQ

CVE-2026-114135 affects jupyter-server 2.0.0 through 2.5.0 in the default gateway configuration.

CVE-2026-114135 can let an authenticated user open a kernel channel, execute code, and access data or credentials available to that kernel.

Upgrade jupyter-server to the minimum fixed version, 2.6.0.

For jupyter-server, disable gateway mode or restrict gateway WebSocket access to trusted users until upgrading.

Check Pipfile.lock manually for jupyter-server. Vulert can scan a manifest or SBOM and monitor the dependency at Vulert Scanner.

Related vulnerabilities

Recent vulnerabilities recorded for jupyter-server.

Sponsored Lume, the Habilume companion Habilume Habit tracker with a companion that grows with you Complete habits, earn Lume Points, and watch your Lume grow as you stay consistent. App Store Google Play

How To Fix

Latest published version: 2.21.1 as of 23 Oct 2026

pip install --upgrade "jupyter-server==2.21.1"

Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.

If you need the minimum change

2.6.0

This is the first release that contains the fix.

pip install --upgrade "jupyter-server==2.6.0"

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback