Files
advisory-db/crates/http/RUSTSEC-2019-0033.toml

28 lines
937 B
TOML

[advisory]
id = "RUSTSEC-2019-0033"
aliases = ["CVE-2020-25574"]
package = "http"
date = "2019-11-16"
title = "Integer Overflow in HeaderMap::reserve() can cause Denial of Service"
url = "https://github.com/hyperium/http/issues/352"
categories = ["denial-of-service"]
keywords = ["http", "integer-overflow", "DoS"]
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 sufficently 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.
"""
[affected.functions]
"http::header::HeaderMap::reserve" = ["< 0.1.20"]
[versions]
patched = [">= 0.1.20"]