Skip to content
VulniPulse
Advisory severityUnratedApache Software Foundation Updated

Advisory [CVE-2026-81755] Uncontrolled resource consumption in the streaming RPC component of Apache bRPC (version < 1.18.0) allows a remote attacker to exhaust server memory and cause denial of service by sending a single RPC request that declares an excessive number of streams

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

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

CVE-2026-81755 Source published Source updated

VulniPulse record published Record updated

CVE-2026-81755
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

Uncontrolled resource consumption in the streaming RPC component of Apache bRPC (version < 1.18.0) allows a remote attacker to exhaust server memory and cause denial of service by sending a single RPC request that declares an excessive number of streams.

Root Cause: In the streaming RPC feature, a client can declare multiple streams in one RPC request by putting extra stream identifiers into the repeated field `stream_settings.extra_stream_ids` of the RPC meta.

On the server side, `StreamAccept` creates one response stream for every stream identifier declared by the request, without limiting the number of streams accepted in a single RPC. The request body size is only bounded by `max_body_size` (default 64MB), which is enough to carry millions of stream identifiers.

Each accepted stream allocates its own bthread execution queue and associated resources, so a single crafted request can make the server create a huge number of streams and exhaust memory, leading to denial of service.

Affected Scenarios: Use a bRPC server that serves streaming RPC and calls `StreamAccept` to accept streams from untrusted clients.

How to Fix: (Choose one of the following options)

1. 2.

Apply this patch:

Note: The fix adds a new gflag `stream_max_streams_per_request` with a default value of 64.

Requests declaring more streams than the limit are rejected before any response stream is created.

Affected versions
  • Apache bRPC before 1.18.0

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

Fixed versions
  • 1.18.0

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

Mitigation checklist

Recommended fix / mitigation
  • Upgrade bRPC to the 1.18.0 version.
  • Apply this patch: https://github.com/apache/brpc/pull/3493 Note: The fix adds a new gflag `stream_max_streams_per_request` with a default value of 64.
  • Requests declaring more streams than the limit are rejected before any response stream is created.

Official advisory · medium-confidence parse· fetched 52 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.