Envoy client may fake the header `x-envoy-original-path`
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.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2023-27487
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 4 Nov 2026, 12:01 UTC · Revision 1
Source evidence
Envoy client may fake the header `x-envoy-original-path`
core-osv · Original sourcePublished 4 Apr 2023, 15:42 UTC
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.
osv:CVE-2023-27487
Complete source record
{
"id": "8eb0c2897cbe11855a65e1abc3438e9f0d1d6b76e732843c31d0abe72271e6b9",
"url": "https://osv.dev/vulnerability/CVE-2023-27487",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Envoy client may fake the header `x-envoy-original-path`",
"summary": "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.",
"evidence": "osv:CVE-2023-27487",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2023-27487",
"aliases": [
"BIT-envoy-2023-27487",
"CVE-2023-27487",
"GHSA-5375-pq35-hf2g"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/envoyproxy/envoy",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "6392d12242234948b15a0fecee629f9cf8b76cee"
},
{
"introduced": "ce49c7f65668a22b80d1e83c35d170741bb8d46a"
},
{
"fixed": "b2064ed660934383cece8c8d60393d5b0720ae4d"
},
{
"introduced": "15baf56003f33a07e0ab44f82f75a660040db438"
},
{
"fixed": "d3d04156c3b05f8b4532d44e602fdd1b430c64bb"
},
{
"introduced": "9184b84cd0dcb3a6c57eb44b177d91c70e1a0901"
},
{
"fixed": "e99d61c4596573fbea8b8a9def8b160e138a4018"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:envoyproxy:envoy:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "1.22.9"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:envoyproxy:envoy:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "1.23.0"
},
{
"fixed": "1.23.6"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:envoyproxy:envoy:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "1.24.0"
},
{
"fixed": "1.24.4"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:envoyproxy:envoy:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "1.25.0"
},
{
"fixed": "1.25.3"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"v1.25.2",
"v1.23.5",
"v1.24.3",
"v1.22.8",
"v1.24.2",
"v1.23.4",
"v1.25.1",
"v1.22.7",
"v1.25.0",
"v1.24.1",
"v1.22.6",
"v1.23.3",
"v1.23.2",
"v1.24.0",
"v1.23.1",
"v1.22.5",
"v1.22.4",
"v1.22.3",
"v1.23.0",
"v1.22.2",
"v1.22.0",
"v1.21.0",
"v1.20.0",
"v1.19.0",
"v1.18.2",
"v1.18.1",
"v1.18.0",
"v1.17.0",
"v1.16.0",
"v1.15.0",
"v1.14.0",
"v1.13.0",
"v1.12.0",
"v1.11.0",
"v1.10.0",
"v1.9.0",
"v1.8.0",
"v1.7.0",
"v1.6.0",
"v1.5.0",
"v1.4.0",
"v1.3.0",
"v1.2.0",
"v1.1.0",
"v1.0.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-27487.json"
}
}
],
"modified": "2026-10-28T02:30:34.915771297Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/27xxx/CVE-2023-27487.json",
"https://github.com/envoyproxy/envoy/security/advisories/GHSA-5375-pq35-hf2g",
"https://nvd.nist.gov/vuln/detail/CVE-2023-27487"
],
"provider_metadata": {
"cwe_ids": [
"CWE-20"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/27xxx/CVE-2023-27487.json"
}
},
"related_cves": [
{
"value": "CVE-2023-27487",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 502270,
"published_at": "2023-04-04T15:42:34.33+00:00"
}