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.
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Java / Kotlin (Maven) | io.grpc:grpc-protobuf | >= 1.53.0, < 1.53.1, >= 1.54.0, < 1.54.2 | 1.53.1, 1.54.2 |
| Python (PyPI) | grpcio | >= 1.53.0, < 1.53.1, >= 1.54.0, < 1.54.2 | 1.53.1, 1.54.2 |
References
- https://nvd.nist.gov/vuln/detail/CVE-2023-32731
- https://github.com/grpc/grpc/issues/33463
- https://github.com/grpc/grpc/pull/32309
- https://github.com/grpc/grpc/pull/33005
- https://github.com/grpc/grpc/commit/29d8beee0ac2555773b2a2dda5601c74a95d6c10
- https://github.com/grpc/grpc/commit/65a2a895afaf1d2072447b9baf246374b182a946
- https://github.com/grpc/grpc/releases/tag/v1.53.1
- https://github.com/grpc/grpc/releases/tag/v1.54.2
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/grpc/CVE-2023-32731.yml
- https://pypi.org/project/grpcio
- https://github.com/advisories/GHSA-cfgp-2977-2fmm
- CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H- Weakness (CWE)
CWE-440- Platform
- Java / Kotlin (Maven), Python (PyPI)
- Package
io.grpc:grpc-protobuf, grpcio- Disclosed
- 05.07.2023
- Updated
- 11.10.2026 13:20
Sources and licenses
OSV / GitHub Advisory Database - PYSEC-2026-1427 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - GHSA-cfgp-2977-2fmm - CC BY 4.0
Vulnerability history: io.grpc:grpc-protobuf
All published vulnerabilities of this package (Java / Kotlin (Maven)), newest first. Shows whether this is a one-off slip or a package that needs watching.
- Total entries
- 3
- First → latest
- 07.2023 07.2023
- Without a fix
- 0
- Exploited in attacks
- 0
Severity breakdown
- High 2
- Medium 1
Disclosures per year
- 2023: 3
- 2024: 0
- 2025: 0
- 2026: 0
-
Connection confusion in gRPC this entry
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.