Parsing JSON serialized payload without protected field can lead to segfault
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Partial Red Hat: 1 without a fix
Attack profile from CVSS 3.1 · NVD. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-476.
Summary
jwx is a Go module implementing various JWx (JWA/JWE/JWK/JWS/JWT, otherwise known as JOSE) technologies. Calling `jws.Parse` with a JSON serialized payload where the `signature` field is present while `protected` is absent can lead to a nil pointer dereference. The vulnerability can be used to crash/DOS a system doing JWS verification. This vulnerability has been patched in versions 2.0.19 and 1.2.28.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| lestrrat-go | jwx | 2.0.0 to before 2.0.19; 1.0.8 to before 1.2.28 | 2.0.19, 1.2.28 | Patch available | CNA |
| — | github.com/lestrrat-go/jwx (Go) | 1.0.8 to before 1.2.28 | 1.2.28 | Patch available | GHSA-pvcr-v8j8-j5q3 |
| — | github.com/lestrrat-go/jwx/v2 (Go) | before 2.0.19 | 2.0.19 | Patch available | GHSA-pvcr-v8j8-j5q3 |
- jwx Vendorlestrrat-go Affected 2.0.0 to before 2.0.19; 1.0.8 to before 1.2.28 Fixed in 2.0.19, 1.2.28 Patch available CNA
- github.com/lestrrat-go/jwx (Go) Vendor— Affected 1.0.8 to before 1.2.28 Fixed in 1.2.28 Patch available GHSA-pvcr-v8j8-j5q3
- github.com/lestrrat-go/jwx/v2 (Go) Vendor— Affected before 2.0.19 Fixed in 2.0.19 Patch available GHSA-pvcr-v8j8-j5q3
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:lestrrat-go:jwx:*:*:*:*:*:*:*:* | before 2.0.19 | Vulnerable | lestrrat-go |
- cpe:2.3:a:lestrrat-go:jwx:*:*:*:*:*:*:*:* Versions before 2.0.19 Vulnerable ·lestrrat-go
Remediation
- Fix · CNA jwx (lestrrat-go) Fixed in 2.0.19, 1.2.28
- Fix · GHSA-pvcr-v8j8-j5q3 github.com/lestrrat-go/jwx (Go) Fixed in 1.2.28 Advisory →
- Fix · GHSA-pvcr-v8j8-j5q3 github.com/lestrrat-go/jwx/v2 (Go) Fixed in 2.0.19 Advisory →
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| OpenShift Service Mesh 2 | Affected | No fix planned: Will not fix |
Timeline
- 2026-10-02 Threatist record created from CVE-2024-21664
- 2026-10-03 Alias added: GHSA-pvcr-v8j8-j5q3
References
Patch 2
More lestrrat-go Jwx vulnerabilities
- TI-2024-18702 JWX vulnerable to a denial of service attack using compressed JWE message CVSS 3.1MEDIUM 6.8
- TI-2023-26926 Malicious parameters can cause a denial of service in lestrrat-go/jwx CVSS 3.1MEDIUM 5.3
Sources
- CVE-2024-21664 · CVE Program
- CVE-2024-21664 · NVD
- FIRST EPSS
- GHSA-pvcr-v8j8-j5q3 · GitHub Advisory Database · CC BY 4.0
- CVE-2024-21664 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences