CVE-2024-28836
Medium · 5.4CVSS
5.4
EPSS
0.4%
Published
Apr 3, 2024
CISA due date
—
Cloudanix analysis
A flaw in certain versions of a widely used encryption library can let an attacker either crash the service or force it to use an older, less secure connection method.
- Exploitation
- Remote Authenticated
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Server-side TLS version negotiation in Mbed TLS 3.5.x falls back to a disabled TLS 1.2 implementation, allowing a TLS 1.2 ClientHello to trigger an infinite loop (when TLS 1.2 disabled at build time) or establish a downgraded TLS 1.2 session (when disabled at runtime).
Why it matters to the business
Services relying on Mbed TLS for TLS 1.3-only operation can experience denial of service or unintended exposure to weaker protocol versions, leading to availability loss and potential security posture degradation.
How an attack unfolds
An attacker connects to a vulnerable server and sends a TLS 1.2 ClientHello; the server incorrectly processes the message under the disabled TLS 1.2 code path, either looping indefinitely or completing a downgraded handshake.
How to fix it
Upgrade Mbed TLS to the fixed commit 2ca6c285a0dd3f33982dd57299012dacab1ff206 (equivalent to 3.6.0) or later; rebuild and redeploy all affected binaries.
How to confirm the fix worked
Confirm the library version reports 3.6.0 or newer; perform functional testing by sending TLS 1.2 ClientHello packets and verifying the server rejects them without looping or accepting the connection.
Typical attack path
- Scan for services advertising TLS 1.3 support but using Mbed TLS 3.5.x
- Send a TLS 1.2 ClientHello packet to the target server
- Observe server entering infinite loop (DoS) or accepting the downgraded TLS 1.2 session
How to detect it
Monitor process CPU usage and connection handling logs for sustained high utilization after TLS handshakes; inspect server logs for unexpected TLS 1.2 negotiation attempts or fallback messages.
What your security team should do
- Prioritize upgrade of all Mbed TLS instances to the fixed commit within normal change windows
- Audit build and runtime configuration to ensure only intended TLS versions are enabled
- Add version checks for Mbed TLS to dependency scanning pipelines
The record
An issue was discovered in Mbed TLS 3.5.x before 3.6.0. When negotiating the TLS version on the server side, it can fall back to the TLS 1.2 implementation of the protocol if it is disabled. If the TLS 1.2 implementation was disabled at build time, a TLS 1.2 client could put a TLS 1.3-only server into an infinite loop processing a TLS 1.2 ClientHello, resulting in a denial of service. If the TLS 1.2 implementation was disabled at runtime, a TLS 1.2 client can successfully establish a TLS 1.2 connection with the server.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Ubuntu:20.04:LTS | mbedtls | 0 | No fix |
| Ubuntu:22.04:LTS | mbedtls | 0 | No fix |
| Ubuntu:24.04:LTS | mbedtls | 0 | No fix |
| Ubuntu:24.10 | mbedtls | 0 | No fix |
| Ubuntu:25.04 | mbedtls | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | mbedtls | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | mbedtls | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | mbedtls | 0 | No fix |
Related vulnerabilities
- CVE-2024-49195 Mbed TLS 3.5.x through 3.6.x before 3.6.2 has a buffer underrun in pkwrite when writing… Also affects mbedtls
- CVE-2024-45158 An issue was discovered in Mbed TLS 3.6 before 3.6.1. Also affects mbedtls
- CVE-2024-45159 An issue was discovered in Mbed TLS 3.x before 3.6.1. Also affects mbedtls
- CVE-2024-45157 An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the… Also affects mbedtls
- CVE-2024-28755 An issue was discovered in Mbed TLS 3.5.x before 3.6.0. Also affects mbedtls
- CVE-2024-30166 In Mbed TLS 3.3.0 through 3.5.2 before 3.6.0, a malicious client can cause information… Also affects mbedtls
- CVE-2024-28960 An issue was discovered in Mbed TLS 2.18.0 through 2.28.x before 2.28.8 and 3.x before… Also affects mbedtls
- CVE-2024-23775 Integer Overflow vulnerability in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2, allows… Also affects mbedtls