CVE-2024-7246CWE-440

HPACK table poisoning in gRPC C++, Python & Ruby

Medium · published August 6, 2024

CVSS v4.0
6.3
EPSS
0%
Percentile
12.1
In the wild
Unconfirmed
What it is

It's possible for a gRPC client communicating with a HTTP/2 proxy to poison the HPACK table between the proxy and the backend such that other clients see failed requests. It's also possible to use this vulnerability to leak other clients HTTP header keys, but not values.

This occurs because the error status for a misencoded header is not cleared between header reads, resulting in subsequent (incrementally indexed) added headers in the first request being poisoned until cleared from the HPACK table.

Please update to a fixed version of gRPC as soon as possible. This bug has been fixed in 1.58.3, 1.59.5, 1.60.2, 1.61.3, 1.62.3, 1.63.2, 1.64.3, 1.65.4.

The record
Technical detail
CVSS v4.0
6.3 · MEDIUM
Vector
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:L
EPSS
0.00222 · 12.1th percentile
Weakness
CWE-440 · Expected Behavior Violation
Published
2024-08-06T10:14Z
EPSS history
Timeline
  • 06 AUG 10:14Z
    HPACK table poisoning in gRPC C++, Python & Ruby
    cvelistv5