CVE-2017-12972 json
Nimbus JOSE+JWT missing overflow check
published 2017-08-20 9 y ago modified 2026-06-17 4 mo ago also GHSA-2qp9-wg27-9pcv , EUVD-2022-2037
- cvss
- 7.5
- version 3.0, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.9%
- EPSS 0.9% chance of exploitation in 30 days, percentile 59%
- public exploits
- 0
- none known
Summary
In Nimbus JOSE+JWT before 4.39, there is no integer-overflow check when converting length values from bytes to bits, which allows attackers to conduct HMAC bypass attacks by shifting Additional Authenticated Data (AAD) and ciphertext so that different plaintext is obtained for the same HMAC.
Patch / fix
- maven com.nimbusds:nimbus-jose-jwt 4.39
Exploit prediction
0.89% chance of exploitation in the next 30 days, higher than 59% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.0 | 7.5 | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
| NVD | 2.0 | 5.0 | AV:N/AC:L/Au:N/C:N/I:P/A:N |
| GitHub | 3.0 | 7.5 | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | com.nimbusds:nimbus-jose-jwt | <4.39 |
4.39 |
Classification
- Weakness
-
- CWE-345 Insufficient Verification of Data Authenticity
References
-
bitbucket.org
/connect2id/nimbus-jose-jwt/commits/0d2bd649ea386539220d4facfe1f65eb1dadb86c
web, third-party-advisory
-
bitbucket.org
/connect2id/nimbus-jose-jwt/issues/224/byte-to-bit-overflow-in-cbc
web, patch, third-party-advisory
-
bitbucket.org
/connect2id/nimbus-jose-jwt/src/master/CHANGELOG.txt
web, release-notes, third-party-advisory
-
lists.apache.org
/thread.html/9317fd092b257a0815434b116a8af8daea6e920b6673f4fd5583d5fe%40%3Ccommits.druid.apache.org%3E
mailing-list
-
nvd.nist.gov
/vuln/detail/CVE-2017-12972
advisory
-
lists.apache.org
/thread.html/9317fd092b257a0815434b116a8af8daea6e920b6673f4fd5583d5fe@%3Ccommits.druid.apache.org%3E
web
Sources
- CVE List CVE-2017-12972
- GitHub Advisory GHSA-2qp9-wg27-9pcv
- NVD CVE-2017-12972
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.