Description
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
Published: 2026-07-13
Score: 8.7 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

An authenticated low‑privileged user can send a crafted request to the /system/buckets/api endpoint with a bucket name containing '..' or '../'. The api() method in modules/System/Controller/Buckets.php sanitizes the bucket value only by stripping non‑alphanumeric characters, so the traversal sequences survive. These are then interpolated into{bucket}. Flysystem’s WhitespacePathNormalizer interprets 'buckets/..' as the root uploads folder, effectively allowing the attacker to list, upload, or delete files in any bucket, including those belonging to other users or roles. This capability to read or modify arbitrary files compromises confidentiality, integrity, and potentially availability of user data.

Affected Systems

The affected product is Cockpit HQ’s Cockpit CMS. Versions containing the vulnerable code include any releases that have not yet incorporated the commit dde2d1d74f5f4e11de42a298918ea8c9684f932c, which applies a stricter validation on the bucket name. No specific major or minor version numbers are listed, so all current releases prior to this fix are considered at risk.

Risk and Exploitability

The CVSS score of 8.7 indicates a high‑severity flaw. An EPSS score of <1% indicates a very low likelihood of exploitation in the wild. The lack of a KEV listing suggests no confirmed public exploits yet. Nonetheless, the attack requires only an authenticated low‑privileged account and a crafted REST call, who can elevate privileges through other compromise data across buckets. Because the vulnerability grants read/write/delete capabilities, the impact spans confidentiality, integrity, and availability for affected users.

Generated by OpenCVE AI on July 31, 2026 at 11:05 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Cockpit CMS to a version that includes the fix identified in commit dde2d1d74f5f4e11de42a298918ea8c9684f932c or later.
  • If an upgrade is not immediatelyuckets/api endpoint to administrator roles or disable the bucket file storage feature for low‑privileged users via configuration settings.
  • Deploy a web‑application firewall rule that blocks requests to the Bucket file storage API containing '..' or '../' sequences in the bucket name parameter.

Generated by OpenCVE AI on July 31, 2026 at 11:05 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 14 Jul 2026 21:45:00 +0000

Type Values Removed Values Added
First Time appeared Agentejo
Agentejo cockpit
CPEs cpe:2.3:a:agentejo:cockpit:*:*:*:*:*:*:*:*
Vendors & Products Agentejo
Agentejo cockpit

Tue, 14 Jul 2026 13:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Mon, 13 Jul 2026 23:00:00 +0000

Type Values Removed Values Added
Description 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
Title Cockpit CMS Path Traversal via Bucket Name in Bucket File Storage API
Weaknesses CWE-22
References
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 8.7, 'vector': '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'}


Subscriptions

Agentejo Cockpit
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-07-14T21:34:35.949Z

Reserved: 2026-06-25T18:48:00.282Z

Link: CVE-2026-57856

cve-icon Vulnrichment

Updated: 2026-07-14T12:58:27.762Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-31T11:15:05Z

Weaknesses
  • CWE-22

    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')