CVE-2023-49290
published 2023-12-05CVE-2023-49290: 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…
PriorityP424medium5.3CVSS 3.1
AVNACLPRNUINSUCNINAL
EPSS
0.72%
49.9th percentile
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
5 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| github.com | lestrrat-go_jwx | >= 0 < 1.2.27 | 1.2.27 |
| github.com | lestrrat-go_jwx_v2 | >= 0 < 2.0.18 | 2.0.18 |
| lestrrat-go | jwx | < 1.2.27 | 1.2.27 |
| lestrrat-go | jwx | — | — |
| lestrrat-go | jwx | >= 2.0.0 < 2.0.18 | 2.0.18 |
CVSS provenance
nvdv3.15.3MEDIUMCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
vendor_redhat5.3MEDIUM
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
OSV
Denial of service due to malicious parameters in github.com/lestrrat-go/jwx
osv·2023-12-11
CVE-2023-49290 Denial of service due to malicious parameters in github.com/lestrrat-go/jwx
Denial of service due to malicious parameters in github.com/lestrrat-go/jwx
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 purpose is to intentionally slow down the key derivation function, making password brute-force and dictionary attacks more resource-intensive. However, if an attacker sets the p2c parameter in JWE to a very large number, it can cause excessive computational consumption.
OSV
lestrrat-go/jwx's malicious parameters in JWE can cause a DOS
osv·2023-12-05
CVE-2023-49290 [MEDIUM] lestrrat-go/jwx's malicious parameters in JWE can cause a DOS
lestrrat-go/jwx's malicious parameters in JWE can cause a DOS
### Summary
too high p2c parameter in JWE's alg PBES2-* could lead to a DOS attack
### Details
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 DOS attack
### PoC
```go
package main
import (
"fmt"
"github.com/lestrrat-go/jwx/v2/jwa"
"github.com/lestrrat-go/jwx/v2/jwe"
"github.com/l
GHSA
lestrrat-go/jwx's malicious parameters in JWE can cause a DOS
ghsa·2023-12-05
CVE-2023-49290 [MEDIUM] CWE-400 lestrrat-go/jwx's malicious parameters in JWE can cause a DOS
lestrrat-go/jwx's malicious parameters in JWE can cause a DOS
### Summary
too high p2c parameter in JWE's alg PBES2-* could lead to a DOS attack
### Details
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 DOS attack
### PoC
```go
package main
import (
"fmt"
"github.com/lestrrat-go/jwx/v2/jwa"
"github.com/lestrrat-go/jwx/v2/jwe"
"github.com/l
Red Hat
jwx: Malicious parameters in JWE can cause denial of service
vendor_redhat·2023-12-05·CVSS 5.3
CVE-2023-49290 [MEDIUM] CWE-400 jwx: Malicious parameters in JWE can cause denial of service
jwx: Malicious parameters in JWE can cause denial of service
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 vulne
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
https://github.com/lestrrat-go/jwx/commit/64f2a229b8e18605f47361d292b526bdc4aee01chttps://github.com/lestrrat-go/jwx/security/advisories/GHSA-7f9x-gw85-8grfhttps://github.com/lestrrat-go/jwx/commit/64f2a229b8e18605f47361d292b526bdc4aee01chttps://github.com/lestrrat-go/jwx/security/advisories/GHSA-7f9x-gw85-8grf
2023-12-05
Published