CVE-2018-6347

HIGH7.5/ 10.0
Share:
Published: December 31, 2018 at 10:29 PM
Modified: May 6, 2025 at 04:15 PM
Source: cve-assign@fb.com

Vulnerability Description

An issue in the Proxygen handling of HTTP2 parsing of headers/trailers can lead to a denial-of-service attack. This affects Proxygen prior to v2018.12.31.00.

CVSS Metrics

Base Score
7.5
Severity
HIGH
Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Weaknesses (CWE)

Source: cve-assign@fb.com
Source: nvd@nist.gov

AI Security Analysis

01 // Technical Summary

Proxygen, a Facebook-developed HTTP/2 library, is vulnerable to a denial-of-service (DoS) attack due to a flaw in how it parses headers and trailers. This vulnerability allows attackers to send crafted HTTP/2 requests that can exhaust server resources, leading to service disruption and potential business impact.

02 // Vulnerability Mechanism

Step 1: Payload Delivery: An attacker crafts a malicious HTTP/2 request. This request contains either a large number of headers/trailers, extremely large headers/trailers, or malformed headers/trailers. Step 2: Request Processing: The vulnerable Proxygen library receives and begins to parse the malicious HTTP/2 request. Step 3: Resource Exhaustion: Due to the parsing flaw, the library attempts to allocate excessive resources (memory, CPU) to process the malformed headers/trailers. Step 4: Denial of Service: The excessive resource consumption leads to a denial-of-service condition, either by crashing the server process, exhausting available memory, or causing the server to become unresponsive to legitimate requests.

03 // Deep Technical Analysis

The vulnerability stems from a flaw in Proxygen's HTTP/2 header/trailer parsing logic. Specifically, the library fails to adequately validate the size or structure of incoming headers and trailers. This can lead to excessive resource consumption, such as memory allocation or CPU utilization, when processing malicious HTTP/2 frames. The root cause is likely an insufficient check on the size of the header/trailer data, allowing an attacker to craft a request with an extremely large or malformed header/trailer section. This can trigger a buffer overflow or other resource exhaustion issues, ultimately leading to a DoS condition. The specific function or logic flaw likely resides within the parsing routines responsible for handling HTTP/2 frame data, where the library fails to properly sanitize or limit the size of the incoming header/trailer data.

CVE-2018-6347 - HIGH Severity (7.5) | Free CVE Database | 4nuxd