CVE-2026-71191
Full vulnerability record from the local CVENow database.
Description
In OpenStack Swift through 2.38.0, S3API middleware does not enforce that semantic x-amz-* headers are covered by the SigV4 signature on presigned URL requests. An attacker who obtains a presigned PUT URL can inject an unsigned X-Amz-Copy-Source header, causing Swift to perform a server-side copy from an arbitrary source object using the signer's authorization context. The attacker can read any object the signer has access to, provided the target project_id, container name, and object name are known. This affects all deployments using the default s3_acl=false configuration.
Severity
MEDIUM
CVSS score
6.0
(v4.0)
Vulnerability status
Awaiting Analysis
Source identifier
Published
2026-08-05 06:16:40.180000
Last modified
2026-10-24 15:10:00.190000
View original CVE JSON
{
"id": "CVE-2026-71191",
"sourceIdentifier": "[email protected]",
"published": "2026-08-05T06:16:40.180",
"lastModified": "2026-10-24T15:10:00.190",
"vulnStatus": "Awaiting Analysis",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In OpenStack Swift through 2.38.0, S3API middleware does not enforce that semantic x-amz-* headers are covered by the SigV4 signature on presigned URL requests. An attacker who obtains a presigned PUT URL can inject an unsigned X-Amz-Copy-Source header, causing Swift to perform a server-side copy from an arbitrary source object using the signer's authorization context. The attacker can read any object the signer has access to, provided the target project_id, container name, and object name are known. This affects all deployments using the default s3_acl=false configuration."
},
{
"lang": "es",
"value": "En OpenStack Swift hasta la versión 2.38.0, el middleware S3API no garantiza que los encabezados semánticos x-amz-* estén cubiertos por la firma SigV4 en las solicitudes de URL pre-firmadas. Un atacante que obtiene una URL PUT pre-firmada puede inyectar un encabezado X-Amz-Copy-Source sin firmar, haciendo que Swift realice una copia del lado del servidor desde un objeto de origen arbitrario utilizando el contexto de autorización del firmante. El atacante puede leer cualquier objeto al que el firmante tiene acceso, siempre que se conozcan el project_id de destino, el nombre del contenedor y el nombre del objeto. Esto afecta a todas las implementaciones que utilizan la configuración predeterminada s3_acl=false."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "OpenStack",
"product": "Swift",
"defaultStatus": "unaffected",
"repo": "https://opendev.org/openstack/swift",
"versions": [
{
"version": "2.18.0",
"lessThan": "2.35.4",
"versionType": "semver",
"status": "affected"
},
{
"version": "2.36.0",
"lessThan": "2.36.3",
"versionType": "semver",
"status": "affected"
},
{
"version": "2.37.0",
"lessThan": "2.37.3",
"versionType": "semver",
"status": "affected"
},
{
"version": "2.38.0",
"versionType": "semver",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV40": [
{
"source": "[email protected]",
"type": "Secondary",
"cvssData": {
"version": "4.0",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/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",
"baseScore": 6.0,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"attackRequirements": "PRESENT",
"privilegesRequired": "LOW",
"userInteraction": "NONE",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "NONE",
"vulnAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"subAvailabilityImpact": "NONE",
"exploitMaturity": "NOT_DEFINED",
"confidentialityRequirement": "NOT_DEFINED",
"integrityRequirement": "NOT_DEFINED",
"availabilityRequirement": "NOT_DEFINED",
"modifiedAttackVector": "NOT_DEFINED",
"modifiedAttackComplexity": "NOT_DEFINED",
"modifiedAttackRequirements": "NOT_DEFINED",
"modifiedPrivilegesRequired": "NOT_DEFINED",
"modifiedUserInteraction": "NOT_DEFINED",
"modifiedVulnConfidentialityImpact": "NOT_DEFINED",
"modifiedVulnIntegrityImpact": "NOT_DEFINED",
"modifiedVulnAvailabilityImpact": "NOT_DEFINED",
"modifiedSubConfidentialityImpact": "NOT_DEFINED",
"modifiedSubIntegrityImpact": "NOT_DEFINED",
"modifiedSubAvailabilityImpact": "NOT_DEFINED",
"Safety": "NOT_DEFINED",
"Automatable": "NOT_DEFINED",
"Recovery": "NOT_DEFINED",
"valueDensity": "NOT_DEFINED",
"vulnerabilityResponseEffort": "NOT_DEFINED",
"providerUrgency": "NOT_DEFINED"
}
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-08-06T13:10:29.357812Z",
"id": "CVE-2026-71191",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-863"
}
]
}
],
"references": [
{
"url": "https://launchpad.net/bugs/2158733",
"source": "[email protected]"
},
{
"url": "https://openwall.com/lists/oss-security/2026/07/28/26",
"source": "[email protected]"
},
{
"url": "https://security.openstack.org/ossa/OSSA-2026-030.html",
"source": "[email protected]"
}
]
}