CVE-2026-84784

EUVD-2026-89015
Issue summary: A malicious remote peer may flood the local QUIC
stack with NEW_CONNECTION_ID frames by avoiding a limit check on
how many connection IDs the remote QUIC stack can use.

Impact summary: The local QUIC stack sends a RETIRE_CONN_ID frame
for every NEW_CONNECTION_ID frame it receives. The RETIRE_CONN_ID
frame is dispatched via the Control Frame Queue (CFQ). If the remote
peer also withholds ACKs, then it can force the local stack
to allocate ~400MB (depending on ACK delay).

CWE: CWE-770: Allocation of Resources Without Limits or Throttling

Description: RFC 9000 sections 5.1.1 and 5.1.2 [1] describe the mechanism
by which a remote peer can notify the local QUIC stack to change the
destination connection ID (a.k.a. CID) the local stack uses to
identify the connection at the remote peer. Each CID is associated
with a sequence number. The sequence number is transmitted
in NEW_CONNECTION_ID and RETIRE_CONNECTION_ID frames to identify the CID
which is being either associated with a connection or retired.

The remote peer sends a NEW_CONNECTION_ID frame to let the local stack know
a new CID is being associated with an existing connection. The
NEW_CONNECTION_ID frame carries the new CID, its sequence number, and the
retire-prior-to number. The retire-prior-to identifies existing
CIDs that are to be retired. The local QUIC stack must send a
RETIRE_CONNECTION_ID for every destination CID whose sequence number
is less than retire-prior-to. The CID becomes retired after the
local stack receives an ACK for its RETIRE_CONNECTION_ID frame.

Although the OpenSSL QUIC stack supports at most one destination CID
for every connection, it can be tricked into processing more than
one RETIRE_CONNECTION_ID frame per connection. The OpenSSL QUIC
stack currently retires the destination CID as soon as it receives
the NEW_CONNECTION_ID, while in fact the destination CID must
be retired after an ACK for the RETIRE_CONNECTION_ID frame is received.
Correcting the flawed logic also fixes the backlog growth.

[1] https://datatracker.ietf.org/doc/html/rfc9000#name-issuing-connection-ids

FIPS impact: no
The FIPS module is not affected as the QUIC implementation is outside of
the OpenSSL FIPS module boundary.
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
7.5 HIGH
NETWORK
LOW
NONE
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Base Score
CVSS 3.x
EPSS Score
Percentile: 49.61%
Affected Products (NVD)
VendorProductVersion
opensslopenssl
3.4.0 ≤
𝑥
< 3.4.8
opensslopenssl
3.5.0 ≤
𝑥
< 3.5.9
opensslopenssl
3.6.0 ≤
𝑥
< 3.6.5
opensslopenssl
4.0.0 ≤
𝑥
< 4.0.3
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
openssl
bookworm
3.0.20-1~deb12u2
fixed
bookworm (security)
3.0.22-1~deb12u2
fixed
forky
3.6.5-1
fixed
sid
3.6.5-1
fixed
trixie
vulnerable
trixie (security)
3.5.7-1~deb13u3
fixed
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
openssl
bionic
not-affected
focal
not-affected
jammy
not-affected
noble
not-affected
resolute
Fixed 3.5.5-1ubuntu3.6
released
trusty
not-affected
xenial
not-affected
openssl-fips
jammy
not-affected
noble
not-affected
resolute
dne
openssl1.0
bionic
not-affected
jammy
dne
noble
dne
resolute
dne
nodejs
bionic
not-affected
focal
not-affected
jammy
needed
noble
not-affected
resolute
not-affected
trusty
not-affected
xenial
not-affected
edk2
bionic
not-affected
focal
not-affected
jammy
not-affected
noble
not-affected
resolute
needed
xenial
not-affected
edk2-hwe
jammy
dne
noble
dne
resolute
needed
openSUSE logo
openSUSE / SLES Releases
openSUSE Product
Release
libopenssl-3-devel
suse enterprise desktop 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise sap 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise server 15 SP7
3.5.0-150700.5.53.2
fixed
libopenssl-3-fips-provider
suse enterprise desktop 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise sap 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise server 15 SP7
3.5.0-150700.5.53.2
fixed
libopenssl-3-fips-provider-32bit
suse enterprise desktop 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise sap 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise server 15 SP7
3.5.0-150700.5.53.2
fixed
libopenssl3
suse enterprise desktop 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise sap 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise server 15 SP7
3.5.0-150700.5.53.2
fixed
libopenssl3-32bit
suse enterprise desktop 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise sap 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise server 15 SP7
3.5.0-150700.5.53.2
fixed
openssl-3
suse enterprise desktop 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise sap 15 SP7
3.5.0-150700.5.53.2
fixed
suse enterprise server 15 SP7
3.5.0-150700.5.53.2
fixed
Red Hat logo
Red Hat Enterprise Linux Releases
Red Hat Product
Release
openssl
RHEL 9
1:3.5.9-1.el9_9
fixed
openssl-devel
RHEL 9
1:3.5.9-1.el9_9
fixed
openssl-libs
RHEL 9
1:3.5.9-1.el9_9
fixed
openssl-perl
RHEL 9
1:3.5.9-1.el9_9
fixed
Amazon Linux logo
Amazon Linux Releases
Amazon Package
Release
openssl
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
openssl-debuginfo
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
openssl-debugsource
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
openssl-devel
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
openssl-fips-provider-latest
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
openssl-fips-provider-latest-debuginfo
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
openssl-libs
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
openssl-libs-debuginfo
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
openssl-perl
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
openssl-snapsafe-libs
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
openssl-snapsafe-libs-debuginfo
Amazon Linux 2023
1:3.5.8-1.amzn2023.0.3
fixed
Azure Linux logo
Azure Linux Releases
Azure Package
Release
openssl
Azure Linux 3.0
0:3.3.7-7.azl3
fixed