CyberRota Analysis
AI-GeneratedThe joserfc Python library versions 1.7.1 and earlier are vulnerable due to their acceptance of JSON Web Tokens (JWTs) with trailing padding, which violates JOSE specifications and introduces potential malleability in the tokens. This vulnerability could allow attackers to bypass token revocation and anti-replay protections, particularly in systems relying on deny lists for security. Developers and organizations utilizing joserfc for JWT handling should prioritize upgrading to version 1.7.2 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. 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.