Skip to content
Heist/ feed
Back to feed
High

Security advisory

Type: advisorySources: OSVCVE: CVE-2021-32778

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.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2021-32778
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 11:47 UTC · Revision 1

Source evidence

CVE-2021-32778

core-osv · Original source

Published 24 Aug 2021, 21:15 UTC

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.

osv:CVE-2021-32778
Complete source record
{
  "id": "87bb32008273475b4637bd0428007d2a8921799845f5fa90863f9d70e682fdff",
  "url": "https://osv.dev/vulnerability/CVE-2021-32778",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "CVE-2021-32778",
    "summary": "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.",
    "evidence": "osv:CVE-2021-32778",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2021-32778",
      "aliases": [
        "BIT-envoy-2021-32778",
        "CVE-2021-32778",
        "GHSA-3xh3-33v5-chcc"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/envoyproxy/envoy",
              "type": "GIT",
              "events": [
                {
                  "introduced": "8fb3cb86082b17144a80402f5367ae65f06083bd"
                },
                {
                  "fixed": "72ec3eed50b4154cb6d2251667b4c1c1ddfaa266"
                },
                {
                  "introduced": "5c801b25cae04f06bf48248c90e87d623d7a6283"
                },
                {
                  "fixed": "0de60452be1fa329c16076916b6bfe1f672aeed4"
                },
                {
                  "introduced": "345ffe37148b7a35b6e8e04db0300463689e3ff1"
                },
                {
                  "fixed": "bef18019d8fc33a4ed6aca3679aff2100241ac5e"
                },
                {
                  "introduced": "68fe53a889416fd8570506232052b06f5a531541"
                },
                {
                  "last_affected": "68fe53a889416fd8570506232052b06f5a531541"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:envoyproxy:envoy:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "1.16.0"
                      },
                      {
                        "fixed": "1.16.5"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "cpe": "cpe:2.3:a:envoyproxy:envoy:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "1.17.0"
                      },
                      {
                        "fixed": "1.17.4"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "cpe": "cpe:2.3:a:envoyproxy:envoy:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "1.18.0"
                      },
                      {
                        "fixed": "1.18.4"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "cpe": "cpe:2.3:a:envoyproxy:envoy:1.19.0:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "1.19.0"
                      },
                      {
                        "last_affected": "1.19.0"
                      }
                    ],
                    "source": "CPE_STRING"
                  }
                ]
              }
            }
          ],
          "versions": [
            "1.19.0",
            "v1.19.0",
            "v1.16.4",
            "v1.17.3",
            "v1.18.3",
            "v1.17.2",
            "v1.18.2",
            "v1.16.3",
            "v1.18.1",
            "v1.18.0",
            "v1.17.1",
            "v1.17.0",
            "v1.16.2",
            "v1.16.1",
            "v1.16.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-32778.json"
          }
        }
      ],
      "modified": "2026-10-20T10:54:42.949610025Z",
      "provider": "osv",
      "references": [
        "https://github.com/envoyproxy/envoy/security/advisories/GHSA-3xh3-33v5-chcc",
        "https://www.envoyproxy.io/docs/envoy/v1.19.0/version_history/version_history"
      ],
      "provider_metadata": {}
    },
    "related_cves": [
      {
        "value": "CVE-2021-32778",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 385970,
  "published_at": "2021-08-24T21:15:09.553+00:00"
}