CVE-2022-39294 (DoS) Denial of Service from unchecked request length in conduit-hyper
An attacker can cause a denial of service by sending requests with excessively large Content-Length headers, leading to memory allocation failures.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2022-39294?
CVE-2022-39294 is a high-severity denial of service vulnerability in conduit-rust conduit-hyper, published on 31 Oct 2022. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
conduit-hyper integrates a conduit application with the hyper server. Prior to version 0.4.2, `conduit-hyper` did not check any limit on a request's length before calling [`hyper::body::to_bytes`](https://docs.rs/hyper/latest/hyper/body/fn.to_bytes.html). An attacker could send a malicious request with an abnormally large `Content-Length`, which could lead to a panic if memory allocation failed for that request. In version 0.4.2, `conduit-hyper` sets an internal limit of 128 MiB per request, otherwise returning status 400 ("Bad Request"). This crate is part of the implementation of Rust's [crates.io](https://crates.io/), but that service is not affected due to its existing cloud infrastructure, which already drops such malicious requests. Even with the new limit in place, `conduit-hyper` is not recommended for production use, nor to directly serve the public Internet.
Which versions are affected by CVE-2022-39294?
3 open source packages ship an affected version, including conduit-hyper. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
conduit-hyper crates.io | From 0.2.0-alpha.3 | 0.4.2 |
conduit-hyper crates.io | From 0.2.0-alpha.3 | 0.4.2 |
conduit-hyper crates.io | From 0.2.0-alpha.3 | 0.4.2 |
Products include Conduit-Hyper Project Conduit-Hyper.
How do I fix CVE-2022-39294?
Upgrade conduit-hyper to 0.4.2 or later.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2022-39294 being exploited?
There is no known exploitation of CVE-2022-39294 in the wild and no public exploit code.
Sources
Also known as GHSA-9398-5ghf-7pr6, RUSTSEC-2022-0066.