CVE-2023-4807

7.8 HIGH

📋 TL;DR

A bug in OpenSSL's POLY1305 MAC implementation on Windows 64-bit systems with AVX512-IFMA capable processors can corrupt application state by zeroing XMM registers. This affects servers using OpenSSL with CHACHA20-POLY1305 in TLS 1.2/1.3, potentially allowing attackers to cause crashes or incorrect calculations. The vulnerability is considered low severity due to limited practical exploitation.

💻 Affected Systems

Products:
  • OpenSSL
Versions: OpenSSL versions 3.0.0 to 3.0.10, 3.1.0 to 3.1.2
Operating Systems: Windows 64-bit
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems with x86_64 processors supporting AVX512-IFMA instructions. FIPS provider is not affected.

📦 What is this software?

Openssl by Openssl

OpenSSL is a robust, commercial-grade toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It provides cryptographic functions and is one of the most widely used libraries for implementing secure communications in applications worldwide.

Learn more about Openssl →

Openssl by Openssl

OpenSSL is a robust, commercial-grade toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It provides cryptographic functions and is one of the most widely used libraries for implementing secure communications in applications worldwide.

Learn more about Openssl →

Openssl by Openssl

OpenSSL is a robust, commercial-grade toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It provides cryptographic functions and is one of the most widely used libraries for implementing secure communications in applications worldwide.

Learn more about Openssl →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete control of the application process through state corruption, though unlikely due to registers being zeroed rather than arbitrary values.

🟠

Likely Case

Application crash leading to denial of service or incorrect calculation results.

🟢

If Mitigated

No impact if AVX512-IFMA instructions are disabled or systems don't meet specific hardware/OS requirements.

🌐 Internet-Facing: LOW
🏢 Internal Only: LOW

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: NO
Unauthenticated Exploit: ⚠️ Yes
Complexity: HIGH

Exploitation requires specific hardware/OS combination and attacker ability to influence cipher selection in TLS. No known active exploitation.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: OpenSSL 3.0.11, 3.1.3

Vendor Advisory: https://www.openssl.org/news/secadv/20230908.txt

Restart Required: Yes

Instructions:

1. Update OpenSSL to version 3.0.11 or 3.1.3. 2. Restart affected applications/services using OpenSSL. 3. Verify the update with version check.

🔧 Temporary Workarounds

Disable AVX512-IFMA Instructions

windows

Prevents use of vulnerable code path by disabling AVX512-IFMA instruction support at runtime

set OPENSSL_ia32cap=:~0x200000

🧯 If You Can't Patch

  • Disable CHACHA20-POLY1305 cipher suites in TLS configurations
  • Apply the OPENSSL_ia32cap environment variable workaround

🔍 How to Verify

Check if Vulnerable:

Check OpenSSL version and Windows OS. Vulnerable if version 3.0.0-3.0.10 or 3.1.0-3.1.2 on Windows 64-bit with AVX512-IFMA capable CPU.

Check Version:

openssl version

Verify Fix Applied:

Verify OpenSSL version is 3.0.11+ or 3.1.3+ and test POLY1305 functionality.

📡 Detection & Monitoring

Log Indicators:

  • Application crashes or abnormal termination when using CHACHA20-POLY1305
  • Unexpected calculation errors in applications using OpenSSL

Network Indicators:

  • TLS connections using CHACHA20-POLY1305 cipher suites

SIEM Query:

Event logs showing application crashes with OpenSSL processes on Windows systems

🔗 References

📤 Share & Export