CyberRota Analysis
AI-GeneratedThe joserfc Python library is vulnerable to accepting attacker-forged HMAC-signed tokens when the verification key is empty or None, potentially allowing unauthorized access or manipulation of data. This issue arises from inadequate validation of key lengths, which could lead to severe security implications for applications relying on this library for JSON Object Signing and Encryption. Developers and organizations using joserfc versions prior to 1.6.8 should prioritize upgrading to the latest version to mitigate these risks.
Public Exploit Signal
A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.
Note: these links are listed for security research and verification purposes only.
Original NVD Description
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. Prior to 1.6.8, joserfc.jwt.decode accepts attacker-forged HMAC-signed tokens when the caller-supplied verification key is the empty string or None, because HMACAlgorithm.sign and HMACAlgorithm.verify in src/joserfc/_rfc7518/jws_algs.py pass the output of OctKey.get_op_key(...) to hmac.new(...) and OctKey.import_key in src/joserfc/_rfc7518/oct_key.py only emits a SecurityWarning for keys shorter than 14 bytes without rejecting zero-length input. This issue is fixed in version 1.6.8.