CVE-2021-32778: Excessive CPU utilization when closing HTTP/2 streams
Envoy is an open source L7 proxy and communication bus designed for large modern service oriented architectures. In affected versions envoy’s procedure for resetting a HTTP/2 stream has O(N^2) complexity, leading to high CPU utilization when a large number of streams are reset. Deployments are susceptible to Denial of Service when Envoy is configured with high limit on H/2 concurrent streams. An attacker wishing to exploit this vulnerability would require a client opening and closing a large number of H/2 streams. Envoy versions 1.19.1, 1.18.4, 1.17.4, 1.16.5 contain fixes to reduce time complexity of resetting HTTP/2 streams. As a workaround users may limit the number of simultaneous HTTP/2 dreams for upstream and downstream peers to a low number, i.e. 100.
Affected Software
Event History
Frequently Asked Questions
What is CVE-2021-32778?
CVE-2021-32778 is a vulnerability in Envoy that has high severity and can lead to high CPU utilization when a large number of HTTP/2 streams are reset.
How does the vulnerability in CVE-2021-32778 affect Envoy?
The vulnerability in CVE-2021-32778 affects Envoy versions 1.16.0 through 1.16.5, 1.17.0 through 1.17.4, 1.18.0 through 1.18.4, and 1.19.0.
What is the severity level of CVE-2021-32778?
CVE-2021-32778 has a severity rating of high.
How can I mitigate the vulnerability in CVE-2021-32778?
To mitigate the vulnerability in CVE-2021-32778, it is recommended to upgrade Envoy to version 1.19.0 or apply the necessary patches provided by Envoyproxy.
Where can I find more information about CVE-2021-32778?
You can find more information about CVE-2021-32778 on the Envoy proxy GitHub page and the official Envoy documentation.