Junglewise Threat Intelligence

CVE-2026-84185: python-jwcrypto key ID binding bypass in JWS verification

CVE-2026-84185 · Severity: medium · CVSS 5.9 · Published 2026-09-03

Technologies: Jwcrypto.

Executive brief

The jwcrypto library, which handles cryptographic signing and encryption for web applications, contains a flaw in how it validates signed messages when multiple keys are in use. Due to a coding error, the library may accept a signature from any valid key instead of requiring the specific key identified in the message. An attacker with access to any legitimate signing key could forge or manipulate messages to impersonate other users or tenants, bypassing identity checks that applications rely on.

Technical details

The vulnerability is a cryptographic signature verification bypass (CWE-347) in the jwcrypto library's handling of General JSON Serialization JWS (JSON Web Signature). When verifying a JWS against a set of keys (JWKSet), the library fails to correctly identify and enforce the key ID (kid) parameter due to an incorrect type check in the verification logic. An attacker who possesses a valid signing key trusted by the application can exploit this to bypass key binding constraints, potentially impersonating other identities or tenants. The attack requires the attacker to already hold a valid signing key within the trusted key set. A fix is expected from the jwcrypto maintainers; check the upstream project repository for patched versions.

Affected products

  • jwcrypto jwcrypto

Timeline

  • 2026-09-03: disclosed

References