Skip to content
VulniPulse
Advisory severityUnratedApache Software Foundation Updated

Advisory [CVE-2026-80463] 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

This security Apache Software Foundation advisory covers CVE-2026-80463; related products: Apache bRPC.

Aggregated and source-linked by VulniPulse. Data sources, validation and limitations.

CVE-2026-80463 Source published Source updated

VulniPulse record published Record updated

CVE-2026-80463
Related products & platforms
Apache Software FoundationUnclassified
Open source advisory

Android app · Google Play

Monitor future Apache Software Foundation CVEs from your phone.

Choose a whole vendor or a precise platform, then receive matching security advisories by phone notification, email, or both. Coverage follows 34 official vendor sources and 160+ reviewed platform categories.

Matching phone alertsOptional email delivery

Summary

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:

Note: The fix limits the accumulated payload of a fragmented stream message to max_body_size (default 64MB).

Affected versions
  • Apache bRPC before 1.18.0

Official advisory · medium-confidence parse· fetched 51 minutes ago·verify at source

Fixed versions
  • 1.18.0

Official advisory · medium-confidence parse· fetched 51 minutes ago·verify at source

Mitigation checklist

Recommended fix / mitigation
  • 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.
  • Upgrade bRPC to version 1.18.0, which fixes this issue.
  • 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.

Official advisory · medium-confidence parse· fetched 51 minutes ago·verify at source

Discussion(0)

No comments yet. Share field notes, upgrade gotchas, or questions — verify against the vendor advisory before acting on community advice.

Sign in to join the discussion.