Skip to content
Heist/ feed
UnratedFix available

DEBIAN-CVE-2026-40110

Type: advisorySource: OSV1 source record

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.

Announced Group revision 1
Original source ↗

DEBIAN-CVE-2026-40110

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: osv:DEBIAN-CVE-2026-40110

jupyter-server

Source reference: /affected/0/package/name

Affected versions
1.23.3-1

Source reference: /affected/0/versions

1.23.3-2

Source reference: /affected/0/versions

2.14.0-1

Source reference: /affected/0/versions

2.14.2-1

Source reference: /affected/0/versions

2.14.2-2

Source reference: /affected/0/versions

2.14.2-3

Source reference: /affected/0/versions

2.14.2-4

Source reference: /affected/0/versions

2.14.2-5

Source reference: /affected/0/versions

2.15.0-1

Source reference: /affected/0/versions

2.17.0-1

Source reference: /affected/0/versions

2.20.0-1

Source reference: /affected/0/versions

2.20.0-2

Source reference: /affected/0/versions

2.20.0-3

Source reference: /affected/0/versions

2.9.1-1

Source reference: /affected/0/versions

Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

jupyter-server

Source reference: /affected/1/package/name

Affected versions
2.15.0-1

Source reference: /affected/1/versions

2.17.0-1

Source reference: /affected/1/versions

2.20.0-1

Source reference: /affected/1/versions

2.20.0-2

Source reference: /affected/1/versions

2.20.0-3

Source reference: /affected/1/versions

Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

jupyter-server

Source reference: /affected/2/package/name

Affected versions
2.15.0-1

Source reference: /affected/2/versions

2.17.0-1

Source reference: /affected/2/versions

Fixed versions
2.20.0-1

Source reference: /affected/2/ranges

Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "ranges": [
      {
        "type": "ECOSYSTEM",
        "events": [
          {
            "introduced": "0"
          }
        ]
      }
    ],
    "package": {
      "name": "jupyter-server",
      "purl": "pkg:deb/debian/jupyter-server?arch=source&distro=bookworm",
      "ecosystem": "Debian:12"
    },
    "versions": [
      "1.23.3-1",
      "1.23.3-2",
      "2.14.0-1",
      "2.14.2-1",
      "2.14.2-2",
      "2.14.2-3",
      "2.14.2-4",
      "2.14.2-5",
      "2.15.0-1",
      "2.17.0-1",
      "2.20.0-1",
      "2.20.0-2",
      "2.20.0-3",
      "2.9.1-1"
    ],
    "database_specific": {
      "source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-40110.json"
    },
    "ecosystem_specific": {
      "urgency": "not yet assigned"
    }
  },
  {
    "ranges": [
      {
        "type": "ECOSYSTEM",
        "events": [
          {
            "introduced": "0"
          }
        ]
      }
    ],
    "package": {
      "name": "jupyter-server",
      "purl": "pkg:deb/debian/jupyter-server?arch=source&distro=trixie",
      "ecosystem": "Debian:13"
    },
    "versions": [
      "2.15.0-1",
      "2.17.0-1",
      "2.20.0-1",
      "2.20.0-2",
      "2.20.0-3"
    ],
    "database_specific": {
      "source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-40110.json"
    },
    "ecosystem_specific": {
      "urgency": "not yet assigned"
    }
  },
  {
    "ranges": [
      {
        "type": "ECOSYSTEM",
        "events": [
          {
            "introduced": "0"
          },
          {
            "fixed": "2.20.0-1"
          }
        ]
      }
    ],
    "package": {
      "name": "jupyter-server",
      "purl": "pkg:deb/debian/jupyter-server?arch=source&distro=forky",
      "ecosystem": "Debian:14"
    },
    "versions": [
      "2.15.0-1",
      "2.17.0-1"
    ],
    "database_specific": {
      "source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-40110.json"
    },
    "ecosystem_specific": {
      "urgency": "not yet assigned"
    }
  }
]

Publisher severity

No explicit severity was provided.

Event
#56025 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement