Skip to content
OpenAdvisories
High · 7.1 CVE-2026-50284 EUVD-2026-41208GHSA-7h62-6v23-v8fm

Craft CMS: Missing peer-permission check in `AssetsController::actionDeleteFolder` allows deletion of other users' assets

Published Jul 1, 2026 · Updated Jul 2, 2026 · Assigned by GitHub_M

Description

Craft CMS is a content management system (CMS). In versions 5.0.0-RC1 through 5.9.21 and 4.0.0-RC1 through 4.17.14, theAssetsController::actionDeleteFolder() only requires the deleteAssets:<volume-uid> permission for the target folder. It never enforces deletePeerAssets:<volume-uid>, even though Assets::deleteFoldersByIds() cascades deletion to every descendant folder and every asset inside, regardless of the uploader's assigned privileges. A low-privilege user who has been granted folder-management rights on a shared volume can therefore destroy assets uploaded by other users (peer assets), bypassing the per-asset peer-permission check that the sibling actionDeleteAsset endpoint correctly applies. This issue has been fixed in versions 4.17.15 and 5.9.22.

Affected products

VendorProductAffectedFixed
craftcms cms =>= 5.0.0-RC1, < 5.9.22, >= 4.0.0-RC1, < 4.17.15 —

Affected packages

EcosystemPackageAffectedFixedRecord
Packagist craftcms/cms >= 5.0.0-RC1, < 5.9.22 5.9.22 GHSA-7h62-6v23-v8fm
Packagist craftcms/cms >= 4.0.0-RC1, < 4.17.15 4.17.15 GHSA-7h62-6v23-v8fm

References