ALPINE-CVE-2020-11080 PUBLISHED CVSS 7.5 HIGH

In nghttp2 before version 1.41.0, the overly large HTTP/2 SETTINGS frame payload causes denial of service. The proof of concept attack involves a malicious client constructing a SETTINGS frame with a length of 14,400 bytes (2400 individual settings entries) over and over again. The attack causes the CPU to spike at 100%. nghttp2 v1.41.0 fixes this vulnerability. There is a workaround to this vulnerability. Implement nghttp2_on_frame_recv_callback callback, and if received frame is SETTINGS frame and the number of settings entries are large (e.g., > 32), then drop the connection.

Risk Scores

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

Affected Products

VendorProductVersions
Alpine:v3.23nghttp21.9.2-r0, 0, 1.10.0-r0
Alpine:v3.20nghttp21.9.2-r0, 0, 1.10.0-r0
Alpine:v3.19nghttp21.10.0-r0, 1.9.2-r0, 1.9.1-r0
Alpine:v3.13nodejs6.9.4-r1, 6.9.2-r0, 6.9.1-r1
Alpine:v3.22nodejs0, 0, 0
Alpine:v3.18nodejs4.4.7-r0, 0, 10.13.0-r0
Alpine:v3.14nghttp21.9.2-r0, 1.9.1-r0, 1.8.0-r0
Alpine:v3.15nodejs10.14.0-r0, 0, 10.13.0-r0
Alpine:v3.21nodejs0, 0, 0
Alpine:v3.19nodejs10.16.1-r0, 8.9.4-r0, 8.9.3-r1
Alpine:v3.17nodejs6.9.2-r0, 8.9.1-r0, 8.9.2-r0
Alpine:v3.10nghttp21.14.1-r0, 1.18.0-r0, 1.18.0-r1
Alpine:v3.11nodejs6.10.0-r0, 4.5.0-r0, 4.4.7-r0
Alpine:v3.20nodejs6.11.0-r0, 6.10.3-r0, 6.10.1-r0
Alpine:v3.12nodejs4.5.0-r0, 0, 10.13.0-r0
Alpine:v3.17nghttp21.10.0-r0, 1.16.1-r0, 1.17.0-r0
Alpine:v3.12nghttp21.17.0-r0, 1.8.0-r0, 1.7.1-r0
Alpine:v3.14nodejs8.9.1-r0, 0, 10.13.0-r0
Alpine:v3.21nghttp21.24.0-r0, 1.25.0-r0, 1.26.0-r0
Alpine:v3.9nghttp21.29.0-r0, 1.3.0-r0, 1.3.2-r0

…and 8 more

Timeline

References

Open in Interactive Console →