joserfc: b64=false RFC7797 JWS payloads bypass JWSRegistry payload-size limits during deserialization
Description
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. In versions 1.3.4 through 1.6.5, joserfc accepts oversized RFC7797 b64=false JWS payloads without applying JWSRegistry.max_payload_length, which can lead to resource exhaustion. The normal JWS compact and flattened JSON paths reject payloads above the configured payload-size limit with ExceededSizeError. The RFC7797 unencoded payload paths do not make the same check. A valid b64=false compact or flattened JSON JWS can therefore deserialize successfully with a payload larger than JWSRegistry.max_payload_length. Applications that accept lower-trust JWS values and rely on joserfc to reject oversized token content during verification have a moderate availability risk. This issue has been fixed in version 1.6.7.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Affected products
5- osv-coords4 versionspkg:apk/chainguard/airflow-3pkg:apk/chainguard/localstackpkg:apk/wolfi/airflow-3pkg:rpm/opensuse/python-joserfc&distro=openSUSE%20Tumbleweed
< 3.2.2-r9+ 3 more
- (no CPE)range: < 3.2.2-r9
- (no CPE)range: < 4.14.0-r18
- (no CPE)range: < 3.2.2-r9
- (no CPE)range: < 1.7.1-1.1
Patches
Vulnerability mechanics
References
2- github.com/authlib/joserfc/releases/tag/1.6.7mitrex_refsource_MISC
- github.com/authlib/joserfc/security/advisories/GHSA-wphv-vfrh-23q5mitrex_refsource_CONFIRM
News mentions
0No linked articles in our index yet.