Bugzilla – Bug 1223213
VUL-0: CVE-2024-32650: atuin: rust-rustls: Infinite loop in rustls:conn:ConnectionCommon:complete_io() with proper client input
Last modified: 2024-04-22 12:15:03 UTC
atuin embeds rust-rustls: 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. References: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2024-32650 https://bugzilla.redhat.com/show_bug.cgi?id=2276085 https://www.cve.org/CVERecord?id=CVE-2024-32650 https://github.com/rustls/rustls/commit/2123576840aa31043a31b0770e6572136fbe0c2d https://github.com/rustls/rustls/commit/6e938bcfe82a9da7a2e1cbf10b928c7eca26426e https://github.com/rustls/rustls/commit/f45664fbded03d833dffd806503d3c8becd1b71e https://github.com/rustls/rustls/security/advisories/GHSA-6g7w-8wpp-frhj
We are embedding affected version 0.21.10 in our vendored dependencies archive at the moment: ```Cargo.lock [[package]] name = "rustls" version = "0.21.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba" ... ``` I will revendor and submit to Factory.
That doesn't work as the vulnerable rustls versions is locked in the upstream atuin tarball Cargo.lock / Cargo.toml. Upstream already contains a fix for this in git (https://github.com/atuinsh/atuin/commit/9ee1fb809f2a83bd8b039143e5013fa89a0784bc). So either we apply this patch or we wait for a fixed upstream release. @uncomfyhalomacro can you do this?