Unbounded memory growth in Apache bRPC stream message reassembly
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA. Impact type from CWE-770.
Summary
Apache bRPC versions from 0 before 1.18.0 accumulate fragmented stream messages in memory without any size limit. The flaw, tracked as CWE-770, lets a remote attacker who can open a stream send an endless series of continuation frames until the server runs out of memory and crashes or becomes unavailable.
Written with Claude Haiku 5.5 from the sources below · 2026-10-30
Description from the CNA
Unbounded memory accumulation in the stream message reassembly path of Apache bRPC (version < 1.18.0) on all platforms allows remote attackers to exhaust the memory of a server (denial of service) by sending an endless sequence of continuation data frames. Root Cause: The streaming RPC protocol bounds every single data frame by max_body_size, but a fragmented stream message accumulates continuation frames into one buffer (_pending_buf) without any limit on the accumulated size. A malicious peer that can open a stream can therefore keep sending continuation frames to make the receiver accumulate an arbitrarily large in-memory message. Since the default flow-control settings (socket_max_streams_unconsumed_bytes=0) do not throttle the sending rate, the receiver's memory grows until the process runs out of memory and crashes or becomes unavailable. Affected Scenarios: Services that accept streams from untrusted clients (for example using brpc::StreamAccept or brpc::StreamCreate with the built-in streaming protocol) are affected. How to Fix: (Choose one of the following options) 1. Upgrade bRPC to version 1.18.0, which fixes this issue. 2. Apply this patch: https://github.com/apache/brpc/pull/3489 Note: The fix limits the accumulated payload of a fragmented stream message to max_body_size (default 64MB). When the accumulated payload exceeds the limit, the pending fragments are released and the stream is closed with error EMSGSIZE. After applying the fix, legitimate fragmented stream messages larger than max_body_size will be rejected; you can adjust the gflag max_body_size to change the limit.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
Upgrade Apache bRPC to version 1.18.0, which fixes this issue, or apply the patch in pull request 3489 of the apache/brpc repository. The fix rejects fragmented stream messages larger than max_body_size, which defaults to 64MB and can be changed with the max_body_size gflag.
Written with Claude Haiku 5.5 from the sources below · 2026-10-30
- Fix · CNA Apache bRPC (Apache Software Foundation) Fixed in 1.18.0
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Advisory ·
Apache bRPC — lists.apache.org/thread/2pf15ojj0vr7rtx95677kgtl1mx3gdgb
35 records Highest priority Priority MEDIUM 18 MEDIUM, 17 LOW
Other records, highest priority first
- TI-2026-78552 Out-of-bounds write in Apache bRPC Redis command parserPriority MEDIUM 49
- TI-2026-78757 Authentication bypass in Apache bRPC servers using internal_portPriority MEDIUM 48
- TI-2026-78742 Missing authentication in Apache bRPC streaming RPC framesPriority MEDIUM 48
Timeline
- 2026-10-21 Threatist record created from CVE-2026-80463
- 2026-10-21 Alias added: GHSA-h682-23cr-8m53
- 2026-10-30 CVSS score added · CISA ADP
- 2026-10-30 CISA SSVC decision points changed
- 2026-11-01 Priority changed: LOW → MEDIUM
References
More Apache vulnerabilities
- TI-2025-18529 Apache Tomcat: Potential RCE and/or information disclosure and/or information corruption with partial PUT KEVCVSS 3.1CRITICAL 10.0
- TI-2024-30292 Apache OFBiz: Confused controller-view authorization logic (forced browsing) KEVCVSS 3.1CRITICAL 9.8
- TI-2024-26062 Apache OFBiz: Unauthenticated endpoint could allow execution of screen rendering code KEVCVSS 3.1CRITICAL 9.8
- TI-2024-21190 Apache OFBiz: Path traversal leading to RCE KEVCVSS 3.1CRITICAL 9.8
- TI-2024-18186 Apache HugeGraph-Server: Command execution in gremlin KEVCVSS 3.1CRITICAL 9.8
- TI-2023-25106 Deserialization of untrusted data in Apache ActiveMQ KEVCVSS 3.1CRITICAL 10.0
Sources
- CVE-2026-80463 · CVE Program
- CVE-2026-80463 · NVD
- FIRST EPSS
- GHSA-h682-23cr-8m53 · 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