CVE-2023-27487 Envoy client may fake the header `x-envoy-original-path`
Attackers can bypass JWT authentication checks by forging the x-envoy-original-path header in Envoy proxy requests.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2023-27487?
CVE-2023-27487 is a high-severity vulnerability in Envoyproxy Envoy, published on 4 Apr 2023. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Envoy is an open source edge and service proxy designed for cloud-native applications. Prior to versions 1.26.0, 1.25.3, 1.24.4, 1.23.6, and 1.22.9, the client may bypass JSON Web Token (JWT) checks and forge fake original paths. The header `x-envoy-original-path` should be an internal header, but Envoy does not remove this header from the request at the beginning of request processing when it is sent from an untrusted client. The faked header would then be used for trace logs and grpc logs, as well as used in the URL used for `jwt_authn` checks if the `jwt_authn` filter is used, and any other upstream use of the x-envoy-original-path header. Attackers may forge a trusted `x-envoy-original-path` header. Versions 1.26.0, 1.25.3, 1.24.4, 1.23.6, and 1.22.9 have patches for this issue.
Weakness: CWE-20
Which versions are affected by CVE-2023-27487?
1 open source package ship an affected version, including envoy. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
envoy Bitnami | All versions | 1.22.9, 1.23.6, 1.24.4, 1.25.3 |
Products include Envoyproxy Envoy.
How do I fix CVE-2023-27487?
Upgrade envoy to a fixed version for your release line: 1.22.9, 1.23.6, 1.24.4 or 1.25.3.
Is CVE-2023-27487 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2023-27487 exists.
Other vulnerabilities in Envoyproxy Envoy
Sources
Also known as BIT-envoy-2023-27487, GHSA-5375-pq35-hf2g.