Unbounded PBE iteration count when decrypting PKCS#8 private keys
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Passive
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-770.
Summary
Allocation of resources without limits in password-based private-key decryption (PbeUtilities.GenerateCipherParameters) in Legion of the Bouncy Castle Inc. bc-csharp before 2.7.0 allows an attacker who can supply an encrypted private key, such as a PKCS#8 EncryptedPrivateKeyInfo or "ENCRYPTED PRIVATE KEY" PEM file, to cause a denial of service through CPU exhaustion via an iteration count close to 2^31, because the count is taken from the unauthenticated algorithm parameters without an upper bound and the key derivation runs before the password or the data can be checked. PKCS#5 PBES1 and PBES2 (PBKDF2), the PKCS#12 PBE algorithms and CMS password recipients (CmsPbeKey) are affected. Loading PKCS#12 files with Pkcs12Store is covered by CVE-2026-63572, and a zero or negative count with the PKCS#12 algorithms by CVE-2026-63575.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Legion of the Bouncy Castle Inc. | bc-csharp | before 2.7.0 | 2.7.0 | Patch available | CNA |
- bc-csharp VendorLegion of the Bouncy Castle Inc. Affected before 2.7.0 Fixed in 2.7.0 Patch available CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:bouncycastle:bc-csharp:*:*:*:*:*:*:*:* | before 2.7.0 | Vulnerable | Legion of the Bouncy Castle Inc. |
- cpe:2.3:a:bouncycastle:bc-csharp:*:*:*:*:*:*:*:* Versions before 2.7.0 Vulnerable ·Legion of the Bouncy Castle Inc.
Remediation
- Fix · CNA bc-csharp (Legion of the Bouncy Castle Inc.) Fixed in 2.7.0
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
Legion of the Bouncy Castle bc-csharp 2.7.0
21 records Highest priority Priority MEDIUM 8 MEDIUM, 13 LOW
Other records, highest priority first
- TI-2026-65844 MTI/A0 DHAgreement does not validate the peer's ephemeral valuePriority MEDIUM 47
- TI-2026-66020 Unbounded HSS public key level count allows huge array allocation during signature verificationPriority MEDIUM 44
- TI-2026-66017 Unbounded ASN.1 nesting depth causes process-terminating stack overflowPriority MEDIUM 44
Timeline
- 2026-10-02 Threatist record created from CVE-2026-63578
- 2026-10-03 Alias added: GHSA-4583-5v2w-p3vq
- 2026-10-06 CISA SSVC decision points changed
- 2026-10-28 CVSS score added · NVD
References
Patch 6
- https://github.com/bcgit/bc-csharp/wiki/CVE-2026-63578
- https://github.com/bcgit/bc-csharp/commit/c00fc018fca89c077c64dd2a2a2eb00ae7d97241
- https://github.com/bcgit/bc-csharp/commit/54ea0b179ee627027829b44c45d6dd32e575bd67
- https://github.com/bcgit/bc-csharp/commit/7c0ed15f9783c9595b1a53f3900136461fd944f4
- https://github.com/bcgit/bc-csharp/commit/34a7c05f719c91c024f285c6b420d3c00f8019dd
- https://github.com/bcgit/bc-csharp/commit/b57165ecb7790ecea08273b219d52d80c12990e4
More Legion of the Bouncy Castle Inc. Bc-csharp vulnerabilities
- TI-2026-65844 MTI/A0 DHAgreement does not validate the peer's ephemeral value CVSS 4.0CRITICAL 9.1
- TI-2026-66020 Unbounded HSS public key level count allows huge array allocation during signature verification CVSS 4.0HIGH 8.7
- TI-2026-66017 Unbounded ASN.1 nesting depth causes process-terminating stack overflow CVSS 4.0HIGH 8.7
- TI-2026-65849 Unbounded allocation from OpenPGP signature and user attribute subpacket lengths CVSS 4.0HIGH 8.7
- TI-2026-65843 Unbounded CMP/CRMF password-based MAC iteration count allows CPU exhaustion CVSS 4.0HIGH 8.7
- TI-2026-65841 DTLS handshake reassembler allocates buffer from unchecked 24-bit length CVSS 4.0HIGH 8.7
Sources
- CVE-2026-63578 · CVE Program
- CVE-2026-63578 · NVD
- FIRST EPSS
- GHSA-4583-5v2w-p3vq · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences