CVE-2021-32780CWE-754

Incorrect handling of H/2 GOAWAY followed by SETTINGS frames

High · published August 24, 2021

CVSS v3.1
8.6
EPSS
1%
Percentile
68.7
In the wild
Unconfirmed
What it is

Envoy is an open source L7 proxy and communication bus designed for large modern service oriented architectures. In affected versions Envoy transitions a H/2 connection to the CLOSED state when it receives a GOAWAY frame without any streams outstanding. The connection state is transitioned to DRAINING when it receives a SETTING frame with the SETTINGS_MAX_CONCURRENT_STREAMS parameter set to 0. Receiving these two frames in the same I/O event results in abnormal termination of the Envoy process due to invalid state transition from CLOSED to DRAINING. A sequence of H/2 frames delivered by an untrusted upstream server will result in Denial of Service in the presence of untrusted **upstream** servers. Envoy versions 1.19.1, 1.18.4 contain fixes to stop processing of pending H/2 frames after connection transition to the CLOSED state.

The record
Technical detail
CVSS v3.1
8.6 · HIGH
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.01230 · 68.7th percentile
Weakness
CWE-754 · Improper Check for Unusual or Exceptional Conditions
Published
2021-08-24T20:55Z
EPSS history
Timeline
  • 24 AUG 20:55Z
    Incorrect handling of H/2 GOAWAY followed by SETTINGS frames
    cvelistv5