PT-2026-120568 · Apache · Apache Brpc

CVE-2026-86249

·

Published

2026-10-21

·

Updated

2026-10-21

None

No severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
On a brpc::Server that sets both ServerOptions.auth and ServerOptions.internal port, the HTTP built-in service exemption on internal port can be abused to bypass authentication entirely. VerifyHttpRequest() returns true without checking any credential when a built-in service is requested on internal port, and this verdict is not per - request: verification runs only for the first message of a connection and the result latches the connection. Sending a request such as GET /status to internal port first authenticates the whole connection, after which every subsequent request dispatched on the same connection is handled without ever calling VerifyHttpRequest(). This lets a remote attacker reach ordinary (non-built-in, non-tabbed) authenticated services without supplying valid credentials whenever the server uses ServerOptions.internal port together with an Authenticator. The fix restricts internal port so that it carries only built-in and Tabbed services; requests for ordinary services sent to internal port are rejected with EPREM / HTTP 403. 
Mitigation / Fix: upgrade to 1.18.0 or apply PR https://github.com/apache/brpc/pull/3525 . 
Users who rely on serving normal services on internal port must move those requests to the port passed to Server::Start().

Improper Authentication

Found an issue in the description? Have something to add? Feel free to write us 👾

Weakness Enumeration

Related Identifiers

CVE-2026-86249

Affected Products

Apache Brpc