Lucene search

K
osvGoogleOSV:GHSA-XVC9-XWGJ-4CQ9
HistoryJun 16, 2022 - 11:08 p.m.

Integer Overflow in HeaderMap::reserve() can cause Denial of Service

2022-06-1623:08:02
Google
osv.dev
10

0.002 Low

EPSS

Percentile

64.3%

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.

CPENameOperatorVersion
httplt0.1.20

0.002 Low

EPSS

Percentile

64.3%