{"id":"CVE-2026-57856","summary":"Cockpit CMS Path Traversal via Bucket Name in Bucket File Storage API","details":"Cockpit CMS contains a path traversal vulnerability in the Bucket file storage API (/system/buckets/api). The api() method in modules/System/Controller/Buckets.php sanitizes the bucket name with preg_replace('/[^a-zA-Z0-9-_\\\\.]/','', $bucket), which permits '..' and '../' sequences. The sanitized value is interpolated into a Flysystem path as uploads://buckets/{bucket}. Flysystem's WhitespacePathNormalizer resolves 'buckets/..' to the empty string (the uploads storage root) without raising PathTraversalDetected because the '..' has a preceding component to consume. An authenticated low-privileged user can send a crafted request with a '../' bucket name to list, upload, and delete files across all buckets, including those belonging to other users or roles","modified":"2026-07-16T03:47:52.422392999Z","published":"2026-07-13T22:41:23.183Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/57xxx/CVE-2026-57856.json","cna_assigner":"VulnCheck","cwe_ids":["CWE-22"]},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/57xxx/CVE-2026-57856.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-57856"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/cockpit-cms-missing-authorization-in-bucket-file-storage-api"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/cockpit-cms-path-traversal-via-bucket-name-in-bucket-file-storage-api"},{"type":"FIX","url":"https://github.com/Cockpit-HQ/Cockpit/commit/dde2d1d74f5f4e11de42a298918ea8c9684f932c"},{"type":"PACKAGE","url":"https://github.com/cockpit-hq/cockpit"},{"type":"ARTICLE","url":"https://gist.github.com/sermikr0/821c4edd3c34e98a62a50b07707785bd"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/cockpit-hq/cockpit","events":[{"introduced":"0"},{"fixed":"dde2d1d74f5f4e11de42a298918ea8c9684f932c"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"2.14.0"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["2.13.5","2.13.4","2.13.3","2.13.2","2.13.1","2.13.0","2.12.1","2.12.0","2.11.4","2.11.3","2.11.2","2.11.1","2.11.0","2.10.3","2.10.2","2.10.1","2.10.0","2.9.4","2.9.3","2.9.2","2.9.1","2.9.0","2.8.6","2.8.5","2.8.4","2.8.3","2.8.2","2.8.1","2.8.0","2.7.2","2.7.1","2.7.0","2.6.3","2.6.2","2.6.1","2.6.0","2.5.2","2.5.1","2.5.0","2.4.1","2.4.0","2.3.9","2.3.8","2.3.7","2.3.6","2.3.5","2.3.4","2.3.3","2.3.2","2.3.1","2.3.0","2.2.2","2.2.1","2.2.0","2.1.2","2.1.1","2.1.0","2.0.2","2.0.1","2.0.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-57856.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N"}]}