Skip to main content

Apache bRPC CVE-2026-82953

| EUVDEUVD-2026-107221 HIGH
NULL Pointer Dereference (CWE-476)
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach bRPC h2/gRPC port
  2. Exploit
    Send crafted HPACK header block with 121 minimal entries
  3. Execution
    Overflow dynamic-table ring buffer past CHECK
  4. Impact
    Abort server process (DoS)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Null pointer safety, defensive checks
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires a bRPC server (version <1.18.0) serving HTTP/2 or gRPC over the h2 protocol and reachable from an untrusted network. The condition is satisfied by DEFAULT configuration: the h2 parser is enabled on every bRPC server port and processes the malicious header block during HPACK decoding before any Authenticator check, so no authentication, user interaction, or non-default setting is needed. The specific trigger is an HPACK dynamic table left at its default 4096-byte size (yielding 120 ring-buffer slots) into which the peer inserts 121 minimal 33-byte entries. Limiting factor: the target must expose an h2/gRPC endpoint to the attacker; pure HTTP/1 or non-h2 bRPC deployments are not reachable via this path.

Impact

This is a remote, unauthenticated denial-of-service affecting Apache bRPC through 1.17.0 in its HTTP/2 HPACK decoder. No CVSS vector, EPSS score, or KEV status is provided in the input, so quantitative exploitation-probability signals are unavailable and cannot be compared. Exploitation status is 'no public exploit identified at time of analysis'; however, the advisory contains a precise, step-by-step reproduction (121 minimal 33-byte dynamic-table entries totalling 3993 bytes, staying under the 4096-byte _max_size so eviction never fires, driving the ring buffer full and tripping CHECK(!_header_queue.full())), which lowers the barrier to building a working trigger even though no weaponized code is published. The impact is availability-only (process abort) with no confidentiality or integrity effect; the attack vector is network, complexity is low, no privileges or user interaction are required, because the h2 parser runs before any Authenticator check on the shared port. The real-world priority therefore hinges on exposure: a bRPC server directly serving h2/gRPC to untrusted networks faces a trivial, reliable crash and should patch promptly; the absence of KEV/EPSS data suggests no evidence of widespread automated exploitation yet, consistent with a researcher-reported bug rather than an actively abused one. Note the record-vs-content discrepancy - the input is labeled CVE-2026-82953 but the detailed advisory text cross-references CVE-2026-78048; verify the canonical identifier before tracking.

Exploit ScenarioDerived

An attacker able to reach a bRPC server's HTTP/2 or gRPC port sends a single crafted HEADERS frame whose HPACK block inserts 121 minimal 33-byte dynamic-table entries, each too small to trigger byte-based eviction. The 121st insertion overflows the fixed 120-slot ring buffer and hits an internal CHECK assertion, aborting the entire server process. No authentication or user interaction is needed, and a detailed reproduction is documented in the advisory though no packaged exploit is published.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 21, 2026

Remote unauthenticated denial of service in Apache bRPC through 1.17.0 allows any peer that can reach an HTTP/2 or gRPC (h2) listener to abort the server process with a single crafted HEADERS frame. The HPACK dynamic table's ring buffer is sized by byte capacity rather than slot count, so a peer can insert 121 minimal 33-byte entries (3,993 bytes, still under the default 4,096-byte budget) without triggering eviction and then hit a CHECK(!_header_queue.full()) assertion that terminates the process. The h2 parser is enabled by default on every bRPC server port and decodes headers before any Authenticator check, so no credentials, user interaction, or non-default configuration are required; no public exploit code was identified at time of analysis, but a vendor fix exists and the flaw was addressed together with a large batch of other HTTP/2 parsing issues in bRPC 1.18.0.

RemediationAI

Upgrade Apache bRPC to version 1.18.0, which sizes the HPACK dynamic table for the 33-byte minimum entry (max_size / (32 + 1)) and guarantees at least one ring-buffer slot is retained when max_size is smaller than a minimum entry, preventing both the assertion abort and the malloc(0) initialization failure. If an immediate upgrade is not possible, apply the upstream fix at https://github.com/apache/brpc/pull/3462 and track the remaining 1.18.0 fixes referenced by CVE-2026-78058 (PR 3474), CVE-2026-78066 (PR 3476), and CVE-2026-78334, all of which affect the same pre-authentication parsing path. As a compensating control, restrict h2/gRPC listener ports to trusted networks or front them with a reverse proxy that enforces a small maximum header-list size and header count, accepting the trade-off that legitimate gRPC clients with large metadata may be rejected and that protocol-level limits must be tuned alongside bRPC's own -h2_client_max_header_list_size and -max_body_size flags. Disabling h2 on a port that only needs HTTP/1 removes the attack path entirely but breaks gRPC clients and any binary h2 consumers, so it should be scoped to internal or low-trust-facing listeners; whichever mitigation is chosen, monitor server logs for abrupt process exits with SIGABRT/CHECK failures as an indicator of attempted exploitation.

Affected VersionsENISA

Apache bRPC 0 <1.18.0

Affected Packages

euvd apache_brpc fix: 1.18.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The defect lives in bRPC's HPACK decoder used by the built-in HTTP/2 (h2) stack that also serves gRPC traffic. HPACK maintains a dynamic table backed by a fixed-capacity ring buffer; the implementation sizes that buffer for the minimum possible entry - 32 bytes of per-entry overhead plus at least one byte of name, 33 bytes total - and for the protocol-default 4,096-byte table that yields only about 120 usable slots (4096/34 in the vendor's arithmetic). Eviction is driven by accumulated byte usage (_max_size) rather than by occupancy, so an attacker sending 121 minimal 33-byte never-indexed or incremental-indexing entries consumes just 3,993 bytes, stays inside the advertised budget, and never causes an eviction; the 121st AddHeader call then trips CHECK(!_header_queue.full()), an assertion failure that aborts the entire server process. The same code path mishandles dynamic table size updates validated against the protocol default of 4,096 instead of the advertised SETTINGS_HEADER_TABLE_SIZE, which can desynchronize the decoder and dereference NULL - the related unbounded-resource and header-list-limit weaknesses tracked as CVE-2026-78058 (PR 3474), the decompression/parser exhaustion issues in CVE-2026-78066 (PR 3476), and the streaming-RPC authentication gap in CVE-2026-78334 were all remediated in the same 1.18.0 release. Because the h2 parser runs on the shared port ahead of any application Authenticator, the attack surface is every bRPC deployment exposing h2/gRPC to an untrusted network; pure HTTP/1 or non-h2 deployments are not reachable through this specific path.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

vuln.today AI 7.5 HIGH

Default-enabled h2 parser processes the malicious block pre-authentication over the network, so AV:N/AC:L/PR:N/UI:N; impact is a process abort, so A:H with C:N/I:N.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Estimated by vuln.today — no official severity rating has been published for this CVE yet.

Lifecycle Timeline

2
Patch available
Oct 21, 2026 - 14:17 EUVD
CVE Published
Oct 21, 2026 - 03:30 oss-security
HIGH

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Executive ViewAI

Why It Matters

Apache bRPC releases through 1.17.0 contain a remotely reachable denial-of-service flaw that can terminate server processes when an exposed HTTP/2 or gRPC listener receives a crafted HEADERS frame. This is an availability risk for any service exposing bRPC h2 listeners, and leadership should prioritize inventory and upgrade because a single malformed request can cause process termination; no public exploit identified at time of analysis.

Business Impact: High
Compensating Controls

Apply vendor patch (bRPC 1.18.0).

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Low
niche high-performance RPC framework, limited broad enterprise footprint
Data Quality
1 sources
Confidence: Low

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

Attack Technique

A null pointer dereference occurs when a program attempts to access memory through a pointer that has been set to NULL (address 0x0).

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy