Skip to content
OpenAdvisories
High · 7.5 CVE-2023-35945 EUVD-2023-39929

Envoy vulnerable to HTTP/2 memory leak in nghttp2 codec

Published Jul 13, 2023 · Updated Oct 14, 2026 · Assigned by GitHub_M

Description

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.

Affected products

VendorProductAffectedFixed
envoyproxy envoy >= 1.26.0, < 1.26.3, >= 1.25.0, < 1.25.8, >= 1.24.0, < 1.24.9, >= 1.23.0, < 1.23.11 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
SLES 15 SP5 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLES 15 SP4 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLES 15 SP3 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLES 15 SP2 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLES 15 SP1 nghttp2 1.40.0-150000.3.14.1 SUSE-SU-2023:4102-1
Show 16 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES 12 SP5 nghttp2 1.39.2-3.10.1 SUSE-SU-2023:3842-1
SLES for SAP 15 SP3 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLES for SAP 15 SP2 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLES for SAP 15 SP1 nghttp2 1.40.0-150000.3.14.1 SUSE-SU-2023:4102-1
SLES for SAP 12 SP5 nghttp2 1.39.2-3.10.1 SUSE-SU-2023:3842-1
SLE Micro 5.5 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLE Micro 5.4 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLE Micro 5.3 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLE Micro 5.2 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLE Micro 5.1 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLE HPC 15 SP3 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLE HPC 15 SP2 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SLE HPC 15 SP1 nghttp2 1.40.0-150000.3.14.1 SUSE-SU-2023:4102-1
SUSE Manager Server 4.2 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SUSE Manager Proxy 4.2 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
SUSE Enterprise Storage 7.1 nghttp2 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed nghttp2 1.55.1-1.1 openSUSE-SU-2024:13062-1
openSUSE Leap 15.5 nghttp2 +1 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
openSUSE Leap 15.4 nghttp2 +1 1.40.0-150200.9.1 SUSE-SU-2023:3997-1
ReleasePackageFixed inAdvisory
Alpine v3.17 nghttp2 1.51.0-r1 —
Alpine v3.16 nghttp2 1.47.0-r1 —
Alpine v3.15 nghttp2 1.46.0-r1 —

Amazon Linux

ReleasePackageFixed inAdvisory
Amazon Linux 2023 ecs-service-connect-agent v1.26.4.0-1.amzn2023 ALAS2023-2023-300
Amazon Linux 2023 nghttp2 +2 1.55.1-1.amzn2023.0.1 ALAS2023-2023-278
Amazon Linux 2023 nodejs +4 1:18.12.1-1.amzn2023.0.9 ALAS2023-2023-290
Amazon Linux 2023 npm 1:8.19.2-1.18.12.1.1.amzn2023.0.9 ALAS2023-2023-290
Amazon Linux 2023 v8-devel 2:10.2.154.15-1.18.12.1.1.amzn2023.0.9 ALAS2023-2023-290
Amazon Linux 2 nghttp2 +2 1.41.0-1.amzn2.0.1 ALAS2-2023-2180

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 2 (CBL-Mariner) cmake 3.21.4-8 —
Azure Linux 2 (CBL-Mariner) nghttp2 1.46.0-3 —
Azure Linux 2 (CBL-Mariner) nodejs 16.20.2-2 —
Azure Linux 2 (CBL-Mariner) nodejs18 18.17.1-2 —

Advisories 15

References