CVE Catalog

CVE-2026-89315

MediumCVSS 6.9
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.25%

17th percentile - higher than 17% of all known CVEs

Summary

JwtClaims.MarshalJSON built a Go struct at runtime with reflect.StructOf, synthesising a field named "A" + claimName for each untyped claim. reflect.StructOf panics when a field name is not a valid Go identifier, or when it duplicates another field. Both conditions are reachable from ordinary JWT claim names.

Risk Assessment

A malicious JWT token with suitable claim names can trigger a panic and crash the service, leading to denial of service.

Recommendation

Update the library to a version containing the fix that validates field names before using reflect.StructOf.

Related vulnerabilities

Original NVD description (English source)

`JwtClaims.MarshalJSON` built a Go struct at runtime with `reflect.StructOf`, synthesising a field named `"A" + claimName` for each untyped claim. `reflect.StructOf` **panics** when a field name is not a valid Go identifier, or when it duplicates another field. Both conditions are reachable from ordinary JWT claim names.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS