PT-2021-19926 · Envoy · Envoy

Chaoqin Li

·

Publicado

2021-08-24

·

Atualizado

2024-03-06

·

CVE-2021-32780

CVSS v3.1

8.6

Alta

VetorAV:N/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H
Nome do software vulnerável e versões afetadas
Versões do Envoy anteriores à 1.18.4
Versões do Envoy anteriores à 1.19.1
Descrição
O Envoy é um proxy L7 de código aberto e um barramento de comunicação projetado para grandes arquiteturas modernas orientadas a serviços. Nas versões afetadas, o Envoy transita uma conexão H/2 para o estado CLOSED quando recebe um quadro GOAWAY sem nenhum fluxo pendente. O estado da conexão é alterado para DRAINING quando recebe um quadro SETTING com o parâmetro SETTINGS MAX CONCURRENT STREAMS definido como 0. Receber esses dois quadros no mesmo evento de E/S resulta no encerramento anormal do processo do Envoy devido a uma transição de estado inválida de CLOSED para DRAINING. Uma sequência de quadros H/2 entregues por um servidor upstream não confiável resultará em Negação de Serviço na presença de servidores upstream não confiáveis.
Recomendações
Para versões anteriores à 1.18.4, atualize para a versão 1.18.4 ou posterior para interromper o processamento de quadros H/2 pendentes após a transição da conexão para o estado CLOSED.
Para versões anteriores à 1.19.1, atualize para a versão 1.19.1 ou posterior para interromper o processamento de quadros H/2 pendentes após a transição da conexão para o estado CLOSED.
Como solução alternativa temporária, considere restringir o acesso a servidores upstream não confiáveis para minimizar o risco de exploração.

Correção

DoS

Improper Check for Exceptional Conditions

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

BIT-ENVOY-2021-32780
CVE-2021-32780
GHSA-J374-MJRW-VVP8

Produtos afetados

Envoy