Connection confusion in gRPC
When gRPC HTTP2 stack raised a header size exceeded error, it skipped parsing the rest of the HPACK frame. This caused any HPACK table mutations to also be skipped, resulting in a desynchronization of HPACK tables between sender and receiver. If leveraged, say, between a proxy and a backend, this could lead to requests from the proxy being interpreted as containing headers from different proxy clients - leading to an information leak that can be used for privilege escalation or data exfiltration.
01
describes (1)
Related CVEs.
| ID | severity | exploitable | ||
|---|---|---|---|---|
| CVE-2023-32731US | high7.5 | — | ||
When gRPC HTTP2 stack raised a header size exceeded error, it skipped parsing the rest of the HPACK frame. This caused any HPACK table mutations to also be skipped, resulting in a… | ||||
02
references
External citations — patches, advisories, analysis.
- https://github.com/advisories/GHSA-cfgp-2977-2fmmADVISORY
- https://github.com/grpc/grpc/commit/29d8beee0ac2555773b2a2dda5601c74a95d6c10WEB
- https://github.com/grpc/grpc/commit/65a2a895afaf1d2072447b9baf246374b182a946WEB
- https://github.com/grpc/grpc/issues/33463WEB
- https://github.com/grpc/grpc/pull/32309WEB
- https://github.com/grpc/grpc/pull/33005WEB
- https://github.com/grpc/grpc/releases/tag/v1.53.1WEB
- https://github.com/grpc/grpc/releases/tag/v1.54.2WEB
scry
Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.
Free scan