CVE-2023-6936
Medium · 5.3CVSS
5.3
EPSS
0.6%
Published
Feb 20, 2024
CISA due date
—
Cloudanix analysis
A debugging option in a security library could let attackers peek at a tiny bit of memory if that option is left turned on.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Data Exposure
- Component
- Library
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Buffer over-read of 5 bytes on the heap when WOLFSSL_CALLBACKS debugging flag is enabled, reachable via crafted TLS client handshake or network traffic.
Why it matters to the business
Limited risk of minor information disclosure in debugging-enabled wolfSSL builds; low urgency given stable low exploit probability and no known campaigns.
How an attack unfolds
Attacker connects with a malicious TLS client that forces the library to take the callback code path, causing a 5-byte heap over-read that leaks a small amount of adjacent memory.
How to fix it
Upgrade wolfSSL to version 5.6.6 or later (GIT commit 66596ad9e1d7efa8479656872cf09c9c1870a02e); disable WOLFSSL_CALLBACKS in production builds.
How to confirm the fix worked
Confirm wolfSSL version is 5.6.6 or newer; verify WOLFSSL_CALLBACKS is not defined in build configuration; run regression tests that exercise TLS handshake paths.
Typical attack path
- Establish TLS connection to target using wolfSSL with WOLFSSL_CALLBACKS enabled
- Send crafted ClientHello or handshake messages that exercise callback functions
- Trigger the buffer over-read and capture the leaked 5 bytes from heap memory
How to detect it
Review TLS handshake logs and heap memory dumps around wolfSSL callback execution; no public exploitation artifacts are known.
What your security team should do
- Upgrade all wolfSSL instances to the fixed version immediately
- Audit build configurations to ensure WOLFSSL_CALLBACKS is disabled outside debugging environments
- Monitor for any future EPSS increases or KEV addition
The record
In wolfSSL prior to 5.6.6, if callback functions are enabled (via the WOLFSSL_CALLBACKS flag), then a malicious TLS client or network attacker can trigger a buffer over-read on the heap of 5 bytes (WOLFSSL_CALLBACKS is only intended for debugging).
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | wolfssl | 0 | No fix |
| Debian:12 | wolfssl | 0 | No fix |
| Debian:13 | wolfssl | 0 | 5.6.6-1.2 |
| Ubuntu:16.04:LTS | wolfssl | 0 | No fix |
| Ubuntu:18.04:LTS | wolfssl | 0 | No fix |
| Ubuntu:20.04:LTS | wolfssl | 0 | No fix |
| Ubuntu:22.04:LTS | wolfssl | 0 | No fix |
| Ubuntu:24.04:LTS | wolfssl | 0 | 5.6.6-1.2 |
| Ubuntu:Pro:16.04:LTS | wolfssl | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | wolfssl | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | wolfssl | 0 | No fix |
Related vulnerabilities
- CVE-2024-2881 Fault Injection vulnerability in wc_ed25519_sign_msg function in… Also affects wolfssl
- CVE-2024-1545 Fault Injection vulnerability in RsaPrivateDecryption function in… Also affects wolfssl
- CVE-2024-1543 The side-channel protected T-Table implementation in wolfSSL up to version 5.6.5 protects… Also affects wolfssl
- CVE-2024-5814 A malicious TLS1.2 server can force a TLS1.3 client with downgrade capability to use a… Also affects wolfssl
- CVE-2024-1544 Generating the ECDSA nonce k samples a random number r and then truncates this randomness… Also affects wolfssl
- CVE-2024-0901 Remotely executed SEGV and out of bounds read allows malicious packet sender to crash or… Also affects wolfssl
- CVE-2023-6937 wolfSSL prior to 5.6.6 did not check that messages in one (D)TLS record do not span key… Also affects wolfssl
- CVE-2017-13099 wolfSSL prior to version 3.12.2 provides a weak Bleichenbacher oracle when any TLS cipher… Also affects wolfssl