Advisory Database
  • Advisories
  • Dependency Scanning
  1. maven
  2. ›
  3. org.bouncycastle/bcprov-jdk15to18
  4. ›
  5. CVE-2026-12816

CVE-2026-12816: IESEngine stream-mode MAC forgery via length-dependent KDF split

August 3, 2026 (updated September 16, 2026)

Affects Bouncy Castle for Java before 1.85. When IESEngine is initialised without a block cipher, the KDF output is split into an XOR keystream followed by the MAC key, so the MAC key offset depends on message length. Because the KDF is prefix-stable, one known plaintext reveals enough keystream to expose the MAC key for any shorter message. A passive observer can then forge authenticated ciphertexts the recipient accepts, without holding either private key.

References

  • github.com/bcgit/bc-java/commit/6d9e4bbaee9409713ada167e5f901554cbb084ac
  • github.com/bcgit/bc-java/wiki/CVE-2026-12816
  • nvd.nist.gov/vuln/detail/CVE-2026-12816

Code Behaviors & Features

Detect and mitigate CVE-2026-12816 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions before 1.85.0

Fixed versions

  • 1.85.0

Solution

Upgrade to version 1.85.0 or above.

Impact 7.5 HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

Learn more about CVSS

Weakness

  • CWE-354: Improper Validation of Integrity Check Value

Source file

maven/org.bouncycastle/bcprov-jdk15to18/CVE-2026-12816.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:17:11 +0000.