{"id":"CVE-2026-94572","aliases":["DEBIAN-CVE-2026-94572","EUVD-2026-84118","GHSA-xwpf-r3rp-gx2r","UBUNTU-CVE-2026-94572","USN-8814-1"],"status":"published","title":"In OpenStack Octavia before 18.0.1, the Amphora provider driver did not validate the listener and...","description":"In OpenStack Octavia before 18.0.1, the Amphora provider driver did not validate the listener and pool tls_ciphers field for control characters. The value is written verbatim into the HAProxy configuration generated on the amphora, and thus an authenticated project member who owns a TLS-enabled load balancer can embed a newline and inject arbitrary HAProxy configuration directives. Only deployments using the Amphora provider are affected.","severity":{"version":"4.0","score":9.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H","level":"critical","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.00534,"percentile":0.45376,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-94"],"published":"2026-09-21T20:13:35Z","modified":"2026-10-28T02:30:51Z","fixes":[{"ecosystem":"Debian:14","package":"octavia","fixed_in":["18.0.0-4"],"sources":["osv"]},{"ecosystem":"Ubuntu:22.04:LTS","package":"octavia","fixed_in":["1:10.1.1-0ubuntu1.5"],"sources":["osv"]},{"ecosystem":"Ubuntu:24.04:LTS","package":"octavia","fixed_in":["1:14.0.0-0ubuntu1.6"],"sources":["osv"]},{"ecosystem":"Ubuntu:26.04:LTS","package":"octavia","fixed_in":["1:18.0.0-0ubuntu2.1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"octavia","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["11.0.0-2","12.0.0-1","12.0.0-2","12.0.0-3","12.0.0-4","12.0.0~rc1-1","12.0.0~rc2-1","13.0.0-1","13.0.0-2","13.0.0~rc1-1","14.0.0-1","14.0.0-2","14.0.0-3","14.0.0-4","14.0.0~rc1-1","15.0.0-1","15.0.0-2","15.0.0-3","15.0.0~rc1-1","15.0.0~rc1-2","15.0.0~rc1-3","16.0.0-1","16.0.0-2","16.0.0-3","16.0.0~rc1-1","16.0.0~rc1-2","17.0.0-1","17.0.0-2","17.0.0-3","17.0.0-4","17.0.0-5","17.0.0~rc1-1","17.0.0~rc2-1","17.0.0~rc2-2","17.0.0~rc2-3","18.0.0-1","18.0.0-2","18.0.0-3","18.0.0-4","18.0.0~rc1-1","18.0.0~rc1-2","19.0.0~rc1-1","19.0.0~rc1-2"]},{"source":"osv","ecosystem":"Debian:13","package":"octavia","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["16.0.0-2","16.0.0-3","17.0.0-1","17.0.0-2","17.0.0-3","17.0.0-4","17.0.0-5","17.0.0~rc1-1","17.0.0~rc2-1","17.0.0~rc2-2","17.0.0~rc2-3","18.0.0-1","18.0.0-2","18.0.0-3","18.0.0-4","18.0.0~rc1-1","18.0.0~rc1-2","19.0.0~rc1-1","19.0.0~rc1-2"]},{"source":"osv","ecosystem":"Debian:14","package":"octavia","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"18.0.0-4"}]}],"versions":["16.0.0-2","16.0.0-3","17.0.0-1","17.0.0-2","17.0.0-3","17.0.0-4","17.0.0-5","17.0.0~rc1-1","17.0.0~rc2-1","17.0.0~rc2-2","17.0.0~rc2-3","18.0.0-1","18.0.0-2","18.0.0-3","18.0.0~rc1-1","18.0.0~rc1-2"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"octavia","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["5.0.0-0ubuntu1","6.0.0~b1~git2019121614.45cb1e4e-0ubuntu1","6.0.0~b2~git2020020614.005cd1e6-0ubuntu1","6.0.0~b2~git2020020614.005cd1e6-0ubuntu2","6.0.0~b3~git2020032609.73fca169-0ubuntu1","6.0.0~b3~git2020041014.771a5d87-0ubuntu1","6.0.0-0ubuntu0.20.04.1","6.0.0-0ubuntu0.20.04.2","6.1.0-0ubuntu1","6.2.0-0ubuntu1","6.2.1-0ubuntu1","6.2.1-0ubuntu2","6.2.2-0ubuntu1","6.2.2-0ubuntu1.1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"octavia","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:10.1.1-0ubuntu1.5"}]}],"versions":["1:9.0.0-0ubuntu1","1:9.0.0+git2021120816.ab3c3ef7-0ubuntu1","1:9.0.1+git2022011217.27e5b27d-0ubuntu1","1:9.0.1+git2022030314.328ffbab-0ubuntu1","1:10.0.0-0ubuntu1","1:10.1.0-0ubuntu1","1:10.1.1-0ubuntu1","1:10.1.1-0ubuntu1.1","1:10.1.1-0ubuntu1.2","1:10.1.1-0ubuntu1.3","1:10.1.1-0ubuntu1.4"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"octavia","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:14.0.0-0ubuntu1.6"}]}],"versions":["1:13.0.0-0ubuntu1","1:13.0.0+git2024011917.5750e451-0ubuntu1","1:14.0.0~rc1-0ubuntu1","1:14.0.0-0ubuntu1","1:14.0.0-0ubuntu1.1","1:14.0.0-0ubuntu1.2","1:14.0.0-0ubuntu1.3","1:14.0.0-0ubuntu1.4","1:14.0.0-0ubuntu1.5"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"octavia","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:18.0.0-0ubuntu2.1"}]}],"versions":["1:17.0.0-0ubuntu1","1:17.0.0+git20260116.e805a93-0ubuntu1","1:18.0.0~rc1-0ubuntu2","1:18.0.0-0ubuntu1","1:18.0.0-0ubuntu2"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"octavia","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:10.1.1-0ubuntu1.5"}]}],"versions":["1:9.0.0-0ubuntu1","1:9.0.0+git2021120816.ab3c3ef7-0ubuntu1","1:9.0.1+git2022011217.27e5b27d-0ubuntu1","1:9.0.1+git2022030314.328ffbab-0ubuntu1","1:10.0.0-0ubuntu1","1:10.1.0-0ubuntu1","1:10.1.1-0ubuntu1","1:10.1.1-0ubuntu1.1","1:10.1.1-0ubuntu1.2","1:10.1.1-0ubuntu1.3","1:10.1.1-0ubuntu1.4"],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"octavia","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:14.0.0-0ubuntu1.6"}]}],"versions":["1:13.0.0-0ubuntu1","1:13.0.0+git2024011917.5750e451-0ubuntu1","1:14.0.0~rc1-0ubuntu1","1:14.0.0-0ubuntu1","1:14.0.0-0ubuntu1.1","1:14.0.0-0ubuntu1.2","1:14.0.0-0ubuntu1.3","1:14.0.0-0ubuntu1.4","1:14.0.0-0ubuntu1.5"],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"octavia","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:18.0.0-0ubuntu2.1"}]}],"versions":["1:17.0.0-0ubuntu1","1:17.0.0+git20260116.e805a93-0ubuntu1","1:18.0.0~rc1-0ubuntu2","1:18.0.0-0ubuntu1","1:18.0.0-0ubuntu2"],"bundled":3}],"products":[{"vendor":"openstack","product":"octavia"}],"references":[{"url":"https://bugs.launchpad.net/octavia/+bug/2162101","tags":["issue-tracking","exploit","report"]},{"url":"https://bugs.launchpad.net/octavia/+bug/2167565","tags":["issue-tracking","report"]},{"url":"https://bugs.debian.org/1148175","tags":["issue-tracking","report"]},{"url":"https://opendev.org/openstack/octavia/commit/cad62902e4984a46ad80cbfa943e90006d8d599d","tags":["patch","fix","report"]},{"url":"https://security.openstack.org/ossa/OSSA-2026-039.html","tags":["vendor-advisory","advisory","report"]},{"url":"https://openwall.com/lists/oss-security/2026/09/21/6","tags":["mailing-list","article","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-94572","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-xwpf-r3rp-gx2r"},{"url":"https://opendev.org/openstack/octavia","tags":["web"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/94xxx/CVE-2026-94572.json","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-94572","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-94572","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-94572","tags":["report"]},{"url":"https://ubuntu.com/security/notices/USN-8814-1","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-74248","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2026-94571","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-94572","description":"In OpenStack Octavia before 18.0.1, the Amphora provider driver did not validate the listener and pool tls_ciphers field for control characters. The value is written verbatim into the HAProxy configuration generated on the amphora, and thus an authenticated project member who owns a TLS-enabled load balancer can embed a newline and inject arbitrary HAProxy configuration directives. Only deployments using the Amphora provider are affected.","status":"published","published":"2026-09-21T20:13:35.557Z","modified":"2026-09-24T22:41:15.736Z","cvss":[{"version":"4.0","score":9.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H","level":"critical","assessor":"cna"}],"cwes":["CWE-94"],"updated_at":"2026-11-02T14:19:53.786088Z"}],"euvd":[{"id":"EUVD-2026-84118","description":"In OpenStack Octavia before 18.0.1, the Amphora provider driver did not validate the listener and pool tls_ciphers field for control characters. The value is written verbatim into the HAProxy configuration generated on the amphora, and thus an authenticated project member who owns a TLS-enabled load balancer can embed a newline and inject arbitrary HAProxy configuration directives. Only deployments using the Amphora provider are affected.","status":"published","published":"2026-09-21T20:13:35Z","modified":"2026-09-24T22:41:15Z","cvss":[{"version":"4.0","score":9.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H","level":"critical"}],"updated_at":"2026-11-02T17:27:55.846756Z"}],"ghsa":[{"id":"GHSA-xwpf-r3rp-gx2r","title":"In OpenStack Octavia before 18.0.1, the Amphora provider driver did not validate the listener and...","description":"In OpenStack Octavia before 18.0.1, the Amphora provider driver did not validate the listener and pool tls_ciphers field for control characters. The value is written verbatim into the HAProxy configuration generated on the amphora, and thus an authenticated project member who owns a TLS-enabled load balancer can embed a newline and inject arbitrary HAProxy configuration directives. Only deployments using the Amphora provider are affected.","status":"published","published":"2026-09-21T21:31:57Z","modified":"2026-09-21T21:32:02Z","cvss":[{"version":"4.0","score":9.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"critical"}],"cwes":["CWE-94"],"updated_at":"2026-11-02T15:12:16.582397Z"}],"nvd":[{"id":"CVE-2026-94572","description":"In OpenStack Octavia before 18.0.1, the Amphora provider driver did not validate the listener and pool tls_ciphers field for control characters. The value is written verbatim into the HAProxy configuration generated on the amphora, and thus an authenticated project member who owns a TLS-enabled load balancer can embed a newline and inject arbitrary HAProxy configuration directives. Only deployments using the Amphora provider are affected.","status":"published","published":"2026-09-21T21:17:22.15Z","modified":"2026-09-24T23:19:22.677Z","cvss":[{"version":"4.0","score":9.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"critical","assessor":"secondary"}],"cwes":["CWE-94"],"updated_at":"2026-11-02T14:12:50.368368Z"}],"osv":[{"id":"CVE-2026-94572","description":"In OpenStack Octavia before 18.0.1, the Amphora provider driver did not validate the listener and pool tls_ciphers field for control characters. The value is written verbatim into the HAProxy configuration generated on the amphora, and thus an authenticated project member who owns a TLS-enabled load balancer can embed a newline and inject arbitrary HAProxy configuration directives. Only deployments using the Amphora provider are affected.","status":"published","published":"2026-09-21T20:13:35.557Z","modified":"2026-10-28T02:30:51.882747788Z","cvss":[{"version":"4.0","score":9.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H","level":"critical"}],"cwes":["CWE-94"],"updated_at":"2026-11-02T15:45:20.931171Z"},{"id":"DEBIAN-CVE-2026-94572","description":"In OpenStack Octavia before 18.0.1, the Amphora provider driver did not validate the listener and pool tls_ciphers field for control characters. The value is written verbatim into the HAProxy configuration generated on the amphora, and thus an authenticated project member who owns a TLS-enabled load balancer can embed a newline and inject arbitrary HAProxy configuration directives. Only deployments using the Amphora provider are affected.","status":"published","published":"2026-09-21T21:17:22.15Z","modified":"2026-09-25T08:47:23.00238852Z","cvss":[{"version":"4.0","score":9.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"critical"}],"updated_at":"2026-11-02T15:46:07.324252Z"},{"id":"UBUNTU-CVE-2026-94572","description":"In OpenStack Octavia before 18.0.1, the Amphora provider driver did not validate the listener and pool tls_ciphers field for control characters. The value is written verbatim into the HAProxy configuration generated on the amphora, and thus an authenticated project member who owns a TLS-enabled load balancer can embed a newline and inject arbitrary HAProxy configuration directives. Only deployments using the Amphora provider are affected.","status":"published","published":"2026-09-21T21:17:00Z","modified":"2026-09-24T18:30:04.233163013Z","cvss":[{"version":"4.0","score":9.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H","level":"critical"}],"updated_at":"2026-11-02T16:57:44.071534Z"},{"id":"USN-8814-1","title":"octavia vulnerabilities","description":"It was discovered that Octavia did not properly validate TLS cipher\nstring fields in the Amphora provider driver. An authenticated\nattacker who owns a TLS-enabled load balancer could possibly use\nthis issue to inject arbitrary HAProxy configuration directives.\n(CVE-2026-94572)\n\nIt was discovered that Octavia did not properly validate L7 policy\nredirect URL fields in the Amphora provider driver. An authenticated\nattacker who owns a load balancer could possibly use this issue to\ninject arbitrary HAProxy configuration directives. (CVE-2026-94571)\n\nIt was discovered that Octavia incorrectly handled quality of service\npolicy authorization. An authenticated attacker could possibly use\nthis issue to prevent deletion of another project's QoS policy.\n(CVE-2026-74248)","status":"published","published":"2026-09-24T12:38:30Z","modified":"2026-09-25T00:43:09.032963047Z","updated_at":"2026-11-02T16:58:26.907654Z"}]}}
