CVE-2026-59640: Bouncy Castle OpenPGP CFB oracle vulnerability in symmetric key paths

CVE-2026-59640 · Severity: medium · CVSS 5.3 · Published 2026-08-03

Bouncy Castle is a widely-used cryptographic library that implements OpenPGP (Pretty Good Privacy) encryption standards. A weakness in the CFB (Cipher Feedback) mode implementation allows attackers to perform an oracle attack on symmetric encryption keys used in OpenPGP message decryption. An attacker with network access to a service using vulnerable Bouncy Castle versions could potentially recover encrypted session keys, compromising the confidentiality of OpenPGP-encrypted communications.

Technologies: Bouncy Castle for Java, Bouncy Castle for Java FIPS. Vendors: Bouncy Castle.

Quick answers

Is CVE-2026-59640 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-59640 being exploited in the wild.
How severe is CVE-2026-59640?
Medium severity, with a CVSS score of 5.3, published 3 August 2026.
Which products and versions are affected?
Bouncy Castle for Java before 1.85; Bouncy Castle for Java FIPS bcpg-fips before 1.0.13 (1.0.X), before 2.0.13 (2.0.X), before 2.1.13 (2.1.X).
Is there a fix for CVE-2026-59640?
No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.
How is CVE-2026-59640 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-59640?
Check whether you run Bouncy Castle for Java or Bouncy Castle for Java FIPS at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

The vulnerability is a CFB mode quick-check oracle in OpenPGP symmetric/session-key paths within Bouncy Castle for Java. The vulnerability allows attackers to perform timing or response-based oracle attacks to recover information about encrypted session keys during decryption operations. The flaw affects Bouncy Castle for Java before version 1.85, Bouncy Castle for Java LTS before 2.73.12, and Bouncy Castle for Java FIPS (BC-FJA) in multiple version series (before 1.0.13 for 1.0.X, before 2.0.13 for 2.0.X, and before 2.1.13 for 2.1.X). The attack is network-accessible and requires repeated oracle queries but no special authentication. Patches are available in the indicated versions.

Affected products

  • Bouncy Castle Bouncy Castle for Java before 1.85
  • Bouncy Castle Bouncy Castle for Java LTS before 2.73.12
  • Bouncy Castle Bouncy Castle for Java FIPS bcpg-fips before 1.0.13 (1.0.X), before 2.0.13 (2.0.X), before 2.1.13 (2.1.X)

Timeline

  • 2026-08-03: disclosed

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.