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.
{
"source": [
"CPE_RANGE",
"CPE_STRING"
],
"cpe": [
"cpe:2.3:a:envoyproxy:envoy:*:*:*:*:*:*:*:*",
"cpe:2.3:a:envoyproxy:envoy:1.19.0:*:*:*:*:*:*:*"
],
"extracted_events": [
{
"introduced": "1.16.0"
},
{
"fixed": "1.16.5"
},
{
"introduced": "1.17.0"
},
{
"fixed": "1.17.4"
},
{
"introduced": "1.18.0"
},
{
"fixed": "1.18.4"
},
{
"introduced": "1.19.0"
},
{
"last_affected": "1.19.0"
}
]
}