Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconIntercept or obtain write access to OpenPGP AEAD ciphertext
-
DeliveryIdentify or induce chunk-aligned plaintext length
-
ExploitStrip one or more trailing ciphertext chunks and the final authentication tag
-
InstallAdjust outer OpenPGP packet length to match truncated ciphertext
-
C2Deliver tampered ciphertext to target application
-
ExecuteBouncy Castle AEAD stream processes surviving chunks, skips final tag, signals EOF
-
ImpactApplication receives truncated plaintext silently accepted as authentic
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V15 - Secure Coding and Architecture Integrity verification
|
| Exploitation Conditions | Two concurrent conditions are required for exploitation. First, the plaintext encrypted under OpenPGP AEAD must be an exact multiple of the configured AEAD chunk length - this is an inherent numerical property of the data rather than a configurable option, meaning it occurs naturally for a non-trivial fraction of real-world messages and files. Second, the attacker must be able to modify the OpenPGP ciphertext after it is produced - either via a network-level man-in-the-middle position or direct write access to the file or message store holding encrypted data. The vulnerability is scoped strictly to the OpenPGP AEAD decryption path (SEIPDv2 per RFC 9580 and the legacy v5 AEAD packet); standard MDC-protected PGP messages (SEIPDv1) use a separate code path and are not affected. Confidentiality of surviving ciphertext chunks is not compromised because each chunk's individual AEAD tag remains intact and valid; only integrity of the overall message length and the presence of trailing chunks is bypassed. |
| Impact | The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N) scores 8.7, reflecting a network-reachable unauthenticated integrity bypass with no stated attack complexity. Real-world risk is genuine but gated: exploitation requires the attacker to both reach a position where they can modify OpenPGP ciphertext (MITM or storage write access) and encounter a chunk-aligned plaintext, which is a natural property of certain file sizes rather than a configuration knob. The integrity failure mode is entirely silent - no exception is raised, verify() returns true, and the recipient application receives truncated plaintext with no indication of tampering - making detection difficult without supplementary out-of-band integrity checks. No EPSS data was provided in the input. No public exploit code exists and the vulnerability is not in CISA KEV, suggesting exploitation has not been observed in the wild at time of analysis. However, the combination of a widely-deployed library, a silent failure mode, and the complete absence of a backstop in the verify() method makes this a genuine remediation priority for any application relying on OpenPGP AEAD for message authenticity - particularly document signing workflows, secure file transfer pipelines, and encrypted email systems. |
| Exploit ScenarioDerived | An attacker with write access to stored OpenPGP AEAD-encrypted files - or positioned as a man-in-the-middle on the encrypted message transport - identifies a ciphertext whose plaintext length is a multiple of the AEAD chunk size, strips one or more trailing data chunks along with the final authentication tag, and patches the outer OpenPGP packet length field to reflect the reduced size. When the intended recipient's Bouncy Castle-based application decrypts the message, each surviving chunk passes its individual tag check, the decrypting stream reaches EOF without verifying the missing final tag, and PGPEncryptedData.verify() returns true - causing the application to silently process truncated plaintext as a fully authentic, unmodified message. No public proof-of-concept code has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 03, 2026
OpenPGP AEAD decryption in Bouncy Castle for Java silently bypasses the final authentication tag when plaintext is an exact multiple of the AEAD chunk length, allowing an attacker who can tamper with ciphertext to strip trailing plaintext chunks and have the truncated message accepted as cryptographically authentic. Affected libraries span bc-java before 1.85, bc-lts-java before 2.73.12, and all three active BC-FJA FIPS series before their respective bcpg-fips 1.0.13, 2.0.13, and 2.1.13 releases. No public exploit has been identified at time of analysis and this CVE is not listed in CISA KEV, but the CVSS 4.0 score of 8.7 (Integrity: High) reflects a complete and silent bypass of AEAD integrity guarantees for chunk-aligned messages with no downstream exception or warning.
RemediationAI
The primary fix is to upgrade to a patched release: bc-java 1.85 or later, bc-lts-java 2.73.12 or later, or the appropriate BC-FJA FIPS release - bcpg-fips 1.0.13 for the 1.0.X series, bcpg-fips 2.0.13 for the 2.0.X series, or bcpg-fips 2.1.13 for the 2.1.X series. The fix is confirmed by upstream commit https://github.com/bcgit/bc-java/commit/4b712819846ec944379f4909101abac20f0ad4b0, which introduces a verifyFinalTag() method invoked unconditionally before EOF is signalled in both the Bc and Jce decryptors. The vendor advisory at https://github.com/bcgit/bc-java/wiki/CVE-2026-12817 should be consulted for additional guidance. If an immediate upgrade is not feasible, the only effective compensating control is to avoid relying on OpenPGP AEAD (SEIPDv2 or v5 AEAD packet) for message integrity and instead use MDC-protected traditional PGP (SEIPDv1), whose verification path is not affected by this defect; this trades off AEAD performance and per-chunk authentication benefits. A secondary mitigation is to add an application-layer integrity check (e.g., a detached signature or hash verified via an out-of-band channel) on all decrypted PGP payloads before acting on their contents, though this adds architectural complexity and does not fix the underlying library defect.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 3 packages in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Bouncy Castle (Legion of the Bouncy Castle Inc.) is the dominant open-source Java cryptographic library, embedded across enterprise, Android, and server-side Java applications. The affected code paths are BcAEADUtil and JceAEADUtil, which implement OpenPGP Authenticated Encryption with Associated Data per RFC 9580 SEIPDv2 and the earlier v5 AEAD packet format. Under the OpenPGP AEAD scheme, plaintext is divided into fixed-size chunks; each chunk carries its own AEAD authentication tag, and a trailing message-level final tag authenticating the total plaintext length is appended last (RFC 9580 §5.13.2). CWE-354 (Improper Validation of Integrity Check Value) captures the root cause precisely: the decrypting stream's look-ahead pre-read the final trailing tag into the buffer, but the full-size-chunk processing path never submitted that buffer to cipher.doFinal(); EOF was signalled without the tag ever being verified. The short-final-chunk path did call doFinal correctly, meaning only non-aligned plaintexts received full integrity verification. Compounding the defect, PGPEncryptedData.verify() was coded to return true unconditionally for all AEAD-decrypted messages, providing no secondary backstop when the stream failed to throw.
Know when Java gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/U:Amber
Requires both ciphertext tamper access and a chunk-aligned plaintext, warranting AC:H; no authentication needed and no confidentiality or availability impact.
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Primary rating from Vendor (bcorg).
CVSS VectorVendor: bcorg
DescriptionCVE.org
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).
Executive ViewAI
Bouncy Castle for Java (bc-java, bc-lts-java, and BC-FJA FIPS variants) contains a cryptographic authentication bypass in OpenPGP AEAD decryption that silently accepts truncated or forged messages under specific conditions, with no public exploit identified at time of analysis. Organizations using these libraries for message authentication risk accepting compromised data without operator detection or warning. The silent failure mode poses significant integrity risk to any system relying on Bouncy Castle for cryptographic message validation.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m
Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti
Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent
Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug
JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up
Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up
The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow
Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla
The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during
Same technique Information Disclosure
View allVendor StatusVendor
SUSE
Severity: Important| Product | Status |
|---|---|
| openSUSE Leap 16.0 | Fixed |
| openSUSE Tumbleweed | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP7 | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP4 | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP6 | Affected |
| SUSE Linux Enterprise Server 15 SP4 | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP5 | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP6 | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE Manager Proxy 4.3 | Affected |
| SUSE Manager Retail Branch Server 4.3 | Affected |
| SUSE Manager Server 4.3 | Affected |
| SUSE Enterprise Storage 7 | Affected |
| SUSE Enterprise Storage 7.1 | Affected |
| SUSE Linux Enterprise Desktop 15 SP2 | Affected |
| SUSE Linux Enterprise Desktop 15 SP3 | Affected |
| SUSE Linux Enterprise Desktop 15 SP4 | Affected |
| SUSE Linux Enterprise Desktop 15 SP5 | Affected |
| SUSE Linux Enterprise Desktop 15 SP6 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP6 | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP2 | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP3 | Affected |
| SUSE Linux Enterprise Real Time 15 SP2 | Affected |
| SUSE Linux Enterprise Real Time 15 SP3 | Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | Affected |
| SUSE Linux Enterprise Server 15 SP2 | Affected |
| SUSE Linux Enterprise Server 15 SP2-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP3 | Affected |
| SUSE Linux Enterprise Server 15 SP3-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP2 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Manager Proxy 4.1 | Affected |
| SUSE Manager Proxy 4.2 | Affected |
| SUSE Manager Retail Branch Server 4.1 | Affected |
| SUSE Manager Retail Branch Server 4.2 | Affected |
| SUSE Manager Server 4.1 | Affected |
| SUSE Manager Server 4.2 | Affected |
| openSUSE Leap 15.3 | Affected |
| openSUSE Leap 15.4 | Affected |
| openSUSE Leap 15.5 | Affected |
| openSUSE Leap 15.6 | Affected |
EUVD-2026-52136
GHSA-9q38-7pr7-8j6w
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB