UBUNTU-CVE-2026-48523
PyJWT is a JSON Web Token implementation in Python. From 2.9.0 to 2.12.1, there is a verifier-side algorithm allow-list bypass when jwt.decode() or jwt.decode_complete() are called with a PyJWK key. The token header alg is checked against the caller-supplied algorithms allow-list, but signature verification is performed with the algorithm bound to the PyJWK object instead of the header algorithm. An attacker who controls a registered JWK/JWKS private key can sign with a disallowed algorithm, advertise an allowed algorithm in the JWT header, and still be accepted. The issue affects the documented PyJWKClient.get_signing_key_from_jwt(...) flow. This vulnerability is fixed in 2.13.0.
UBUNTU-CVE-2026-48523
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:UBUNTU-CVE-2026-48523
pyjwt
Source reference: /affected/0/package/name
- Affected versions
- 2.10.1-2
Source reference:
/affected/0/versions2.10.1-2ubuntu0.1Source reference:
/affected/0/versions - Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
pyjwt
Source reference: /affected/1/package/name
- Affected versions
- 2.10.1-2
Source reference:
/affected/1/versions2.10.1-3Source reference:
/affected/1/versions2.10.1-3build1Source reference:
/affected/1/versions2.10.1-4Source reference:
/affected/1/versions2.10.1-4ubuntu1Source reference:
/affected/1/versions - Fixed versions
- 2.10.1-4ubuntu1.1
Source reference:
/affected/1/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": "pyjwt",
"purl": "pkg:deb/ubuntu/pyjwt?arch=source&distro=questing",
"ecosystem": "Ubuntu:25.10"
},
"versions": [
"2.10.1-2",
"2.10.1-2ubuntu0.1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-48523.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "python3-jwt",
"binary_version": "2.10.1-2ubuntu0.1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2.10.1-4ubuntu1.1"
}
]
}
],
"package": {
"name": "pyjwt",
"purl": "pkg:deb/ubuntu/pyjwt?arch=source&distro=resolute",
"ecosystem": "Ubuntu:26.04:LTS"
},
"versions": [
"2.10.1-2",
"2.10.1-3",
"2.10.1-3build1",
"2.10.1-4",
"2.10.1-4ubuntu1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-48523.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "python3-jwt",
"binary_version": "2.10.1-4ubuntu1.1"
}
],
"availability": "No subscription required"
}
}
]Publisher severity
No explicit severity was provided.
- Event
- #22398 · Revision 1
- Added to Heist Feed
- Publisher date