{"id":"UBUNTU-CVE-2021-32715","details":"hyper is an HTTP library for rust. hyper's HTTP/1 server code had a flaw that incorrectly parses and accepts requests with a `Content-Length` header with a prefixed plus sign, when it should have been rejected as illegal. This combined with an upstream HTTP proxy that doesn't parse such `Content-Length` headers, but forwards them, can result in \"request smuggling\" or \"desync attacks\". The flaw exists in all prior versions of hyper prior to 0.14.10, if built with `rustc` v1.5.0 or newer. The vulnerability is patched in hyper version 0.14.10. Two workarounds exist: One may reject requests manually that contain a plus sign prefix in the `Content-Length` header or ensure any upstream proxy handles `Content-Length` headers with a plus sign prefix.","modified":"2025-10-24T04:50:20Z","published":"2021-07-07T20:15:00Z","upstream":["CVE-2021-32715"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2021-32715"},{"type":"REPORT","url":"https://github.com/hyperium/hyper/security/advisories/GHSA-f3pg-qwvg-p99c"},{"type":"REPORT","url":"https://github.com/rust-lang/rust/pull/28826/commits/123a83326fb95366e94a3be1a74775df4db97739"},{"type":"REPORT","url":"https://rustsec.org/advisories/RUSTSEC-2021-0078.html"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2021-32715"}],"affected":[{"package":{"name":"rust-hyper","ecosystem":"Ubuntu:20.04:LTS","purl":"pkg:deb/ubuntu/rust-hyper@0.12.35-1?arch=source&distro=focal"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.12.35-1"],"ecosystem_specific":{"binaries":[{"binary_version":"0.12.35-1","binary_name":"librust-hyper+default-dev"},{"binary_name":"librust-hyper+futures-cpupool-dev","binary_version":"0.12.35-1"},{"binary_name":"librust-hyper+net2-dev","binary_version":"0.12.35-1"},{"binary_name":"librust-hyper+runtime-dev","binary_version":"0.12.35-1"},{"binary_name":"librust-hyper+tokio-dev","binary_version":"0.12.35-1"},{"binary_version":"0.12.35-1","binary_name":"librust-hyper+tokio-executor-dev"},{"binary_name":"librust-hyper+tokio-reactor-dev","binary_version":"0.12.35-1"},{"binary_name":"librust-hyper+tokio-tcp-dev","binary_version":"0.12.35-1"},{"binary_name":"librust-hyper+tokio-threadpool-dev","binary_version":"0.12.35-1"},{"binary_name":"librust-hyper+tokio-timer-dev","binary_version":"0.12.35-1"},{"binary_name":"librust-hyper-dev","binary_version":"0.12.35-1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2021/UBUNTU-CVE-2021-32715.json"}}],"schema_version":"1.7.3","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N"},{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"},{"type":"Ubuntu","score":"medium"}]}