CVE-2026-63574
Received Received - Intake

Memory Exhaustion in Bouncy Castle bc-csharp

Vulnerability report for CVE-2026-63574, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-10-02

Last updated on: 2026-10-02

Assigner: bcorg

Description

Memory allocation with excessive size value in the OpenPGP signature and user attribute subpacket parsers (SignatureSubpacketsParser.ReadPacket, UserAttributeSubpacketsParser.ReadPacket) in Legion of the Bouncy Castle Inc. bc-csharp before 2.7.0 allows a remote, unauthenticated attacker who can supply a crafted OpenPGP public key, certificate or signature to cause a denial of service (OutOfMemoryException or memory exhaustion in the parsing process) via a subpacket header using the five-octet length form, because the declared length was used to size the subpacket buffer with no upper bound and without being compared with the size of the enclosing subpacket area or packet, so a few bytes of input could demand an allocation of up to about 2 GB before any subpacket data was read.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-10-02
Last Modified
2026-10-02
Generated
2026-10-02
AI Q&A
2026-10-02
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 3 associated CPEs
Vendor Product Version / Range
legion_of_the_bouncy_castle_inc bc-csharp 2.7.0
legion_of_the_bouncy_castle_inc bc-csharp to 2.7.0 (exc)
legion_of_the_bouncy_castle_inc bc-csharp to 2.7.0-beta.98 (inc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-789 The product allocates memory based on an untrusted, large size value, but it does not ensure that the size is within expected limits, allowing arbitrary amounts of memory to be allocated.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-63574 is a memory allocation vulnerability in the OpenPGP parsers of the Bouncy Castle C# library (bc-csharp) versions 2.6.2 and earlier. The issue occurs in the signature and user attribute subpacket parsers where a malicious OpenPGP input can declare an excessively large buffer size (up to 2 GB) using a five-octet header. The parser allocates memory based on this declared size without validating it against the actual data, leading to potential denial of service through memory exhaustion or OutOfMemoryException.

Detection Guidance

To detect this vulnerability, monitor for OutOfMemoryException errors during OpenPGP parsing operations in applications using BC C# .NET versions 2.6.2 or earlier. Check logs for excessive memory allocation attempts when processing OpenPGP data from untrusted sources.

Impact Analysis

This vulnerability allows a remote, unauthenticated attacker to cause a denial of service by supplying a crafted OpenPGP public key, certificate, or signature. Applications parsing OpenPGP data from untrusted sources are at risk, as the attack can exhaust system memory or crash the application with an OutOfMemoryException. The impact is severe for systems processing OpenPGP data without proper validation.

Compliance Impact

This vulnerability could impact compliance with GDPR and HIPAA by enabling denial-of-service attacks through memory exhaustion. GDPR requires data protection measures against unauthorized access or disruption, while HIPAA mandates availability of health data. Excessive memory allocation could disrupt systems processing OpenPGP data, potentially violating availability requirements.

Mitigation Strategies

Upgrade to BC C# .NET 2.7.0 or later to apply the fix that caps subpacket body length at 2 MiB. If upgrading is not possible, treat OutOfMemoryException during OpenPGP parsing as a parse failure and limit concurrent parsing operations.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-63574. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart