GHSA-mx76-r943-rf8g

Bouncy Castle LTS native GCM chunking can cause bad-tag exception on decryption

At a glance

Published
Updated
CVE
CVE-2026-8149
CVSS_V4
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N

Description

In Bouncy Castle LTS for Java, the AES/GCM native implementation used on Intel CPUs with AES PAA instruction sets (AVX / VAES / VAESF variants) can intermittently produce an incorrect authentication tag verification result during decryption when the ciphertext is fed in via a mix of `update()` calls followed by `doFinal()`. It is possible to work around it by either using `doFinal()` only (as the BCJSSE does) or by configuring the module to run in pure Java mode, by setting the system property "org.bouncycastle.native.cpu_variant" to java.

Affected packages

PackageVersions
Maven · org.bouncycastle:bcprov-lts8onintroduced 2.73.0, fixed 2.73.11

References

Sources

SourceLicence
OSV.devCC-BY 4.0 — GitHub Advisory Database