← All vulnerabilities
CVE-2026-102946GHSA-4PP3-559J-C5C2

joserfc: JWS signature verification bypass via empty signatures array in jws.deserialize_json

Published
Last modified
Status
published
Known exploitation
Not listed in CISA KEV
Fix
Fixed in 1.7.4
Public exploit
None on Exploit-DB
CISA SSVC
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: total
?

Decision points from CISA's Vulnrichment, assessed (SSVC 2.0.3).

SSVC documentation

Summary

joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. Prior to 1.7.4, joserfc.jws.deserialize_json() accepts a JWS General JSON Serialization with an empty signatures array as authenticated. The verify_general_json() loop performs no iterations for the empty array and returns success because no signature check failed, allowing an attacker without a signing key to supply an arbitrary payload that relying applications may treat as authentic. The issue affects the General JSON Serialization path; compact JWS and JWT decoding, Flattened JSON serialization, and JWE JSON processing do not follow this vulnerable path. This issue is fixed in version 1.7.4.

Affected versions

  • authlib joserfc

    fixed in 1.7.4

References 3

GitHub · authlib/joserfc