Vulnerability · Published Jan 9, 2024 · Assigned by GitHub_M

CVE-2024-21664Parsing JSON serialized payload without protected field can lead to segfault

Medium 4.3

In plain English

A medium-severity null pointer dereference in jwx from lestrrat-go. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.9% (higher than 59% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)4.3Medium
Exploit odds (30 days)0.9%top 41.2% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

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.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Gogithub.com/lestrrat-go/jwx1.2.28GHSA-pvcr-v8j8-j5q3
Gogithub.com/lestrrat-go/jwx1.2.28GO-2024-2454
Gogithub.com/lestrrat-go/jwx/v22.0.19GHSA-pvcr-v8j8-j5q3
Gogithub.com/lestrrat-go/jwx/v22.0.19GO-2024-2454

Affected products (as reported)

VendorProductVersions
lestrrat-go jwx >= 2.0.0, < 2.0.19>= 1.0.8, < 1.2.28

Weakness: CWE-476 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L

References