Lucene search

K
cvelistGitHub_MCVELIST:CVE-2023-36478
HistoryOct 10, 2023 - 4:53 p.m.

CVE-2023-36478 HTTP/2 HPACK integer overflow and buffer allocation

2023-10-1016:53:07
CWE-190
CWE-400
GitHub_M
raw.githubusercontent.com
3
eclipse jetty
http/2
hpack
integer overflow
buffer allocation
denial of service

6.5 Medium

AI Score

Confidence

High

0.002 Low

EPSS

Percentile

64.7%

Eclipse Jetty provides a web server and servlet container. In versions 11.0.0 through 11.0.15, 10.0.0 through 10.0.15, and 9.0.0 through 9.4.52, an integer overflow in MetaDataBuilder.checkSize allows for HTTP/2 HPACK header values to
exceed their size limit. MetaDataBuilder.java determines if a header name or value exceeds the size limit, and throws an exception if the limit is exceeded. However, when length is very large and huffman is true, the multiplication by 4 in line 295
will overflow, and length will become negative. (_size+length) will now be negative, and the check on line 296 will not be triggered. Furthermore, MetaDataBuilder.checkSize allows for user-entered HPACK header value sizes to be negative, potentially leading to a very large buffer allocation later on when the user-entered size is multiplied by 2. This means that if a user provides a negative length value (or, more precisely, a length value which, when multiplied by the 4/3 fudge factor, is negative), and this length value is a very large positive number when multiplied by 2, then the user can cause a very large buffer to be allocated on the server. Users of HTTP/2 can be impacted by a remote denial of service attack. The issue has been fixed in versions 11.0.16, 10.0.16, and 9.4.53. There are no known workarounds.

6.5 Medium

AI Score

Confidence

High

0.002 Low

EPSS

Percentile

64.7%