CVE-2026-79704 in bRPCinformação

Sumário

de VulDB • 21/10/2026

Uma vulnerabilidade de leitura fora dos limites (out-of-bounds read) existe no cliente streaming RPC do Apache bRPC (versões 1.11.0 a 1.17.0) em todas as plataformas. Um cliente que cria múltiplos streams em um único RPC espera que a resposta do servidor contenha exatamente um extra_stream_id adicional para cada stream adicional. O caminho de tratamento da resposta indexava os identificadores retornados usando a contagem localmente criada de streams, sem primeiro validar o tamanho da lista retornada; portanto, um servidor malicioso ou comprometido (ou um atacante on-path) pode acionar uma leitura fora dos limites no cliente ao retornar uma resposta StreamSettings malformada com menos extra_stream_ids do que o esperado. Isso pode causar a falha do processo do cliente (negação de serviço - DoS) ou vazamento de conteúdos não intencionais da memória para o tratamento subsequente de streams; identificadores excedentes não possuem mapeamento válido client-stream e são processados inconsistentemente.

Causa Raiz: Desde bRPC 1.11.0, um cliente pode criar múltiplos streams em uma única RPC via StreamCreate em lote (batch). O comportamento esperado é que a resposta do servidor retorne exatamente (N-1) extra_stream_ids, onde N é o número de streams criados localmente. Em Controller::HandleStreamConnection, o caminho da resposta lê extra_stream_ids[i-1] para cada stream adicional sem primeiro comparar o tamanho da lista retornada com (N-1). Se o servidor retornar menos identificadores, a leitura ultrapassa o final da lista retornada (leitura fora dos limites); se retornar mais, os identificadores excedentes não possuem um stream correspondente no lado do cliente.

Cenários Afetados: Um cliente bRPC que usa RPC multi-stream (criando mais de um stream em uma única RPC) que se conecta a um servidor desconfiado, malicioso ou comprometido, ou a um servidor alcançado através de um caminho de rede não confiável. O servidor envia uma resposta StreamSettings malformada para acionar o problema.

Como Corrigir: (Escolha uma das seguintes opções) 1. Atualize o bRPC para a versão 1.18.0, que corrige este problema. 2. Aplique este patch: https://github.com/apache/brpc/pull/3485

Nota: A correção faz com que o cliente rejeite respostas cujo contador de extra_stream_ids não corresponda exatamente ao número de streams adicionais do cliente. Tais respostas incompatíveis agora falham a RPC com ERESPONSE e passam pelo caminho existente de limpeza de stream, em vez de serem processadas parcialmente.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Responsável

Apache

Reservar

25/08/2026

Divulgação

21/10/2026

Moderação

aceite

Entrada

VDB-424766

EPSS

0.00000

KEV

não

Atividades

baixo

Fontes

Interested in the pricing of exploits?

See the underground prices here!