CVE Intelligence
Unknown Injection

CVE-2026-86146 — Apache bRPC: HTTP Request Smuggling and Header Injection via Lenient HTTP/1.1 Header Parsing

Inconsistent interpretation of HTTP requests (HTTP request/response smuggling) in the bundled HTTP/1.1 parser of Apache bRPC (version < 1.18.0) on all platforms allows remote attackers to smuggle requests and inject headers when bRPC is deployed behind a proxy or load balancer that parses the same bytes differently. Root Cause: The bRPC fork of http-parser accepts and acts on several HTTP/1.1 header forms that a conforming front-end either rejects or interprets differently, so the framing or the header set of a message can differ between the front-end and bRPC: 1. A space before the colon of framing headers (e.g. Content-Length : 5) is accepted; the value still drives bRPC's framing while the reported field name contains the trailing space. 2. Interior spaces inside a Content-Length value (e.g. Content-Length: 1 3) are skipped, so bRPC reads 13 where a front-end reads 1 or rejects the message (same class as CVE-2022-32213 in Node.js). 3. Obsolete line folding (obs-fold, RFC 7230 3.2.4) of Content-Length and Transfer-Encoding values is accepted, so a folded framing value drives bRPC's framing while a front-end that does not unfold sees a different message. 4. Chunked trailer fields are fed to the same header callbacks as the header section and are merged into the header map like real headers. A front-end only inspects the header section, so any chunked request can smuggle fields such as Authorization or X-Forwarded-For past it. 5. Transfer-Encoding lists with optional whitespace after a comma (e.g. Transfer-Encoding: gzip, chunked) are not recognized as chunked: such requests are rejected, and responses are read until connection close instead of as chunked, causing response desync. Affected Scenarios: bRPC server or client communicating over HTTP/1.1 with a front proxy, load balancer, or any peer that parses the message independently. An attacker able to send requests through the front-end can desynchronize the two parsers to smuggle requests, forge headers (e.g. Authorization, X-Forwarded-For) via chunked trailers, or desynchronize responses. 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/3521 Note: After applying the fix, the four header forms above are rejected by default and chunked trailers are dropped instead of merged into the header map. Two gflags are provided for compatibility: http_allow_obs_fold=true restores acceptance of folded Content-Length/Transfer-Encoding values, and http_strict_header_token=true additionally rejects spaces inside any header field name (not only the ones that decide framing). Legitimate clients that do not use these obsolete forms are unaffected.

Published Oct 21, 2026 · Updated Oct 22, 2026 · Sources: CVE Program (cve.org) e CISA ADP, NIST National Vulnerability Database, GitHub Security Advisories · CNA: apache

Who exploits it and how urgent it is

A 0–100 score combining confirmed exploitation, ransomware and APT use, public exploits, EPSS and severity.

No exploitation signal in the sources consulted so far.
How the score was calculated
  • EPSS 0.2% (30-day exploitation probability)+1

The score orders the patch queue; it does not replace your asset context (internet exposure, criticality, compensating controls).

Triage

Is it exploited, how likely is exploitation, what does it touch, and how severe do the sources call it.

Exploitation
Not confirmed
Not in CISA KEV — an absence of record, not proof it is unexploited.
EPSS FIRST
0.2%
ahead of 10% of scored CVEs · Oct 22, 2026
Affects
Apache Software Foundation
Brpc
CVSS base
—
Score not published yet.

Remediation

Fixes and mitigations documented by the sources — linked to the original advisory.

No fix documented by the sources we poll. That does not mean none exists: check the vendor advisory.

First 24 hours

Ordered from the record’s own fields — exposure first, because you cannot patch what you have not found. A rule-generated starting point.

  1. Identify exposed assets running the affected vendor/product/version combinations (Apache Software Foundation Brpc).
  2. No fix documented in the sources: reduce exposure and monitor the vendor advisory.
  3. Search available logs for exploit probes matching the vulnerability class (injection), errors and authentication anomalies.

Affected scope

Vendor, product and versions as the sources word them.

VendorProductVersionsStatusSource
Apache Software Foundation Brpc < 1.18.0 Vulnerable CVE Program (cve.org) e CISA ADP

Weakness MITRE

Weakness class according to MITRE’s CWE catalog.

CWE-444 · HTTP Request Smuggling

Other CVEs with this weakness →

Detection

Read off the CVSS vector and the weakness class. Starting points, not tested rules.

  • Look for parameters with command/query metacharacters and unexpected child processes of the service.
application logsendpoint telemetry (EDR)

Timeline

What happened to this CVE, newest first.

  • 2026
  • Source status changed · Received → Deferred
    Oct 22, 2026 · NIST National Vulnerability Database
  • Source status changed · Published → Received
    Oct 21, 2026 · NIST National Vulnerability Database
  • Record published
    Oct 21, 2026
  • Source status changed · → Published
    Oct 21, 2026 · CVE Program (cve.org) e CISA ADP
  • Record created in this database
    Oct 21, 2026 · CVE Program (cve.org) e CISA ADP
  • CVE published
    Oct 21, 2026 · apache

Source activity

Repeated readings are counted rather than listed.

  • 1× References added · Oct 22, 2026 – Oct 22, 2026
  • 1× Official description updated · Oct 21, 2026 – Oct 21, 2026

References

3 on the record

Elsewhere on this site

Apache Software Foundation
every CVE for this vendor
Injection
same class
CWE-444
other pages naming this weakness

Related CVEs (same products)

  • Unknown CVE-2026-90484 Apache bRPC: Null pointer dereference in MySQL reply parser leading to client crash 2d
  • Unknown CVE-2026-86147 Apache bRPC: Arbitrary file creation/truncation via /flags and unbounded profiling duration via /pprof 2d
  • Unknown CVE-2026-86249 Apache bRPC: Authentication bypass when a server sets ServerOptions.internal_port and ServerOptions.auth 2d
  • Unknown CVE-2026-87849 Apache bRPC: Out-of-bounds read via non-object fields in Discovery naming-service reply parsing 2d
  • Unknown CVE-2026-82231 Apache bRPC: Malformed Thrift T_EXCEPTION reply causes process termination in Thrift client 2d
  • Unknown CVE-2026-82942 Apache bRPC: Race Condition on the Shared Socket Input Buffer in the RDMA Transport Causes Remote Denial of Service 2d

Not in any source we poll

Listed rather than left blank: an empty field and an unmeasured one look identical on screen, and only one is a reason to look elsewhere.

  • No CVSS score published by NVD, the CNA, CISA or GitHub so far.
  • No fixed version, patch or mitigation documented.
  • No CISA SSVC assessment.
  • No confirmed IOCs, IP addresses, domains, file hashes, or malware artifacts supplied.
  • No organization-specific asset inventory, compensating-control status, or patch deployment evidence supplied.
  • No exploit packet captures, log samples, or incident case IDs supplied.

Answered from this record

Text assembled only from the fields above — no additional claims.

What should defenders know first?

CVE-2026-86146 is "Apache bRPC: HTTP Request Smuggling and Header Injection via Lenient HTTP/1.1 Header Parsing", rated Unknown. It affects Brpc (Apache Software Foundation); versions are in the scope table. It is not in CISA KEV, which does not rule out exploitation. EPSS 0.20% estimates the probability of exploitation in 30 days; neither replaces your asset context. First verify whether exposed or business-critical assets run the affected versions, apply vendor fixes or mitigations, and preserve logs for review.

Comments

Moderated technical discussion. Read the community guidelines.

No comments yet.

Sign in or create an account to comment and suggest corrections.