CVE-2021-32777 json
Incorrect concatenation of multiple value request headers in ext-authz extension
published 2021-08-24 5 y ago modified 2026-09-08 2 mo ago also BIT-envoy-2021-32777 , EUVD-2021-19541 , GHSA-6g4j-5vrw-2m8h
- cvss
- 8.6
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 3.3%
- EPSS 3.3% chance of exploitation in 30 days, percentile 88%
- public exploits
- 0
- none known
Summary
Envoy is an open source L7 proxy and communication bus designed for large modern service oriented architectures. In affected versions when ext-authz extension is sending request headers to the external authorization service it must merge multiple value headers according to the HTTP spec. However, only the last header value is sent. This may allow specifically crafted requests to bypass authorization. Attackers may be able to escalate privileges when using ext-authz extension or back end service that uses multiple value headers for authorization. A specifically constructed request may be delivered by an untrusted downstream peer in the presence of ext-authz extension. Envoy versions 1.19.1, 1.18.4, 1.17.4, 1.16.5 contain fixes to the ext-authz extension to correctly merge multiple request header values, when sending request for authorization.
Patch / fix
- bitnami envoy 1.16.5, 1.17.4, 1.18.4, 1.19.1
- envoyproxy envoy 1.16.5, 1.17.4, 1.18.4
- servicemesh service mesh 1.1 1.1.17-3.el8
- servicemesh-mixc service mesh 1.1 1.1.17-3.el8
- servicemesh-mixs service mesh 1.1 1.1.17-3.el8
- servicemesh-proxy service mesh 1.1 1.1.17-2.el8
- servicemesh-galley service mesh 1.1 1.1.17-3.el8
- servicemesh-citadel service mesh 1.1 1.1.17-3.el8
- servicemesh-istioctl service mesh 1.1 1.1.17-3.el8
- servicemesh-pilot-agent service mesh 1.1 1.1.17-3.el8
red hat advisories RHSA-2021:3273RHSA-2021:3272
- istio Arch Linux 1.11.1-1
arch linux advisories AVG-2321
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2021-32777 updated cvss 8.3
envoyproxy/envoy: HTTP request with multiple value headers can bypass authorization policies
-
Red Hat OpenShift Service Mesh 1.1 servicemesh-proxy 1.1.17-2.el8fixed: vendor fix RHSA-2021:3273
-
Red Hat OpenShift Service Mesh 2.0 servicemesh-proxy 2.0.7-3.el8fixed: vendor fix RHSA-2021:3272
-
Red Hat OpenShift Service Mesh 1.1 servicemesh 1.1.17-3.el8, servicemesh-mixc 1.1.17-3.el8, servicemesh-mixs 1.1.17-3.el8, servicemesh-galley 1.1.17-3.el8, servicemesh-citadel 1.1.17-3.el8, servicemesh-istioctl 1.1.17-3.el8, +3 more Red Hat OpenShift Service Mesh 2.0 servicemesh 2.0.7-3.el8, servicemesh-mixc 2.0.7-3.el8, servicemesh-mixs 2.0.7-3.el8, servicemesh-istioctl 2.0.7-3.el8, servicemesh-pilot-agent 2.0.7-3.el8, servicemesh-pilot-discovery 2.0.7-3.el8not affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
3.33% chance of exploitation in the next 30 days, higher than 88% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.6 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N |
| NVD | 3.1 | 8.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L |
| NVD | 2.0 | 7.5 | AV:N/AC:L/Au:N/C:P/I:P/A:P |
| OSV | 3.1 | 8.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| bitnami | envoy | >=1.16.0, <1.16.5 >=1.17.0, <1.17.4 >=1.18.0, <1.18.4 >=1.19.0, <1.19.1 |
1.16.5 1.17.4 1.18.4 1.19.1 |
Affected products
- envoyproxy envoy
Classification
References
-
envoyproxy.io
/docs/envoy/v1.19.0/version_history/version_history
release-notes, vendor-advisory, advisory
-
github.com
/envoyproxy/envoy/security/advisories/GHSA-6g4j-5vrw-2m8h
third-party-advisory, advisory
-
nvd.nist.gov
/vuln/detail/CVE-2021-32777
web
Sources
- CVE List CVE-2021-32777
- NVD CVE-2021-32777
- OSV BIT-envoy-2021-32777
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.