What’s Vulnerable › Vulnerabilities
CVE-2026-34240: jose vulnerable to untrusted JWK header key acceptance during signature verification
- Severity: high (CVSS 7.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.1% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-03-31 · updated 2026-07-24
- Weakness: CWE-347
Description
JOSE is a Javascript Object Signing and Encryption (JOSE) library. Prior to version 0.3.5+1, a vulnerability in jose could allow an unauthenticated, remote attacker to forge valid JWS/JWT tokens by using a key embedded in the JOSE header (jwk). The vulnerability exists because key selection could treat header-provided jwk as a verification candidate even when that key was not present in the trusted key store. Since JOSE headers are untrusted input, an attacker could exploit this by creating a token payload, embedding an attacker-controlled public key in the header, and signing with the matching private key. Applications using affected versions for token verification are impacted. This issue has been patched in version 0.3.5+1. A workaround for this issue involves rejecting tokens where header jwk is present unless that jwk matches a key already present in the application's trusted key store.
Affected products
- appsup-dart jose: before 0.3.5\+1 — fixed in 0.3.5\+1
How to fix
Upgrade to a fixed version: appsup-dart jose 0.3.5\+1. Check the vendor advisory for mitigations.
References
- https://github.com/appsup-dart/jose/commit/b07799aac1f56a9a21483feac026272aab30cc5d
- https://github.com/appsup-dart/jose/security/advisories/GHSA-vm9r-h74p-hg97
Get alerted when CVE-2026-34240 or the next vulnerability affects your stack