CVE-2024-32650 json
Rustls vulnerable to an infinite loop in rustls::conn::ConnectionCommon::complete_io() with proper client input
published 2024-04-19 2 y ago modified 2026-10-12 27 d ago also EUVD-2024-1125 , GHSA-6g7w-8wpp-frhj , RUSTSEC-2024-0336
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.9%
- EPSS 0.9% chance of exploitation in 30 days, percentile 61%
- public exploits
- 0
- none known
Summary
Rustls is a modern TLS library written in Rust. `rustls::ConnectionCommon::complete_io` could fall into an infinite loop based on network input. When using a blocking rustls server, if a client send a `close_notify` message immediately after `client_hello`, the server's `complete_io` will get in an infinite loop. This vulnerability is fixed in 0.23.5, 0.22.4, and 0.21.11.
Patch / fix
- crates.io rustls 0.21.11, 0.22.4, 0.23.5
- rustls_project rustls 0.21.11, 0.22.4, 0.23.5
- rust-rustls Debian 14, Debian 13 0.21.12-1
debian advisories DEBIAN-CVE-2024-32650
- sccache SLES for SAP 15 SP6, SLES 15 SP6-LTSS, SLE Module for Development Tools 15 SP7 0.16.0~0-150600.10.11.1
- gstreamer-plugins-rs SLE Module for Desktop Applications 15 SP7, SLE Module for Desktop Applications 15 SP6, openSUSE Leap 15.6 0.12.11-150600.3.3.1
- rust-keylime SLE Micro 5.5 0.2.7+141-150500.3.5.1
- rust-keylime SLE Micro 5.4 0.2.7+141-150400.3.5.1
- rust-keylime SLE Micro 5.3 0.2.7+141-150400.3.7.1
- rust-keylime Linux Micro 6.0 0.2.6+13-1.1
suse advisories SUSE-SU-2026:3022-1SUSE-SU-2025:03629-1SUSE-SU-2025:02811-1SUSE-SU-2025:02810-1SUSE-SU-2025:02809-1SUSE-SU-2025:20057-1
- gitoxide openSUSE Leap 16.0 0.56.0-bp160.1.1
- gitoxide openSUSE Tumbleweed 0.38.0-1.1
- shadowsocks-rust openSUSE Tumbleweed 1.18.3-1.1
- teleport openSUSE Tumbleweed 15.2.4-1.1
- topgrade openSUSE Tumbleweed 14.0.1-2.1
- kubetui openSUSE Tumbleweed 1.5.1-1.1
- tlrc openSUSE Tumbleweed 1.9.2+0-1.1
- sccache openSUSE Tumbleweed 0.8.0~3-1.1
opensuse advisories openSUSE-SU-2026:21558-1openSUSE-SU-2024:14424-1openSUSE-SU-2024:13893-1openSUSE-SU-2024:13903-1openSUSE-SU-2024:13904-1openSUSE-SU-2024:13912-1
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2024-32650 updated cvss 7.5
rust-rustls: Infinite loop in rustls::conn::ConnectionCommon::complete_io() with proper client input
-
Red Hat All currently supported Red Hat productsnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 2 y ago
Exploit prediction
0.95% chance of exploitation in the next 30 days, higher than 61% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| OSV | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | rustls | >=0.23.0, <0.23.5 >=0.22.0, <0.22.4 >=0.21.0, <0.21.11 1 listed version >=0.0.0-0, <0.21.11 |
0.23.5 0.22.4 0.21.11 |
Affected products
- rustls rustls
- rustls_project rustls
Classification
- Weakness
-
- CWE-835 Loop with Unreachable Exit Condition
References
-
github.com
/rustls/rustls/commit/2123576840aa31043a31b0770e6572136fbe0c2d
web
-
github.com
/rustls/rustls/commit/6e938bcfe82a9da7a2e1cbf10b928c7eca26426e
web
-
github.com
/rustls/rustls/commit/f45664fbded03d833dffd806503d3c8becd1b71e
web
-
github.com
/rustls/rustls/commit/5374108df698e78c3e9ef8265cac311556be24af
web
-
github.com
/rustls/rustls/commit/ebcb4782f23b4edf9b10a7065d9e8d4362439d9c
web
-
github.com
/rustls/rustls/security/advisories/GHSA-6g7w-8wpp-frhj
web
-
nvd.nist.gov
/vuln/detail/CVE-2024-32650
advisory
-
github.com
/rustls/rustls
package
-
rustsec.org
/advisories/RUSTSEC-2024-0336.html
web, advisory
-
crates.io
/crates/rustls
package
Sources
- CVE List CVE-2024-32650
- GitHub Advisory GHSA-6g7w-8wpp-frhj
- NVD CVE-2024-32650
- OSV RUSTSEC-2024-0336
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.