Envoy is a cloud-native high-performance edge/middle/service proxy. Envoy’s HTTP/2 codec may leak a header map and bookkeeping structures upon receiving RST_STREAM immediately followed by the GOAWAY frames from an upstream server. In nghttp2, cleanup of pending requests due to receipt of the GOAWAY frame skips de-allocation of the bookkeeping structure and pending compressed header. The error return [code path] is taken if connection is already marked for not sending more requests due to GOAWAY frame. The clean-up code is right after the return statement, causing memory leak. Denial of service through memory exhaustion. This vulnerability was patched in versions(s) 1.26.3, 1.25.8, 1.24.9, 1.23.11.
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/35xxx/CVE-2023-35945.json",
"cwe_ids": [
"CWE-400"
],
"cna_assigner": "GitHub_M"
}{
"source": "AFFECTED_FIELD",
"extracted_events": [
{
"introduced": "1.26.0"
},
{
"fixed": "1.26.3"
},
{
"introduced": "1.25.0"
},
{
"fixed": "1.25.8"
},
{
"introduced": "1.24.0"
},
{
"fixed": "1.24.9"
},
{
"introduced": "1.23.0"
},
{
"fixed": "1.23.11"
}
]
}{
"source": "CPE_RANGE",
"cpe": "cpe:2.3:a:nghttp2:nghttp2:*:*:*:*:*:*:*:*",
"extracted_events": [
{
"introduced": "0"
},
{
"fixed": "1.55.1"
}
]
}