CVE-2023-4807CWE-440

CVE-2023-4807

High · published September 8, 2023

CVSS v3.1
7.8
EPSS
2%
Percentile
75.3
In the wild
Unconfirmed
What it is

Issue summary: The POLY1305 MAC (message authentication code) implementation

contains a bug that might corrupt the internal state of applications on the

Windows 64 platform when running on newer X86_64 processors supporting the

AVX512-IFMA instructions.

Impact summary: If in an application that uses the OpenSSL library an attacker

can influence whether the POLY1305 MAC algorithm is used, the application

state might be corrupted with various application dependent consequences.

The POLY1305 MAC (message authentication code) implementation in OpenSSL does

not save the contents of non-volatile XMM registers on Windows 64 platform

when calculating the MAC of data larger than 64 bytes. Before returning to

the caller all the XMM registers are set to zero rather than restoring their

previous content. The vulnerable code is used only on newer x86_64 processors

supporting the AVX512-IFMA instructions.

The consequences of this kind of internal application state corruption can

be various - from no consequences, if the calling application does not

depend on the contents of non-volatile XMM registers at all, to the worst

consequences, where the attacker could get complete control of the application

process. However given the contents of the registers are just zeroized so

the attacker cannot put arbitrary values inside, the most likely consequence,

if any, would be an incorrect result of some application dependent

calculations or a crash leading to a denial of service.

The POLY1305 MAC algorithm is most frequently used as part of the

CHACHA20-POLY1305 AEAD (authenticated encryption with associated data)

algorithm. The most common usage of this AEAD cipher is with TLS protocol

versions 1.2 and 1.3 and a malicious client can influence whether this AEAD

cipher is used by the server. This implies that server applications using

OpenSSL can be potentially impacted. However we are currently not aware of

any concrete application that would be affected by this issue therefore we

consider this a Low severity security issue.

As a workaround the AVX512-IFMA instructions support can be disabled at

runtime by setting the environment variable OPENSSL_ia32cap:

OPENSSL_ia32cap=:~0x200000

The FIPS provider is not affected by this issue.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.01580 · 75.3th percentile
Weakness
CWE-440 · Expected Behavior Violation
Published
2023-09-08T16:15Z
Affected products (3)
ProductVersionsFixed in
openssl/openssl≥ 1.1.1, < 1.1.1w1.1.1w
openssl/openssl≥ 3.0.0, < 3.0.113.0.11
openssl/openssl≥ 3.1.0, < 3.1.33.1.3
References (15)
https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=4bfac4471f53c4f74c8d81020beb938f92d84ca5 · [email protected]https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=6754de4a121ec7f261b16723180df6592cbb4508 · [email protected]https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=a632d534c73eeb3e3db8c7540d811194ef7c79ff · [email protected]https://www.openssl.org/news/secadv/20230908.txt · [email protected]https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=4bfac4471f53c4f74c8d81020beb938f92d84ca5 · af854a3a-2127-422b-91ae-364da2661108https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=6754de4a121ec7f261b16723180df6592cbb4508 · af854a3a-2127-422b-91ae-364da2661108https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=a632d534c73eeb3e3db8c7540d811194ef7c79ff · af854a3a-2127-422b-91ae-364da2661108https://security.netapp.com/advisory/ntap-20230921-0001/ · af854a3a-2127-422b-91ae-364da2661108https://www.openssl.org/news/secadv/20230908.txt · af854a3a-2127-422b-91ae-364da2661108https://cert-portal.siemens.com/productcert/html/ssa-093430.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5ehttps://cert-portal.siemens.com/productcert/html/ssa-277137.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5ehttps://cert-portal.siemens.com/productcert/html/ssa-331112.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5ehttps://cert-portal.siemens.com/productcert/html/ssa-398330.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5ehttps://cert-portal.siemens.com/productcert/html/ssa-556635.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5ehttps://cert-portal.siemens.com/productcert/html/ssa-915275.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e
EPSS history
Timeline
  • 08 SEP 11:01Z
    POLY1305 MAC implementation corrupts XMM registers on Windows
    cvelistv5