CVE-2026-62995
joserfc accepts JWT with padding, leading to JWT malleability
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. in versions 1.7.1 and prior, joserfc accepts JWTs with trailing padding (==) which are not conforming to the JOSE specifications. This leads to malleability of the JWTs when consumed by joserfc. Depending on this application this might or not be an issue. This could lead to bypass of token revocation or anti-replay protection when implemented as a deny list of tokens or a deny list of token hashes. Note that ECDSA JWS are always malleable because of the malleability of ECDSA signatures (first test case in the code bellow). This makes a scheme which assumes that JWTs are not malleable brittle. However for other signatures (or MAC) schemes it might make sense to assume non malleability of the token. This issue has been fixed in version 1.7.2.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
2.3
joserfc accepts JWT with padding, leading to JWT malleability
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. in versions 1.7.1 and prior, joserfc accepts JWTs with trailing padding (==) which are not conforming to the JOSE specifications. This leads to malleability of the JWTs when consumed by joserfc. Depending on this application this might or not be an issue. This could lead to bypass of token revocation or anti-replay protection when implemented as a deny list of tokens or a deny list of token hashes. Note that ECDSA JWS are always malleable because of the malleability of ECDSA signatures (first test case in the code bellow). This makes a scheme which assumes that JWTs are not malleable brittle. However for other signatures (or MAC) schemes it might make sense to assume non malleability of the token. This issue has been fixed in version 1.7.2.
- Record
CVE-2026-62995- CVSS 4.0
- 2.3 Low
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-345
- Updated
- 2026-11-02
EUVDEUVD-2026-50450
2.3
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. in versions 1.7.1 and prior, joserfc accepts JWTs with trailing padding (==) which are not conforming to the JOSE specifications. This leads to malleability of the JWTs when consumed by joserfc. Depending on this application this might or not be an issue. This could lead to bypass of token revocation or anti-replay protection when implemented as a deny list of tokens or a deny list of token hashes. Note that ECDSA JWS are always malleable because of the malleability of ECDSA signatures (first test case in the code bellow). This makes a scheme which assumes that JWTs are not malleable brittle. However for other signatures (or MAC) schemes it might make sense to assume non malleability of the token. This issue has been fixed in version 1.7.2.
- Record
EUVD-2026-50450- CVSS 4.0
- 2.3 Low
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
NVD
2.3
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. in versions 1.7.1 and prior, joserfc accepts JWTs with trailing padding (==) which are not conforming to the JOSE specifications. This leads to malleability of the JWTs when consumed by joserfc. Depending on this application this might or not be an issue. This could lead to bypass of token revocation or anti-replay protection when implemented as a deny list of tokens or a deny list of token hashes. Note that ECDSA JWS are always malleable because of the malleability of ECDSA signatures (first test case in the code bellow). This makes a scheme which assumes that JWTs are not malleable brittle. However for other signatures (or MAC) schemes it might make sense to assume non malleability of the token. This issue has been fixed in version 1.7.2.
- Record
CVE-2026-62995- CVSS 4.0
- 2.3 Low
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Weakness
- CWE-345
- Updated
- 2026-11-02
OSV
2.3
joserfc accepts JWT with padding, leading to JWT malleability
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. in versions 1.7.1 and prior, joserfc accepts JWTs with trailing padding (==) which are not conforming to the JOSE specifications. This leads to malleability of the JWTs when consumed by joserfc. Depending on this application this might or not be an issue. This could lead to bypass of token revocation or anti-replay protection when implemented as a deny list of tokens or a deny list of token hashes. Note that ECDSA JWS are always malleable because of the malleability of ECDSA signatures (first test case in the code bellow). This makes a scheme which assumes that JWTs are not malleable brittle. However for other signatures (or MAC) schemes it might make sense to assume non malleability of the token. This issue has been fixed in version 1.7.2.
- Record
CVE-2026-62995- CVSS 4.0
- 2.3 Low
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-345
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-62995
2.3
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. in versions 1.7.1 and prior, joserfc accepts JWTs with trailing padding (==) which are not conforming to the JOSE specifications. This leads to malleability of the JWTs when consumed by joserfc. Depending on this application this might or not be an issue. This could lead to bypass of token revocation or anti-replay protection when implemented as a deny list of tokens or a deny list of token hashes. Note that ECDSA JWS are always malleable because of the malleability of ECDSA signatures (first test case in the code bellow). This makes a scheme which assumes that JWTs are not malleable brittle. However for other signatures (or MAC) schemes it might make sense to assume non malleability of the token. This issue has been fixed in version 1.7.2.
- Record
DEBIAN-CVE-2026-62995- CVSS 4.0
- 2.3 Low
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Updated
- 2026-11-02
OSVRHSA-2026:48758
8.1
Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update
- Record
RHSA-2026:48758- CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-62995
2.3
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. in versions 1.7.1 and prior, joserfc accepts JWTs with trailing padding (==) which are not conforming to the JOSE specifications. This leads to malleability of the JWTs when consumed by joserfc. Depending on this application this might or not be an issue. This could lead to bypass of token revocation or anti-replay protection when implemented as a deny list of tokens or a deny list of token hashes. Note that ECDSA JWS are always malleable because of the malleability of ECDSA signatures (first test case in the code bellow). This makes a scheme which assumes that JWTs are not malleable brittle. However for other signatures (or MAC) schemes it might make sense to assume non malleability of the token. This issue has been fixed in version 1.7.2.
- Record
UBUNTU-CVE-2026-62995- CVSS 4.0
- 2.3 Low
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11423-1 No score
python313-joserfc-1.7.4-2.1 on GA media
These are all security issues fixed in the python313-joserfc-1.7.4-2.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11423-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:21515-1 No score
Security update for python-joserfc
This update for python-joserfc fixes the following issues:
Changes in python-joserfc:
- CVE-2026-62995: acceptance of JWTs with trailing padding can lead to JWT malleability and allows for bypass of token revocation and anti-replay protection (bsc#1272991)
- Record
openSUSE-SU-2026:21515-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
joserfcDebian:13 |
All versions, plus listed versions 1.1.0-11.2.0-11.2.2-11.3.1-11.3.2-1 Show 18 moreShow less1.3.4-11.4.0-11.4.1-11.4.3-11.5.0-11.6.0-11.6.1-11.6.2-11.6.3-11.6.4-11.6.5-11.6.8-11.7.0-11.7.1-11.7.2-11.7.3-11.7.4-11.7.5-1 |
None known |
joserfcDebian:14 |
before 1.7.2-1, plus listed versions 1.1.0-11.2.0-11.2.2-11.3.1-11.3.2-1 Show 14 moreShow less1.3.4-11.4.0-11.4.1-11.4.3-11.5.0-11.6.0-11.6.1-11.6.2-11.6.3-11.6.4-11.6.5-11.6.8-11.7.0-11.7.1-1 |
1.7.2-1 |
jaegerRed Hat:hummingbird:1 From an advisory covering 8 CVEs |
before 0:2.20.0-0.8.hum1 | 0:2.20.0-0.8.hum1 |
joserfcUbuntu:26.04:LTS |
All versions, plus listed versions 1.2.2-11.4.0-11.4.1-11.4.3-11.5.0-11.6.2-1 |
None known |
python-joserfcopenSUSE:Tumbleweed |
before 1.7.4-2.1 | 1.7.4-2.1 |
python-joserfcopenSUSE:Leap 16.0 |
before 1.1.0-bp160.4.1 | 1.1.0-bp160.4.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-62995 is a low vulnerability (CVSS 2.3) in Authlib Joserfc, published July 29, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.14%, the 3rd percentile. Fixed in joserfc 1.7.2-1.
References
github.com/authlib/joserfc/security/advisories/GHSA-5jhw-7jv7-qcqq
github.com/CVEProject/cvelistV5/tree/main/cves/2026/62xxx/CVE-2026-62995.json
nvd.nist.gov/vuln/detail/CVE-2026-62995
security-tracker.debian.org/tracker/CVE-2026-62995
access.redhat.com/errata/RHSA-2026:48758
access.redhat.com/security/cve/CVE-2026-62995
Show 52 moreShow less
access.redhat.com/security/updates/classification
images.redhat.com
access.redhat.com/security/cve/CVE-2026-67314
access.redhat.com/security/cve/CVE-2026-67313
access.redhat.com/security/cve/CVE-2026-67321
access.redhat.com/security/cve/CVE-2026-67312
access.redhat.com/security/cve/CVE-2026-67320
access.redhat.com/security/cve/CVE-2026-73086
access.redhat.com/security/cve/CVE-2026-27459
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_48758.json
bugzilla.redhat.com/show_bug.cgi?id=2448503
cve.org/CVERecord?id=CVE-2026-27459
nvd.nist.gov/vuln/detail/CVE-2026-27459
github.com/pyca/pyopenssl/blob/358cbf29c4e364c59930e53a270116249581eaa3/CHANGELOG.rst
github.com/pyca/pyopenssl/commit/57f09bb4bb051d3bc2a1abd36e9525313d5cd408
github.com/pyca/pyopenssl/security/advisories/GHSA-5pwr-322w-8jr4
bugzilla.redhat.com/show_bug.cgi?id=2508524
cve.org/CVERecord?id=CVE-2026-62995
bugzilla.redhat.com/show_bug.cgi?id=2510007
cve.org/CVERecord?id=CVE-2026-67312
nvd.nist.gov/vuln/detail/CVE-2026-67312
github.com/axios/axios/security/advisories/GHSA-pmv8-rq9r-6j72
vulncheck.com/advisories/axios-before-denial-of-service-via-formtojson
cve.org/CVERecord?id=CVE-2026-67313
bugzilla.redhat.com/show_bug.cgi?id=2510030
cve.org/CVERecord?id=CVE-2026-67314
nvd.nist.gov/vuln/detail/CVE-2026-67314
github.com/axios/axios/security/advisories/GHSA-xj6q-8x83-jv6g
vulncheck.com/advisories/axios-before-prototype-pollution-via-auth-subfields
bugzilla.redhat.com/show_bug.cgi?id=2509993
cve.org/CVERecord?id=CVE-2026-67320
nvd.nist.gov/vuln/detail/CVE-2026-67320
github.com/axios/axios/commit/df53d7dd99b202fb194217abd127ae6a630e70dc
github.com/axios/axios/security/advisories/GHSA-gcfj-64vw-6mp9
vulncheck.com/advisories/axios-before-prototype-pollution-via-node-http-adapter
bugzilla.redhat.com/show_bug.cgi?id=2510011
cve.org/CVERecord?id=CVE-2026-67321
nvd.nist.gov/vuln/detail/CVE-2026-67321
github.com/axios/axios/security/advisories/GHSA-hcpx-6fm6-wx23
vulncheck.com/advisories/axios-before-denial-of-service-via-maxdepth-bypass
bugzilla.redhat.com/show_bug.cgi?id=2514175
cve.org/CVERecord?id=CVE-2026-73086
nvd.nist.gov/vuln/detail/CVE-2026-73086
github.com/ai/nanoid/commit/7087969281cab8ba8ae3babf1894e819068b3bb4
github.com/ai/nanoid/commit/821dfed7b5db7f88e92f56c60eef32c8135077c3
github.com/ai/nanoid/commit/b0036ed60dc9facd7f1191a50dfb3076500202ac
github.com/ai/nanoid/releases/tag/3.3.12
github.com/ai/nanoid/releases/tag/5.1.11
github.com/ai/nanoid/security/advisories/GHSA-xwg4-73v4-xw9w
ubuntu.com/security/CVE-2026-62995
suse.com/security/cve/CVE-2026-62995
bugzilla.suse.com/1272991