CVE-2022-29217

EUVD-2022-0213
PyJWT is a Python implementation of RFC 7519. PyJWT supports multiple different JWT signing algorithms. With JWT, an attacker submitting the JWT token can choose the used signing algorithm. The PyJWT library requires that the application chooses what algorithms are supported. The application can specify `jwt.algorithms.get_default_algorithms()` to get support for all algorithms, or specify a single algorithm. The issue is not that big as `algorithms=jwt.algorithms.get_default_algorithms()` has to be used. Users should upgrade to v2.4.0 to receive a patch for this issue. As a workaround, always be explicit with the algorithms that are accepted and expected when decoding.
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
7.4 HIGH
NETWORK
HIGH
NONE
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
GitHub_MCNA
7.4 HIGH
NETWORK
HIGH
NONE
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
Base Score
CVSS 3.x
EPSS Score
Percentile: 53%
Affected Products (NVD)
VendorProductVersion
pyjwt_projectpyjwt
1.5.0 ≤
𝑥
< 2.4.0
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
pyjwt
bookworm
2.6.0-1
fixed
bullseye
1.7.1-2
not-affected
buster
not-affected
sid
2.7.0-1
fixed
stretch
not-affected
trixie
2.7.0-1
fixed
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
pyjwt
bionic
Fixed 1.5.3+ds1-1ubuntu0.1
released
focal
Fixed 1.7.1-2ubuntu2.1
released
impish
ignored
jammy
Fixed 2.3.0-1ubuntu0.1
released
trusty
dne
xenial
not-affected