{"schema_version":"1.7.3","id":"GHSA-cfgp-2977-2fmm","published":"2023-07-05T19:12:51Z","modified":"2026-07-07T17:56:17.486573263Z","aliases":["CVE-2023-32731","PYSEC-2026-1427"],"related":["CGA-w63x-w6j8-rw9j"],"summary":"Connection confusion in gRPC","details":"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":[{"package":{"name":"io.grpc:grpc-protobuf","ecosystem":"Maven","purl":"pkg:maven/io.grpc/grpc-protobuf"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.53.0"},{"fixed":"1.53.1"}]}],"versions":["1.53.0"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/07/GHSA-cfgp-2977-2fmm/GHSA-cfgp-2977-2fmm.json"}},{"package":{"name":"grpcio","ecosystem":"PyPI","purl":"pkg:pypi/grpcio"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.53.0"},{"fixed":"1.53.1"}]}],"versions":["1.53.0"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/07/GHSA-cfgp-2977-2fmm/GHSA-cfgp-2977-2fmm.json"}},{"package":{"name":"grpc","ecosystem":"RubyGems","purl":"pkg:gem/grpc"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.53.0"},{"fixed":"1.53.1"}]}],"versions":["1.53.0"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/07/GHSA-cfgp-2977-2fmm/GHSA-cfgp-2977-2fmm.json"}},{"package":{"name":"grpcio","ecosystem":"PyPI","purl":"pkg:pypi/grpcio"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.54.0"},{"fixed":"1.54.2"}]}],"versions":["1.54.0"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/07/GHSA-cfgp-2977-2fmm/GHSA-cfgp-2977-2fmm.json"}},{"package":{"name":"grpc","ecosystem":"RubyGems","purl":"pkg:gem/grpc"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.54.0"},{"fixed":"1.54.2"}]}],"versions":["1.54.0"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/07/GHSA-cfgp-2977-2fmm/GHSA-cfgp-2977-2fmm.json"}},{"package":{"name":"io.grpc:grpc-protobuf","ecosystem":"Maven","purl":"pkg:maven/io.grpc/grpc-protobuf"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.54.0"},{"fixed":"1.54.2"}]}],"versions":["1.54.0","1.54.1"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/07/GHSA-cfgp-2977-2fmm/GHSA-cfgp-2977-2fmm.json"}}],"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2023-32731"},{"type":"WEB","url":"https://github.com/grpc/grpc/issues/33463"},{"type":"WEB","url":"https://github.com/grpc/grpc/pull/32309"},{"type":"WEB","url":"https://github.com/grpc/grpc/pull/33005"},{"type":"WEB","url":"https://github.com/grpc/grpc/commit/29d8beee0ac2555773b2a2dda5601c74a95d6c10"},{"type":"WEB","url":"https://github.com/grpc/grpc/commit/65a2a895afaf1d2072447b9baf246374b182a946"},{"type":"WEB","url":"https://github.com/grpc/grpc/releases/tag/v1.53.1"},{"type":"WEB","url":"https://github.com/grpc/grpc/releases/tag/v1.54.2"},{"type":"WEB","url":"https://github.com/rubysec/ruby-advisory-db/blob/master/gems/grpc/CVE-2023-32731.yml"}],"database_specific":{"cwe_ids":["CWE-440"],"github_reviewed":true,"github_reviewed_at":"2023-07-05T20:26:48Z","nvd_published_at":"2023-06-09T11:15:09Z","severity":"HIGH"},"severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H"}]}