Advisory Database
  • Advisories
  • Dependency Scanning
  1. cargo
  2. ›
  3. http
  4. ›
  5. CVE-2019-25008

CVE-2019-25008: Duplicate Advisory: Integer Overflow in HeaderMap::reserve() can cause Denial of Service

June 16, 2022 (updated February 21, 2024)

Duplicate Advisory

This advisory has been withdrawn because it is a duplicate of GHSA-x7vr-c387-8w57. This link is maintained to preserve external references.

Original Description

HeaderMap::reserve() used usize::next_power_of_two() to calculate the increased capacity. However, next_power_of_two() silently overflows to 0 if given a sufficiently large number in release mode.

If the map was not empty when the overflow happens, the library will invoke self.grow(0) and start infinite probing. This allows an attacker who controls the argument to reserve() to cause a potential denial of service (DoS).

The flaw was corrected in 0.1.20 release of http crate.

References

  • github.com/advisories/GHSA-xvc9-xwgj-4cq9
  • github.com/hyperium/http
  • github.com/hyperium/http/issues/352
  • nvd.nist.gov/vuln/detail/CVE-2019-25008
  • rustsec.org/advisories/RUSTSEC-2019-0033.html

Code Behaviors & Features

Detect and mitigate CVE-2019-25008 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 before 0.1.20

Fixed versions

  • 0.1.20

Solution

Upgrade to version 0.1.20 or above.

Impact 7.5 HIGH

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

Learn more about CVSS

Weakness

  • CWE-190: Integer Overflow or Wraparound

Source file

cargo/http/CVE-2019-25008.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:59 +0000.