{"id":"CVE-2022-29228","aliases":["BIT-envoy-2022-29228","EUVD-2022-33590","GHSA-rww6-8h7g-8jf6","RHSA-2022:5004"],"status":"published","title":"Reachable assertion in Envoy","description":"Envoy is a cloud-native high-performance proxy. In versions prior to 1.22.1 the OAuth filter would try to invoke the remaining filters in the chain after emitting a local response, which triggers an ASSERT() in newer versions and corrupts memory on earlier versions. continueDecoding() shouldn’t ever be called from filters after a local reply has been sent. Users are advised to upgrade. There are no known workarounds for this issue.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.01284,"percentile":0.70314,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-416","CWE-617"],"published":"2022-06-09T19:20:13Z","modified":"2026-10-28T10:28:03Z","fixes":[{"ecosystem":"Bitnami","package":"envoy","fixed_in":["1.22.1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Bitnami","package":"envoy","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.22.1"}]}]},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.1.3-1.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh-cni","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.1.3-1.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh-operator","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.1.3-2.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh-pilot-agent","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.1.3-1.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh-pilot-discovery","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.1.3-1.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh-prometheus","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.23.0-7.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh-proxy","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.1.3-1.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh-proxy-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.1.3-1.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh-proxy-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.1.3-1.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh-proxy-wasm","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.1.3-1.el8"}]}],"bundled":8},{"source":"osv","ecosystem":"Red Hat:service_mesh:2.1::el8","package":"servicemesh-ratelimit","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.1.3-1.el8"}]}],"bundled":8}],"products":[{"vendor":"envoyproxy","product":"envoy"}],"references":[{"url":"https://github.com/envoyproxy/envoy/security/advisories/GHSA-rww6-8h7g-8jf6","tags":["x_refsource_CONFIRM","x_transferred","Third Party Advisory","advisory","article"]},{"url":"https://github.com/envoyproxy/envoy/commit/7ffda4e809dec74449ebc330cebb9d2f4ab61360","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","advisory","fix"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-29228","tags":["web","advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/29xxx/CVE-2022-29228.json","tags":["advisory"]},{"url":"https://access.redhat.com/errata/RHSA-2022:5004","tags":["advisory"]},{"url":"https://access.redhat.com/security/updates/classification/#critical","tags":["article"]},{"url":"https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html","tags":["article"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2053429","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2053532","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2053541","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2088737","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2088738","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2088739","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2088740","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2088819","tags":["report"]},{"url":"https://issues.redhat.com/browse/OSSM-1107","tags":["article"]},{"url":"https://issues.redhat.com/browse/OSSM-1614","tags":["article"]},{"url":"https://security.access.redhat.com/data/csaf/v2/advisories/2022/rhsa-2022_5004.json","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-23772","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-23772","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-23772","tags":["advisory"]},{"url":"https://groups.google.com/g/golang-announce/c/SUsQn0aSgPQ","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-23773","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-23773","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-23773","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-23806","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-23806","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-23806","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-29224","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-29224","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-29224","tags":["advisory"]},{"url":"https://github.com/envoyproxy/envoy/security/advisories/GHSA-m4j9-86g3-8f49","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-29225","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-29225","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-29225","tags":["advisory"]},{"url":"https://github.com/envoyproxy/envoy/security/advisories/GHSA-75hv-2jjj-89hh","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-29226","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-29226","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-29226","tags":["advisory"]},{"url":"https://github.com/envoyproxy/envoy/security/advisories/GHSA-h45c-2f94-prxh","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-29228","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-29228","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-31045","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-31045","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-31045","tags":["advisory"]},{"url":"https://github.com/istio/istio/security/advisories/GHSA-xwx5-5c9g-x68x","tags":["article"]},{"url":"https://istio.io/latest/news/security/istio-security-2022-005/#cve-2022-31045","tags":["article"]}],"sources":{"cve":[{"id":"CVE-2022-29228","title":"Reachable assertion in Envoy","description":"Envoy is a cloud-native high-performance proxy. In versions prior to 1.22.1 the OAuth filter would try to invoke the remaining filters in the chain after emitting a local response, which triggers an ASSERT() in newer versions and corrupts memory on earlier versions. continueDecoding() shouldn’t ever be called from filters after a local reply has been sent. Users are advised to upgrade. There are no known workarounds for this issue.","status":"published","published":"2022-06-09T19:20:13Z","modified":"2025-04-23T18:17:53.066Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"cna"}],"cwes":["CWE-617"],"updated_at":"2026-11-02T14:34:35.945659Z"}],"euvd":[{"id":"EUVD-2022-33590","description":"Envoy is a cloud-native high-performance proxy. In versions prior to 1.22.1 the OAuth filter would try to invoke the remaining filters in the chain after emitting a local response, which triggers an ASSERT() in newer versions and corrupts memory on earlier versions. continueDecoding() shouldn’t ever be called from filters after a local reply has been sent. Users are advised to upgrade. There are no known workarounds for this issue.","status":"published","published":"2022-06-09T19:20:13Z","modified":"2025-04-23T18:17:53Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T20:52:08.95736Z"}],"nvd":[{"id":"CVE-2022-29228","description":"Envoy is a cloud-native high-performance proxy. In versions prior to 1.22.1 the OAuth filter would try to invoke the remaining filters in the chain after emitting a local response, which triggers an ASSERT() in newer versions and corrupts memory on earlier versions. continueDecoding() shouldn’t ever be called from filters after a local reply has been sent. Users are advised to upgrade. There are no known workarounds for this issue.","status":"published","published":"2022-06-09T20:15:08.197Z","modified":"2026-06-17T04:39:52.553Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"secondary"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:N/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-617","CWE-416"],"updated_at":"2026-11-02T14:07:21.62951Z"}],"osv":[{"id":"CVE-2022-29228","title":"Reachable assertion in Envoy","description":"Envoy is a cloud-native high-performance proxy. In versions prior to 1.22.1 the OAuth filter would try to invoke the remaining filters in the chain after emitting a local response, which triggers an ASSERT() in newer versions and corrupts memory on earlier versions. continueDecoding() shouldn’t ever be called from filters after a local reply has been sent. Users are advised to upgrade. There are no known workarounds for this issue.","status":"published","published":"2022-06-09T19:20:13Z","modified":"2026-10-28T10:28:03.634281756Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-617"],"updated_at":"2026-11-02T15:44:25.164673Z"},{"id":"RHSA-2022:5004","title":"Red Hat Security Advisory: Red Hat OpenShift Service Mesh 2.1.3 security update","status":"published","published":"2024-09-30T14:22:28Z","modified":"2026-10-16T10:01:31Z","cvss":[{"version":"3.1","score":10,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N","level":"critical"}],"updated_at":"2026-11-02T15:53:09.62945Z"},{"id":"BIT-envoy-2022-29228","title":"Reachable assertion in Envoy","description":"Envoy is a cloud-native high-performance proxy. In versions prior to 1.22.1 the OAuth filter would try to invoke the remaining filters in the chain after emitting a local response, which triggers an ASSERT() in newer versions and corrupts memory on earlier versions. continueDecoding() shouldn’t ever be called from filters after a local reply has been sent. Users are advised to upgrade. There are no known workarounds for this issue.","status":"published","published":"2024-03-06T10:54:44.974Z","modified":"2026-09-08T08:47:22.467593025Z","updated_at":"2026-11-02T15:28:29.563843Z"}]}}
