Skip to main content
EPSS 0.4%top 64%

CVE-2026-17508: CWE-770 Allocation of Resources Without Limits or Throttling in Legion of the Bouncy Castle Inc. BC-JAVA

0
Medium
Published: 10/02/2026 (10/02/2026, 07:27:59 UTC)
Source: GCVE Database
Vendor/Project: Legion of the Bouncy Castle Inc.
Product: BC-JAVA

Description

In Bouncy Castle for Java before 1.86, several password-based key derivation entry points ran the KDF with cost parameters taken from the untrusted input being processed, without bounding them, so a small input could dictate an arbitrary amount of work before any password or integrity check could reject it. The affected paths are the RFC 9579 PBMAC1 MAC calculator builders, which took the PBKDF2 iteration count and derived-key length straight out of PBMAC1Params (JcePBMac1CalculatorBuilder, and PKCS12PBEUtils.createPBMac1Calculator reached from PKCS12PfxPdu.isMacValid); the scrypt parallelization parameter p in the PKCS#8 and PKCS#12 cost guards, which bounded only the cost parameter N and the block size r even though the scratch buffer scales with r times p, so the configured memory ceiling could be evaded entirely; the raw JCA PBKDF2 provider (org.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2); and the bcrypt round count read from an encrypted OpenSSH v1 private key's own kdfoptions. Each now bounds the parameter before deriving, in line with the caps already applied elsewhere in the tree, with the OpenSSH round count configurable through the new org.bouncycastle.openssh.max_rounds property. This completes the bounding begun in 1.85 for the PKCS#8 / PBES2 decryptors (CVE-2026-15055). This issue also affects Bouncy Castle for Java LTS before 2.73.13, and Bouncy Castle for Java FIPS (BC-FJA) before bcpkix-fips 1.0.13 (1.0.X series), 2.0.13 (2.0.X series) and 2.1.13 (2.1.X series).

CVSS v4.0

Score 5.3medium

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vuln. Confidentiality
None
Vuln. Integrity
None
Vuln. Availability
Low
Subsq. Confidentiality
None
Subsq. Integrity
None
Subsq. Availability
None
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/U:Amber

Affected software

org.bouncycastle/bcprov-jdk15on
pkg:maven/org.bouncycastle/bcprov-jdk15on
Affected versions
<1.86

Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.

AI-Powered Analysis

Machine-generated threat intelligence

AILast updated: 10/02/2026, 18:21:12 UTC

Technical Analysis

In Bouncy Castle for Java before version 1.86, several password-based key derivation entry points run the KDF with cost parameters taken from untrusted input without bounding them, allowing a small input to dictate an arbitrary amount of computational work before any password or integrity check can reject it. Affected components include the RFC 9579 PBMAC1 MAC calculator builders (JcePBMac1CalculatorBuilder and PKCS12PBEUtils.createPBMac1Calculator), scrypt parallelization parameter p in PKCS#8 and PKCS#12 cost guards, the raw JCA PBKDF2 provider, and bcrypt round count from encrypted OpenSSH v1 private keys. The fix in 1.86 bounds these parameters appropriately, with the OpenSSH round count configurable via the new org.bouncycastle.openssh.max_rounds property. This vulnerability also affects Bouncy Castle for Java LTS before 2.73.13 and Bouncy Castle for Java FIPS before bcpkix-fips 1.0.13, 2.0.13, and 2.1.13. This completes the bounding work started in version 1.85 for PKCS#8 / PBES2 decryptors (CVE-2026-15055).

Potential Impact

An attacker can supply crafted input parameters that cause the key derivation functions to consume excessive CPU and memory resources before any password or integrity verification occurs. This can lead to denial of service conditions by exhausting system resources. There is no indication of direct compromise or data leakage from this vulnerability.

Mitigation Recommendations

Upgrade Bouncy Castle for Java to version 1.86 or later. For Bouncy Castle for Java LTS, upgrade to version 2.73.13 or later. For Bouncy Castle for Java FIPS, upgrade to bcpkix-fips 1.0.13, 2.0.13, or 2.1.13 or later depending on the series in use. These versions implement proper bounding of cost parameters to prevent excessive resource consumption. No other mitigation is required as the issue is fixed in these versions.

Pro Console: star threats, build custom feeds, automate alerts via Slack, email & webhooks.Upgrade to Pro

Technical Details

Gcve Source
db.gcve.eu
Osv Id
GHSA-m3x3-p27c-whhp
Osv Schema Version
1.4.0
Aliases
["CVE-2026-17508"]
Database Specific Severity
MODERATE
Cvss Version
4.0
State
PUBLISHED

Threat ID: 6abfeeb7a43b0b3b89e560a2

Added to database: 10/02/2026, 17:49:43 UTC

Last enriched: 10/02/2026, 18:21:12 UTC

Last updated: 10/03/2026, 04:45:56 UTC

Views: 8

Community Reviews

0 reviews

Crowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.

Sort by
Loading community insights…

Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.

Actions

PRO

Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.

Please log in to the Console to use AI analysis features.

Need more coverage?

Upgrade to Pro Console for AI refresh and higher limits.

For incident response and remediation, OffSeq services can help resolve threats faster.

Latest Threats

Breach by OffSeqOFFSEQFRIENDS — 25% OFF

Check if your credentials are on the dark web

Instant breach scanning across billions of leaked records. Free tier available.

Scan now
OffSeq TrainingCredly Certified

Lead Pen Test Professional

Technical5-day eLearningPECB Accredited
View courses