CVE-2023-4807
OpenSSL vulnerability analysis and mitigation

Overview

CVE-2023-4807 affects the POLY1305 MAC (message authentication code) implementation in OpenSSL versions 1.1.1 to 1.1.1v, 3.0.0 to 3.0.10, and 3.1.0 to 3.1.2. The vulnerability was discovered on July 23, 2023, by Zach Wilson (Nvidia) and reported to the OpenSSL security team on August 28, 2023, by Bernd Edlinger. The bug could corrupt the internal state of applications on the Windows 64 platform when running on newer X86_64 processors that support AVX512-IFMA instructions (OpenSSL Advisory).

Technical details

The vulnerability stems from the POLY1305 MAC implementation's failure to save the contents of non-volatile XMM registers on Windows 64 platform when calculating the MAC of data larger than 64 bytes. Instead of restoring their previous content, all XMM registers are set to zero before returning to the caller. This issue only affects systems using newer x86_64 processors with AVX512-IFMA instructions support. The vulnerability has been assigned a CVSS v3.1 base score of 7.8 (HIGH) with the vector CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H (NVD).

Impact

The impact of this vulnerability varies depending on the application. Consequences range from no impact (if the calling application doesn't depend on non-volatile XMM registers) to potential complete control of the application process. However, since the registers are only zeroized rather than allowing arbitrary values, the most likely outcomes are incorrect calculation results or denial of service through application crashes. The vulnerability is particularly relevant for server applications using TLS 1.2 and 1.3 with CHACHA20-POLY1305 AEAD cipher (OpenSSL Advisory).

Mitigation and workarounds

A temporary workaround is available by disabling AVX512-IFMA instructions support at runtime through setting the environment variable: OPENSSL_ia32cap=:~0x200000. The FIPS provider is not affected as it doesn't implement the POLY1305 MAC algorithm. Permanent fixes are available in commits 4bfac447 (for 3.1), 6754de4a (for 3.0), and a632d534 (for 1.1.1) in the OpenSSL git repository (OpenSSL Advisory).

Additional resources


SourceThis report was generated using AI

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

“Best User Experience I have ever seen, provides full visibility to cloud workloads.”
David EstlickCISO
“Wiz provides a single pane of glass to see what is going on in our cloud environments.”
Adam FletcherChief Security Officer
“We know that if Wiz identifies something as critical, it actually is.”
Greg PoniatowskiHead of Threat and Vulnerability Management