Skip to content
OpenAdvisories
Medium · 5.3 CVE-2023-49290 EUVD-2023-3143GHSA-7f9x-gw85-8grfGO-2023-2379

Malicious parameters can cause a denial of service in lestrrat-go/jwx

Published Dec 4, 2023 · Updated May 29, 2025 · Assigned by GitHub_M

Description

lestrrat-go/jwx is a Go module implementing various JWx (JWA/JWE/JWK/JWS/JWT, otherwise known as JOSE) technologies. A p2c parameter set too high in JWE's algorithm PBES2-* could lead to a denial of service. The JWE key management algorithms based on PBKDF2 require a JOSE Header Parameter called p2c (PBES2 Count). This parameter dictates the number of PBKDF2 iterations needed to derive a CEK wrapping key. Its primary purpose is to intentionally slow down the key derivation function, making password brute-force and dictionary attacks more resource- intensive. Therefore, if an attacker sets the p2c parameter in JWE to a very large number, it can cause a lot of computational consumption, resulting in a denial of service. This vulnerability has been addressed in commit `64f2a229b` which has been included in release version 1.2.27 and 2.0.18. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Affected products

VendorProductAffectedFixed
lestrrat-go jwx < 1.2.27, >= 2.0.0, < 2.0.18 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling falcoctl 0.7.1-r1 —
Wolfi rolling gitsign +2 0.8.1-r0 —
Wolfi rolling kubescape 3.0.3-r4 —
Wolfi rolling tekton-chains 0.19.0-r6 —
Wolfi rolling vexctl 0.2.6-r0 —

Affected packages

EcosystemPackageAffectedFixedRecord
Go github.com/lestrrat-go/jwx < 1.2.27 1.2.27 GHSA-7f9x-gw85-8grf
Go github.com/lestrrat-go/jwx/v2 < 2.0.18 2.0.18 GHSA-7f9x-gw85-8grf

References