Description
Issue summary: Setting an AES-GCM-SIV IV shorter than the expected nonce
length via EVP_CipherInit_ex() may trigger a heap out-of-bounds read.
Supplying a longer IV is silently truncated instead of rejected.
Impact summary: An application passing a caller-supplied IV of the wrong
length may crash or read beyond its buffer. Because trailing IV bytes are
ignored, an attacker who knows one message and tag may forge messages under a
different IV.
CWE: CWE-125: Out-of-bounds Read
Description: AES-GCM-SIV copies the caller-supplied IV or nonce into its
internal state using a copy whose length is taken from the expected nonce size
rather than from the length the caller actually provided. When the caller
passes a shorter IV, the copy reads past the end of the caller's buffer;
AddressSanitizer confirms a heap out-of-bounds read reached through
EVP_CipherInit_ex() into ossl_aes_gcm_siv_init(). When the caller passes a
longer IV, the implementation silently discards the trailing bytes instead of
rejecting the length.
The truncation breaks the binding between the IV and the computed
authentication tag. An attacker who has observed a message and its tag under
one IV can produce a message and tag that verify under a different IV whose
first bytes match, since the surplus bytes never influence the computation.
The message itself is unchanged, so this is a failure of IV commitment rather
than a classic existential forgery.
Only applications that call EVP_CipherInit_ex() (or the equivalent provider
cipher initialization) with an IV length other than the standard 12 bytes for
AES-GCM-SIV are affected. The severity is limited because the out-of-bounds
read is small and attacker-controlled only in length, and the forgery requires
an unusual IV length choice by the application.
FIPS impact: no
The FIPS modules are not affected by this issue, as AES-GCM-SIV is not an
approved algorithm.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| OpenSSL | OpenSSL | 4.1.0 <4.1.1 | — |
| OpenSSL | OpenSSL | 4.0.0 <4.0.4 | — |
| OpenSSL | OpenSSL | 3.5.0 <3.5.10 | — |
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.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | openssl | No fix yet | — |
| Debian 13 | openssl | No fix yet | — |
| Debian 12 | openssl | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | edk2 +2 | No fix yet | — |
| Ubuntu 26.04 LTS | edk2 +2 | No fix yet | — |
| Ubuntu 24.04 LTS | edk2 +1 | No fix yet | — |
| Ubuntu 22.04 LTS | edk2 +1 | No fix yet | — |
Show 14 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro FIPS 20.04 LTS | openssl | No fix yet | — |
| Ubuntu Pro FIPS 18.04 LTS | openssl | No fix yet | — |
| Ubuntu Pro FIPS 16.04 LTS | openssl | No fix yet | — |
| Ubuntu Pro FIPS-updates 24.04 LTS | openssl-fips | No fix yet | — |
| Ubuntu Pro FIPS-updates 22.04 LTS | openssl +1 | No fix yet | — |
| Ubuntu Pro FIPS-updates 20.04 LTS | openssl | No fix yet | — |
| Ubuntu Pro FIPS-updates 18.04 LTS | openssl | No fix yet | — |
| Ubuntu Pro FIPS-updates 16.04 LTS | openssl | No fix yet | — |
| Ubuntu Pro FIPS-preview 22.04 LTS | openssl +1 | No fix yet | — |
| Ubuntu Pro 22.04 LTS | nodejs | No fix yet | — |
| Ubuntu Pro 20.04 LTS | edk2 +1 | No fix yet | — |
| Ubuntu Pro 18.04 LTS | edk2 +3 | No fix yet | — |
| Ubuntu Pro 16.04 LTS | edk2 +2 | No fix yet | — |
| Ubuntu Pro 14.04 LTS | openssl | No fix yet | — |
Advisories 1
- WID-SEC-2026-4443 OpenSSL: Mehrere Schwachstellen BSI CERT-Bund (WID) · Nov 11, 2026
References
- https://openssl-library.org/news/secadv/20261110.txt
- https://github.com/openssl/openssl/commit/70a47ac78b6f3be1b22fb1551bd0bfcff4f29613
- https://github.com/openssl/openssl/commit/510872388f5d145cf870868b3d288a23822cb776
- https://github.com/openssl/openssl/commit/257a3427aa0ef8d9dd2ef5b3e2d1c021a221b116