Advisory Database
  • Advisories
  • Dependency Scanning
  1. cargo
  2. ›
  3. hyper
  4. ›
  5. CVE-2020-35863

CVE-2020-35863: HTTP Request Smuggling in hyper

August 25, 2021 (updated June 13, 2023)

Vulnerable versions of hyper allow GET requests to have bodies, even if there is no Transfer-Encoding or Content-Length header. As per the HTTP 1.1 specification, such requests do not have bodies, so the body will be interpreted as a separate HTTP request.

This allows an attacker who can control the body and method of an HTTP request made by hyper to inject a request with headers that would not otherwise be allowed, as demonstrated by sending a malformed HTTP request from a Substrate runtime. This allows bypassing CORS restrictions. In combination with other vulnerabilities, such as an exploitable web server listening on loopback, it may allow remote code execution.

The flaw was corrected in hyper version 0.12.34.

References

  • github.com/advisories/GHSA-h3qr-rq2j-74w4
  • github.com/hyperium/hyper
  • github.com/hyperium/hyper/issues/1925
  • nvd.nist.gov/vuln/detail/CVE-2020-35863
  • rustsec.org/advisories/RUSTSEC-2020-0008.html

Code Behaviors & Features

Detect and mitigate CVE-2020-35863 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions starting from 0.11.0 before 0.12.34

Fixed versions

  • 0.12.34

Solution

Upgrade to version 0.12.34 or above.

Impact 9.8 CRITICAL

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Learn more about CVSS

Weakness

  • CWE-444: Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')

Source file

cargo/hyper/CVE-2020-35863.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Wed, 14 May 2025 12:15:39 +0000.