jsonwebtoken is a JWT lib in rust. Prior to version 10.3.0, there is a Type Confusion vulnerability in jsonwebtoken, specifically, in its claim validation logic. When a standard claim (such as nbf or exp) is provided with an incorrect JSON type (Like a String instead of a Number), the library’s internal parsing mechanism marks the claim as “FailedToParse”. Crucially, the validation logic treats this “FailedToParse” state identically to “NotPresent”. This means that if a check is enabled (like: validate_nbf = true), but the claim is not explicitly marked as required in required_spec_claims, the library will skip the validation check entirely for the malformed claim, treating it as if it were not there. This allows attackers to bypass critical time-based security restrictions (like “Not Before” checks) and commit potential authentication and authorization bypasses. This issue has been patched in version 10.3.0.
References
| Link | Resource |
|---|---|
| https://github.com/Keats/jsonwebtoken/commit/abbc3076742c4161347bc6b8bf4aa5eb86e1dc01 | Patch |
| https://github.com/Keats/jsonwebtoken/security/advisories/GHSA-h395-gr6q-cpjc | Exploit Vendor Advisory |
| https://github.com/Keats/jsonwebtoken/security/advisories/GHSA-h395-gr6q-cpjc | Exploit Vendor Advisory |
Configurations
History
No history.
Information
Published : 2026-02-04 22:15
Updated : 2026-02-11 19:13
NVD link : CVE-2026-25537
Mitre link : CVE-2026-25537
CVE.ORG link : CVE-2026-25537
JSON object : View
Products Affected
keats
- jsonwebtoken
CWE
CWE-843
Access of Resource Using Incompatible Type ('Type Confusion')
