{"id":"CVE-2026-97149","title":"In OpenStack Swift before 2.38.2, the tempurl middleware does not reject the X-Copy-From header on PUT requests","summary":"In OpenStack Swift before 2.38.2, the tempurl middleware does not reject the X-Copy-From header on PUT requests. A TempURL signature only covers the method, expiry, and path, and thus the list of disallowed headers is the only defense ag…","severity":"medium","cvss":5.3,"cvssVector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N","cwe":["CWE-184","CWE-358"],"vendor":"OpenStack","product":"Swift","affected":["Swift >= 2.4.0 < 2.35.5","Swift >= 2.36.0 < 2.36.4","Swift >= 2.37.0 < 2.37.4","Swift >= 2.38.0 < 2.38.2"],"published":"2026-09-24","updated":"2026-10-06","sourceUpdated":"2026-10-06T18:16:59.117","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-97149","references":[{"url":"https://launchpad.net/bugs/2166876","label":"cve@mitre.org"},{"url":"http://www.openwall.com/lists/oss-security/2026/09/24/5","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-97149.json"},{"url":"https://access.redhat.com/security/cve/CVE-2026-97149"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2539886"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-97149"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-97149"},{"url":"https://security.openstack.org/ossa/OSSA-2026-041.html"}],"tags":["nvd","cve.org","csaf","vex","red-hat"],"epss":0.00248,"epssPercentile":0.15997,"ssvc":{"exploitation":"none","automatable":"no","technicalImpact":"partial","timestamp":"2026-10-06T15:53:29.868605Z"},"cvssSource":"cna","scores":{"cna":5.3,"vendor":6.5},"ingestedAt":"2026-09-24T02:36:46.281Z","slug":"CVE-2026-97149","body":"## Overview\n\nIn OpenStack Swift before 2.38.2, the tempurl middleware does not reject the X-Copy-From header on PUT requests. A TempURL signature only covers the method, expiry, and path, and thus the list of disallowed headers is the only defense against a signed PUT request changing what the request does. An attacker holding a PUT TempURL for a single object can add an X-Copy-From header naming any object in the same account; the copy middleware copies that object to the destination, and the attacker then reads the victim's data back with a GET TempURL for the destination object. Copies across account boundaries are rejected. Only deployments using the shipped default proxy pipeline (tempurl and copy middleware) with account-level TempURL keys are affected.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.\n\n## Vendor advisories\n\n- **Red Hat VEX** · Moderate · affected: Red Hat OpenStack Platform 13 (Queens), Red Hat OpenStack Platform 16.2, Red Hat OpenStack Platform 17.1, Red Hat OpenStack Platform 18.0 · no fix planned: Red Hat OpenStack Platform 13 (Queens), Red Hat OpenStack Platform 16.2, Red Hat OpenStack Platform 17.1, Red Hat OpenStack Platform 18.0 · updated 2026-09-29 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-97149.json)","depth":"sunlit","depthScore":29,"depthScoreParts":{"impact":29.2,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}