Lookup for vulnerable packages by Package URL.

Purlpkg:npm/jose-browser-runtime@3.10.0
Typenpm
Namespace
Namejose-browser-runtime
Version3.10.0
Qualifiers
Subpath
Is_vulnerabletrue
Next_non_vulnerable_version3.20.4
Latest_non_vulnerable_version4.9.2
Affected_by_vulnerabilities
0
url VCID-7vc7-dfdz-myg8
vulnerability_id VCID-7vc7-dfdz-myg8
summary
JOSE vulnerable to resource exhaustion via specifically crafted JWE
The PBKDF2-based JWE key management algorithms expect a JOSE Header Parameter named `p2c` ([PBES2 Count](https://www.rfc-editor.org/rfc/rfc7518.html#section-4.8.1.2)), which determines how many PBKDF2 iterations must be executed in order to derive a CEK wrapping key. The purpose of this parameter is to intentionally slow down the key derivation function in order to make password brute-force and dictionary attacks more expensive.

This makes the PBES2 algorithms unsuitable for situations where the JWE is coming from an untrusted source: an adversary can intentionally pick an extremely high PBES2 Count value, that will initiate a CPU-bound computation that may take an unreasonable amount of time to finish.

### Impact

Under certain conditions (see below) it is possible to have the user's environment consume unreasonable amount of CPU time.

### Affected users

The impact is limited only to users utilizing the JWE decryption APIs with symmetric secrets to decrypt JWEs from untrusted parties who do not limit the accepted JWE Key Management Algorithms (`alg` Header Parameter) using the `keyManagementAlgorithms` (or `algorithms` in v1.x) decryption option or through other means.

The PBKDF2-based JWE Key Management Algorithm Identifiers are

- `PBES2-HS256+A128KW`
- `PBES2-HS384+A192KW`
- `PBES2-HS512+A256KW`

e.g.

```js
const secret = new Uint8Array(16)
const jwe = '...' // JWE from an untrusted party

await jose.compactDecrypt(jwe, secret)
```

You are NOT affected if any of the following applies to you

- Your code does not use the JWE APIs
- Your code only produces JWE tokens
- Your code only decrypts JWEs using an asymmetric JWE Key Management Algorithm (this means you're providing an asymmetric key object to the JWE decryption API)
- Your code only accepts JWEs produced by trusted sources
- Your code limits the accepted JWE Key Management Algorithms using the `keyManagementAlgorithms` decryption option not including any of the PBKDF2-based JWE key management algorithms

### Patches

`v1.28.2`, `v2.0.6`, `v3.20.4`, and `v4.9.2` releases limit the maximum PBKDF2 iteration count to `10000` by default. It is possible to adjust this limit with a newly introduced `maxPBES2Count` decryption option.

### Workarounds

All users should be able to upgrade given all stable semver major release lines have had new a patch release introduced which limits the PBKDF2 iteration count to `10000` by default. This removes the ability to craft JWEs that would consume unreasonable amount of CPU time.

If users are unable to upgrade their required library version they have two options depending on whether they expect to receive JWEs using any of the three PBKDF2-based JWE key management algorithms.

- they can use the `keyManagementAlgorithms` decryption option to disable accepting PBKDF2 altogether
- they can inspect the JOSE Header prior to using the decryption API and limit the PBKDF2 iteration count (`p2c` Header Parameter)

### For more information
If you have any questions or comments about this advisory:
* Open an discussion in the project's [repository](https://github.com/panva/jose/discussions/new?category=q-a&title=GHSA-jv3g-j58f-9mq9%20advisory%20question)
* Email me at [panva.ip@gmail.com](mailto:panva.ip@gmail.com)
references
0
reference_url https://api.first.org/data/v1/epss?cve=CVE-2022-36083
reference_id
reference_type
scores
0
value 0.00461
scoring_system epss
scoring_elements 0.64106
published_at 2026-04-02T12:55:00Z
1
value 0.00461
scoring_system epss
scoring_elements 0.64167
published_at 2026-04-21T12:55:00Z
2
value 0.00461
scoring_system epss
scoring_elements 0.64179
published_at 2026-04-18T12:55:00Z
3
value 0.00461
scoring_system epss
scoring_elements 0.64168
published_at 2026-04-16T12:55:00Z
4
value 0.00461
scoring_system epss
scoring_elements 0.64132
published_at 2026-04-13T12:55:00Z
5
value 0.00461
scoring_system epss
scoring_elements 0.6416
published_at 2026-04-12T12:55:00Z
6
value 0.00461
scoring_system epss
scoring_elements 0.64171
published_at 2026-04-11T12:55:00Z
7
value 0.00461
scoring_system epss
scoring_elements 0.64159
published_at 2026-04-09T12:55:00Z
8
value 0.00461
scoring_system epss
scoring_elements 0.64143
published_at 2026-04-08T12:55:00Z
9
value 0.00461
scoring_system epss
scoring_elements 0.64092
published_at 2026-04-07T12:55:00Z
10
value 0.00461
scoring_system epss
scoring_elements 0.64133
published_at 2026-04-04T12:55:00Z
url https://api.first.org/data/v1/epss?cve=CVE-2022-36083
1
reference_url https://github.com/panva/jose
reference_id
reference_type
scores
0
value 5.3
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/panva/jose
2
reference_url https://github.com/panva/jose/commit/03d6d013bf6e070e85adfe5731f526978e3e8e4d
reference_id
reference_type
scores
0
value 5.3
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value MODERATE
scoring_system generic_textual
scoring_elements
2
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-04-22T15:39:38Z/
url https://github.com/panva/jose/commit/03d6d013bf6e070e85adfe5731f526978e3e8e4d
3
reference_url https://github.com/panva/jose/releases/tag/v4.9.2
reference_id
reference_type
scores
0
value 5.3
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value MODERATE
scoring_system generic_textual
scoring_elements
2
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-04-22T15:39:38Z/
url https://github.com/panva/jose/releases/tag/v4.9.2
4
reference_url https://github.com/panva/jose/security/advisories/GHSA-jv3g-j58f-9mq9
reference_id
reference_type
scores
0
value 5.3
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value MODERATE
scoring_system cvssv3.1_qr
scoring_elements
2
value MODERATE
scoring_system generic_textual
scoring_elements
3
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-04-22T15:39:38Z/
url https://github.com/panva/jose/security/advisories/GHSA-jv3g-j58f-9mq9
5
reference_url https://nvd.nist.gov/vuln/detail/CVE-2022-36083
reference_id
reference_type
scores
0
value 5.3
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://nvd.nist.gov/vuln/detail/CVE-2022-36083
6
reference_url https://github.com/advisories/GHSA-jv3g-j58f-9mq9
reference_id GHSA-jv3g-j58f-9mq9
reference_type
scores
0
value MODERATE
scoring_system cvssv3.1_qr
scoring_elements
url https://github.com/advisories/GHSA-jv3g-j58f-9mq9
fixed_packages
0
url pkg:npm/jose-browser-runtime@3.20.4
purl pkg:npm/jose-browser-runtime@3.20.4
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/jose-browser-runtime@3.20.4
1
url pkg:npm/jose-browser-runtime@4.9.2
purl pkg:npm/jose-browser-runtime@4.9.2
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/jose-browser-runtime@4.9.2
aliases CVE-2022-36083, GHSA-jv3g-j58f-9mq9
risk_score 3.1
exploitability 0.5
weighted_severity 6.2
resource_url http://public2.vulnerablecode.io/vulnerabilities/VCID-7vc7-dfdz-myg8
1
url VCID-mv6y-qymd-ryat
vulnerability_id VCID-mv6y-qymd-ryat
summary
Padding Oracle Attack due to Observable Timing Discrepancy in jose-browser-runtime
### Impact

[AES_CBC_HMAC_SHA2 Algorithm](https://tools.ietf.org/html/rfc7518#section-5.2) (A128CBC-HS256, A192CBC-HS384, A256CBC-HS512) decryption would always execute both HMAC tag verification and CBC decryption, if either failed `JWEDecryptionFailed` would be thrown. But a possibly observable difference in timing when padding error would occur while decrypting the ciphertext makes a padding oracle and an adversary might be able to make use of that oracle to decrypt data without knowing the decryption key by issuing on average 128*b calls to the padding oracle (where b is the number of bytes in the ciphertext block).

### Patches

A patch was released which ensures the HMAC tag is verified before performing CBC decryption. The fixed versions are `>=3.11.4`.

Users should upgrade to `^3.11.4`.

### Credits
Thanks to Morgan Brown of Microsoft for bringing this up and Eva Sarafianou (@esarafianou) for helping to score this advisory.
references
0
reference_url https://api.first.org/data/v1/epss?cve=CVE-2021-29444
reference_id
reference_type
scores
0
value 0.00394
scoring_system epss
scoring_elements 0.60343
published_at 2026-04-21T12:55:00Z
1
value 0.00394
scoring_system epss
scoring_elements 0.60259
published_at 2026-04-02T12:55:00Z
2
value 0.00394
scoring_system epss
scoring_elements 0.60285
published_at 2026-04-04T12:55:00Z
3
value 0.00394
scoring_system epss
scoring_elements 0.60254
published_at 2026-04-07T12:55:00Z
4
value 0.00394
scoring_system epss
scoring_elements 0.60304
published_at 2026-04-08T12:55:00Z
5
value 0.00394
scoring_system epss
scoring_elements 0.60318
published_at 2026-04-09T12:55:00Z
6
value 0.00394
scoring_system epss
scoring_elements 0.60339
published_at 2026-04-11T12:55:00Z
7
value 0.00394
scoring_system epss
scoring_elements 0.60325
published_at 2026-04-12T12:55:00Z
8
value 0.00394
scoring_system epss
scoring_elements 0.60306
published_at 2026-04-13T12:55:00Z
9
value 0.00394
scoring_system epss
scoring_elements 0.60347
published_at 2026-04-16T12:55:00Z
10
value 0.00394
scoring_system epss
scoring_elements 0.60355
published_at 2026-04-18T12:55:00Z
11
value 0.00394
scoring_system epss
scoring_elements 0.60183
published_at 2026-04-01T12:55:00Z
url https://api.first.org/data/v1/epss?cve=CVE-2021-29444
1
reference_url https://github.com/panva/jose
reference_id
reference_type
scores
0
value 5.9
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/panva/jose
2
reference_url https://github.com/panva/jose/security/advisories/GHSA-94hh-pjjg-rwmr
reference_id
reference_type
scores
0
value 5.9
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
1
value MODERATE
scoring_system cvssv3.1_qr
scoring_elements
2
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/panva/jose/security/advisories/GHSA-94hh-pjjg-rwmr
3
reference_url https://nvd.nist.gov/vuln/detail/CVE-2021-29444
reference_id
reference_type
scores
0
value 5.9
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://nvd.nist.gov/vuln/detail/CVE-2021-29444
4
reference_url https://www.npmjs.com/package/jose-browser-runtime
reference_id
reference_type
scores
0
value 5.9
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://www.npmjs.com/package/jose-browser-runtime
5
reference_url https://github.com/advisories/GHSA-94hh-pjjg-rwmr
reference_id GHSA-94hh-pjjg-rwmr
reference_type
scores
0
value MODERATE
scoring_system cvssv3.1_qr
scoring_elements
url https://github.com/advisories/GHSA-94hh-pjjg-rwmr
fixed_packages
0
url pkg:npm/jose-browser-runtime@3.11.4
purl pkg:npm/jose-browser-runtime@3.11.4
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-7vc7-dfdz-myg8
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/jose-browser-runtime@3.11.4
aliases CVE-2021-29444, GHSA-94hh-pjjg-rwmr
risk_score 3.1
exploitability 0.5
weighted_severity 6.2
resource_url http://public2.vulnerablecode.io/vulnerabilities/VCID-mv6y-qymd-ryat
Fixing_vulnerabilities
Risk_score3.1
Resource_urlhttp://public2.vulnerablecode.io/packages/pkg:npm/jose-browser-runtime@3.10.0