Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain write or supply-chain access to keystore file
-
DeliveryDowngrade on-disk version field to v0/1
-
ExploitBrute-force 16-bit HMAC key offline
-
ExecutionForge valid integrity MAC over modified keystore
-
PersistInject rogue trusted certificate into store
-
ImpactApplication loads tampered keystore without error
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Encryption strength requirements
|
| Exploitation Conditions | Exploitation requires the attacker to supply, replace, or tamper with a BKS keystore file that the target application subsequently loads via the default BKS keystore type in an unpatched Bouncy Castle version. The target application must use Bouncy Castle's BKS provider specifically (not SunJKS or PKCS12 formats), and the keystore on disk must be in legacy version 0 or 1 format or the attacker must be able to overwrite the unauthenticated version field to downgrade a version 2 store. Exploitation is further limited to scenarios where the attacker holds write access to the keystore storage path, can intercept keystore retrieval from a network source, or can influence the keystore through supply chain means. Applications that load BKS keystores exclusively from read-only, integrity-protected local storage (e.g., embedded in a signed JAR, protected by OS file ACLs) face substantially reduced practical risk. Authentication requirements are not determinable from CVSS alone, as the PR:N metric reflects that no application-level credentials are needed to supply the file, not that the attacker faces no barriers. |
| Impact | The CVSS 4.0 score of 7.1 (AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:H) reflects a high integrity impact with no confidentiality or availability consequence, and requires passive user interaction - meaning an operator or application must load the crafted keystore. The real-world attack complexity is substantially higher than AC:L implies in isolation: exploitation requires the attacker to first place or tamper with the specific BKS keystore file that the target application loads, which typically demands supply chain access, write access to a deployment environment, or MITM positioning on a network-retrieved keystore. Once file access is achieved, the 16-bit brute-force is trivially fast and forging the MAC is straightforward. No public exploit code and no CISA KEV listing exist at time of analysis, making this a low-urgency but legitimate integrity-bypass risk. Applications loading BKS keystores exclusively from read-only, integrity-protected local storage (e.g., bundled inside a JAR with verified checksums) face substantially lower practical exposure than those loading from network paths or user-influenced locations. |
| Exploit ScenarioDerived | An attacker with write access to a server's BKS keystore file (obtained via misconfigured permissions, supply chain compromise, or interception of a network-fetched keystore) downgrades the version field to v0/1 and brute-forces the 16-bit HMAC key offline in under a second across all 65,536 possible values. The attacker recomputes a valid integrity MAC over a modified keystore containing a rogue trusted certificate authority, causing the target Java application running unpatched Bouncy Castle to silently trust the injected CA and enabling subsequent TLS interception or code-signing bypass. No public proof-of-concept exploit 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
Bouncy Castle for Java's BKS keystore implementation silently accepted legacy version 0/1 keystores that derive a critically weak 16-bit HMAC integrity key - brute-forceable offline in milliseconds against the 65,536-value keyspace - allowing an attacker who can supply or tamper with a keystore file to forge the integrity MAC, inject rogue trusted certificates, and have the manipulated keystore accepted without error. All bc-java releases before 1.85 and bc-lts-java releases before 2.73.12 are affected. No public exploit code has been identified and this vulnerability does not appear in the CISA KEV catalog at time of analysis.
RemediationAI
Upgrade bc-java to version 1.85 or later, or bc-lts-java to version 2.73.12 or later; these are the exact fix versions confirmed by the vendor advisory at https://github.com/bcgit/bc-java/wiki/CVE-2026-59651 and the upstream patch commit at https://github.com/bcgit/bc-java/commit/faf5daa6e9b8460f862afc0af1cc0da365f7d4d2. After upgrading, the default BKS keystore type will throw an IOException when a legacy version 0/1 keystore is encountered, preventing silent acceptance of weakly-MAC'd stores. Applications that legitimately require reading or migrating legacy v0/1 keystores may opt in by setting the system or security property org.bouncycastle.bks.enable_v1 (also exposed as Properties.BKS_ENABLE_V1), but this opt-in should be used only transiently during migration and then disabled. As a compensating control prior to patching, restrict OS-level filesystem permissions on all BKS keystore files to prevent unauthorized modification, and avoid loading keystores from network-accessible, user-supplied, or writable paths - this directly eliminates the attacker's prerequisite file-access step.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The BKS (Bouncy Castle Keystore) format uses an HMAC to guarantee on-disk integrity. In legacy format versions 0 and 1, the HMAC key was derived using only the digest size expressed in bits rather than bytes - for SHA-1 this produces a 16-bit (2-byte) effective key instead of the expected 160-bit key, a factor-of-10 reduction in security that collapses the keyspace to 65,536 values. This root cause maps to CWE-326 (Inadequate Encryption Strength). CVE-2018-5382 originally identified this weakness and the version 2 format was introduced to write a full-length key; however, as the commit diff confirms, the load path continued to honor the unauthenticated version field read from the file, meaning an attacker could present or rewrite a keystore with a downgraded version field, brute-force the 16-bit key offline, and forge a valid MAC over modified content. Affected CPEs are cpe:2.3:a:legion_of_the_bouncy_castle_inc.:bc-java:*:*:*:*:*:*:*:* and cpe:2.3:a:legion_of_the_bouncy_castle_inc.:bc-lts-java:*:*:*:*:*:*:*:*.
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:P/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/U:Amber
Keystore can be delivered over a network path (AV:N); 16-bit brute-force is trivial once file access exists (AC:L); operator or application must load the crafted file (UI:R); integrity impact only.
Primary rating from Vendor (bcorg).
CVSS VectorVendor: bcorg
DescriptionCVE.org
In Bouncy Castle for Java before 1.85, BKS keystore accepts legacy version with 16-bit integrity MAC key. This issue also affects Bouncy Castle for Java LTS before 2.73.12.
Executive ViewAI
Bouncy Castle for Java (bc-java before 1.85 and bc-lts-java before 2.73.12) contains a keystore integrity validation flaw enabling attackers with file access to inject malicious certificates without detection, compromising encrypted communications and authentication systems. This affects any organization using these libraries for TLS/SSL or certificate validation and requires immediate patching.
Apply vendor patch. Pending patching, implement strict file access controls on keystores, validate keystores through external trusted sources, disable legacy keystore format support if possible, and monitor for unexpected certificate additions or modifications in security logs.
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.
Related Vulnerabilities in Bouncy Castle for Java Cryptographic Vulnerabilities
View all 23Oracle 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 weakness CWE-326 – Inadequate Encryption Strength
View allSame technique Information Disclosure
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| 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-52023
GHSA-mwmr-38hj-q7gm
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB