BC-JAVA: Improper Validation of Integrity Check Value
CVE-2026-12817 is a high-severity improper validation of integrity check value vulnerability in BC-JAVA from Legion of the Bouncy Castle, with a CVSS 3.1 base score of 8.6 out of 10. It can be exploited remotely over the network by an unauthenticated attacker, without any action from a user. The record lists version 1.85 as the first without the flaw, so updating BC-JAVA to that release or later removes the exposure. There is no confirmed exploitation so far. EPSS estimates a 0.17% chance of exploitation within 30 days, which is low compared with other CVEs.
High severity with no evidence of exploitation so far.
What to do
- Update BC-JAVA to 1.85 or a later version.
- Update BC-LTS-JAVA to 2.73.12 or a later version.
- Update BC-FJA to 1.0.13 or 2.0.13 or 2.1.13, whichever matches your release line, or a later version.
- Until you can update, restrict network access to the affected service so it is not reachable from untrusted networks.
Affected products and versions
| Vendor | Product | Affected versions | Fixed in |
|---|---|---|---|
| Legion of the Bouncy Castle | BC-JAVA | 1.74 up to, but not including, 1.85 | 1.85 |
| Legion of the Bouncy Castle | BC-LTS-JAVA | 2.73.0 up to, but not including, 2.73.12 | 2.73.12 |
| Legion of the Bouncy Castle | BC-FJA | 1.0.7 up to, but not including, 1.0.13; 2.0.0 up to, but not including, 2.0.13; 2.1.0 up to, but not including, 2.1.13 | 1.0.13, 2.0.13, 2.1.13 |
| Bouncycastle | Bcpg-fips | 1.0.7 up to, but not including, 1.0.13; 2.0.8 up to, but not including, 2.0.13; 2.1.10 up to, but not including, 2.1.13 | 1.0.13, 2.0.13, 2.1.13 |
| Bouncycastle | Bouncy Castle For Java LTS | 2.73.11 and earlier | Not stated |
Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.
How the severity score breaks down
- Attack vector
- NetworkCan be exploited remotely over a network, including the internet.
- Attack complexity
- LowNo special conditions are needed; the attack works reliably.
- Privileges required
- NoneNo account or login is needed.
- User interaction
- NoneNo action by a victim is required.
- Scope
- UnchangedImpact stays within the vulnerable component.
- Confidentiality
- LowSome restricted data can be read.
- Integrity
- LowLimited modification of data is possible.
- Availability
- HighThe component can be taken down completely.
Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:H. Scored by NVD.
| Scoring system | Score | Severity | Scored by |
|---|---|---|---|
| CVSS 4.0 | 8.7 | High | CNA |
| CVSS 3.1 | 8.6 | High | NVD |
Official description
In Bouncy Castle for Java before 1.85, OpenPGP AEAD decryption skips final tag on chunk-aligned data. This issue also affects Bouncy Castle for Java LTS before 2.73.12, and Bouncy Castle for Java FIPS (BC-FJA) before bcpg-fips 1.0.13 (1.0.X series), 2.0.13 (2.0.X series) and 2.1.13 (2.1.X series).
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: Improper Validation of Integrity Check Value
The product does not validate or incorrectly validates the integrity check values or checksums of a message.
How developers prevent this class of flaw
- The protocol specification describes the algorithm used for calculating the checksum. It is then a matter of implementing the calculation and verifying that the calculated checksum and the received checksum match.
More Improper Validation of Integrity Check Value vulnerabilities (CWE-354)
Timeline
- CVE record published.
- CISA published its SSVC assessment (exploitation: none, automatable: yes, technical impact: partial).
- Record last changed materially (score, affected products, status or references).
References
Patches and release notes
Third-party and government advisories
- github.com/bcgit/bc-java/wiki/CVE%E2%80%902026%E2%80%9012817Third Party Advisory
Other vulnerabilities in BC-JAVA
- 8.2 High severity
- 7.1 High severity
- 8.7 High severity
- 8.7 High severity
- 8.7 High severity
- 8.2 High severity
Recent Improper Validation of Integrity Check Value vulnerabilities
- 7.5 High severity
- 7.5 High severity
- 7.5 High severity
- 7.5 High severity
- 7.5 High severity
- 8.7 High severity
Spotted an error? Tell us.