Skip to main content

Cockpit CMS CVE-2026-57856

HIGH
Path Traversal (CWE-22)
2026-07-13 VulnCheck
8.7
CVSS 4.0 · Vendor: VulnCheck
Share

Severity by source

Vendor (VulnCheck) PRIMARY
8.7 HIGH
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/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
vuln.today AI
8.8 HIGH

Network API reachable with low-complexity '../' payload; requires an authenticated low-privileged account (PR:L); traversal enables cross-bucket read, write, and delete so C/I/A all High; scope unchanged within the app's own storage.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
X

Lifecycle Timeline

3
Source Code Evidence Fetched
Jul 13, 2026 - 23:15 vuln.today
Analysis Generated
Jul 13, 2026 - 23:15 vuln.today
CVE Published
Jul 13, 2026 - 22:41 cve.org
HIGH 8.7

DescriptionCVE.org

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

AnalysisAI

Path-traversal privilege escalation in Cockpit CMS Bucket file storage API (before 2.14.0) lets an authenticated low-privileged user bypass per-bucket isolation by supplying a '../' bucket name, granting cross-bucket read, upload, and delete over all files regardless of owner or role. The flaw stems from an incomplete sanitization regex that strips dangerous characters but preserves dot sequences, which Flysystem then normalizes down to the storage root. No public exploit is identified at time of analysis, though a proof-of-concept gist is referenced; the issue was reported by VulnCheck and a vendor patch is available.

Technical ContextAI

The vulnerability lives in the api() method of modules/System/Controller/Buckets.php. Bucket names are sanitized with preg_replace('/[^a-zA-Z0-9-_\.]/','', $bucket), a denylist that explicitly permits the dot character, so '..' and '../' survive sanitization. The value is interpolated into a Flysystem virtual path 'uploads://buckets/{bucket}'. Because Flysystem's WhitespacePathNormalizer only raises PathTraversalDetected when a '..' has no preceding path component to consume, 'buckets/..' collapses to the empty string - the uploads storage root - silently. This is a textbook CWE-22 (Improper Limitation of a Pathname to a Restricted Directory) where a broken input filter combines with a normalization edge case. Affected product per CPE is cpe:2.3:a:cockpit_hq:cockpit_cms across all versions prior to the fix; Cockpit CMS is a PHP-based headless/API-first content management system.

RemediationAI

Vendor-released patch: upgrade to Cockpit CMS 2.14.0 or later (fix commit dde2d1d74f5f4e11de42a298918ea8c9684f932c, released 2026-03-30). If immediate upgrade is not possible, apply the upstream fix by correcting bucket-name validation in modules/System/Controller/Buckets.php so dot sequences are rejected - replace the permissive preg_replace denylist with an allowlist that forbids '.' or explicitly blocks '..' before the value reaches the Flysystem path. As a compensating control, restrict access to the /system/buckets/api endpoint at the reverse proxy or application ACL layer to trusted administrators only, and audit/tighten account provisioning so low-privileged or self-registered users cannot reach the Bucket API (trade-off: may break legitimate bucket workflows for non-admin roles). Review upload storage for unauthorized file changes or deletions predating the patch. Reference the VulnCheck advisory (https://www.vulncheck.com/advisories/cockpit-cms-path-traversal-via-bucket-name-in-bucket-file-storage-api).

More in PHP

View all
CVE-2019-11043 CRITICAL POC
9.8 Oct 28

In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it

CVE-2012-1823 CRITICAL POC
9.8 May 11

sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not

CVE-2016-1555 CRITICAL POC
9.8 Apr 21

(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear

CVE-2018-11138 CRITICAL POC
9.8 May 31

The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by

CVE-2024-11680 CRITICAL POC
9.8 Nov 26

ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C

CVE-2025-49113 CRITICAL POC
9.9 Jun 02

Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au

CVE-2017-9841 CRITICAL POC
9.8 Jun 27

Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c

CVE-2025-0108 HIGH POC
8.8 Feb 12

Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers

CVE-2021-25298 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2021-25296 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2013-4983 CRITICAL POC
10.0 Sep 10

The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

Share

CVE-2026-57856 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy