Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend crafted CMP message to endpoint
-
DeliveryEmbed near-2^31 iterationCount in unauthenticated PBMParameter
-
ExploitServer passes count to PKMACBuilder.build()
-
ExecutionUnbounded hash loop consumes CPU for billions of iterations
-
PersistThread blocked; repeat across connection pool
-
ImpactCMP service denial of service
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource allocation limits
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The vulnerable code path is triggered only when a server verifies an incoming CMP message protected with a passwordBasedMac (ProtectedPKIMessage.verify(PBEMacCalculatorProvider, char[]) call path through PKMACBuilder). Applications must be actively processing inbound CMP messages from untrusted or network-accessible sources for the attack to apply. PKMACBuilder instances constructed with an explicit maxIterations ceiling (via the constructor overload) are not vulnerable regardless of library version. Applications using Bouncy Castle exclusively for non-CMP operations (TLS, S/MIME, PGP, JCE provider usage) are not exposed. No authentication is required - the PBMParameter field containing the malicious iterationCount is in the unauthenticated portion of the CMP message, consumed before any MAC verification. Exploitation is further limited to network paths that can reach the CMP service; the CVSS 4.0 vector confirms AC:L/AT:N, meaning no race condition or special timing is required. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) confirms remote, unauthenticated exploitation with low attack complexity and no prerequisites - an ideal profile for automated abuse. The official scoring rates vulnerable-system availability at VA:L, which appears conservative given the commit documentation describes an attacker driving the verifying system into 'billions of hash iterations,' which in practice would block request-handling threads and could render the CMP endpoint completely unresponsive under sustained attack. An independent assessment of A:H is arguable for any multi-threaded server without connection-level rate limiting. No EPSS score is available in the provided data. The vulnerability is not listed in CISA KEV and no public proof-of-concept exploit has been identified, reducing urgent remediation pressure. However, the attack primitive is trivially constructable - a crafted CMP message with an oversized iterationCount field requires no cryptographic knowledge to weaponize. The primary limiting factor is deployment context: only systems that receive and verify passwordBasedMac-protected CMP messages are exposed; Java applications using Bouncy Castle solely for TLS, S/MIME, or PGP are unaffected. |
| Exploit ScenarioDerived | An attacker targeting a Java application that exposes a CMP endpoint - such as a private certificate authority, SCEP gateway, or EST server built on Bouncy Castle - crafts a CMP message with a passwordBasedMac ProtectionAlgorithm whose PBMParameter iterationCount is set to a value near 2,147,483,647 (2^31-1). When the server calls ProtectedPKIMessage.verify(PBEMacCalculatorProvider, char[]), the unpatched PKMACBuilder enters an iterated hash loop executing billions of iterations per message, consuming 100% of a CPU core for the duration. Submitting a stream of such messages from a single client can saturate all available threads, causing a complete denial of service for legitimate CMP clients. No public proof-of-concept exploit has been identified, but the crafted message requires no cryptographic secrets - only knowledge of CMP message structure. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 03, 2026
CPU-exhaustion denial of service in Bouncy Castle for Java affects any server that verifies CMP (Certificate Management Protocol) password-MAC protected messages using PKMACBuilder without an explicit iteration ceiling. The library's PKMACBuilder accepted the iteration count directly from the unauthenticated PBMParameter field in an incoming CMP message with no upper bound, allowing a remote unauthenticated attacker to supply a count near 2^31 and force billions of hash iterations on the target. No active exploitation is confirmed (not in CISA KEV), but the attack is unauthenticated, requires no special configuration beyond standard CMP usage, and a patch is available upstream.
RemediationAI
Upgrade to the patched release for your release train: bc-java 1.85 or later, bc-lts-java 2.73.12 or later, or the appropriate BC-FJA fix release (bcpkix-fips 1.0.12, 2.0.12, or 2.1.12 depending on your 1.0.X, 2.0.X, or 2.1.X series). The upstream fix commit is c99d6427d6818d04165b07b45dfda96f2b384c53; however, a tagged release rather than a raw commit should be used for production deployments. If immediate upgrade is not possible, applications can set the system property org.bouncycastle.pkmac.max_iteration_count to a safe ceiling (e.g., 10000000) at JVM startup - this engages the new property introduced in the fix and limits the iteration loop even on older library versions only if backported; verify whether your installed version honours this property before relying on it. As a network-level workaround, restrict access to CMP endpoints (typically port 829/TCP or vendor-specific HTTPS paths) to trusted certificate management infrastructure only, using firewall rules or reverse-proxy ACLs - this eliminates unauthenticated attacker access at the cost of reducing CMP availability to allowed sources. Advisory reference: https://github.com/bcgit/bc-java/wiki/CVE-2026-59647.
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 for Java (bc-java, bc-lts-java, bc-fja) is a widely used Java cryptographic library. The affected component implements CRMF (RFC 4211) and CMP (RFC 4210) password-based MAC verification via the PKMACBuilder class. In CMP, the PBMParameter ASN.1 structure carries an iterationCount field that specifies how many times a hash is applied during key derivation for the password-based MAC. Critically, PBMParameter is part of the unauthenticated portion of the CMP message - the iteration count arrives before the MAC is verified and is therefore fully attacker-controlled. Prior to the fix, PKMACBuilder.build(char[] password) would only enforce an upper bound if the caller had explicitly supplied a maxIterations value at construction time; otherwise the library blindly looped for whatever count the incoming message declared. This maps directly to CWE-770 (Allocation of Resources Without Limits or Throttling): the resource consumed is CPU cycles in an iterated hash loop driven by untrusted external input. The fix, committed in c99d6427, introduces a system property org.bouncycastle.pkmac.max_iteration_count (PKMAC_MAX_ITERATION_COUNT) with a default ceiling of 10,000,000 - generous enough for all legitimate uses - and rejects any incoming count exceeding this ceiling with an IllegalArgumentException before the loop executes.
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:N/VA:L/SC:N/SI:N/SA:N/U:Amber
Network-reachable, unauthenticated, zero-complexity attack drives billions of hash iterations per message, causing complete thread exhaustion and service unavailability - warrants A:H over the official VA:L.
Primary rating from Vendor (bcorg).
CVSS VectorVendor: bcorg
DescriptionCVE.org
In Bouncy Castle for Java before 1.85, CRMF/CMP password-MAC honours unbounded iteration count. This issue also affects Bouncy Castle for Java LTS before 2.73.12, and Bouncy Castle for Java FIPS (BC-FJA) before bcpkix-fips 1.0.12 (1.0.X series), 2.0.12 (2.0.X series) and 2.1.12 (2.1.X series).
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
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
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 technique Denial Of Service
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-52027
GHSA-jjmc-c8fq-qcww
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB