Read the docs
TI-2026-37026 Aliases CVE-2026-50283GHSA-qh45-9g5p-m2v4

Craft CMS: Unauthorized Deletion of Source Assets During File Replacement

Priority LOW 24CWE-639Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
Low
Attack requirements
None
Impact type
Security bypass
Confidentiality · integrity · availability
None · Low · Low
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-639.

Summary

Craft CMS is a content management system (CMS). Versions 5.0.0-RC1 through 5.9.20, and 4.0.0-RC1 through 4.17.13 contain an authorization issue in the AssetsController::actionReplaceFile that can delete a source asset without source delete permission by supplying both assetId and sourceAssetId. AssetsController::actionReplaceFile() supports replacing a target asset file using another existing asset as the source. The action loads: assetId -> $assetToReplace and sourceAssetId -> $sourceAsset, then enforces replace permissions using ($assetToReplace ?: $sourceAsset). When both IDs are provided, this expression resolves to the target asset so no permission check is performed against the source asset volume. When both assets are present, Craft copies the source file into the target and then deletes the source asset. There is no deletion check for for the source asset. An authenticated user who can replace files in one volume can delete assets in another volume where they do not have delete permission, as long as they can obtain a sourceAssetId, leading to broken content references and data loss. This issue has been fixed in versions 4.17.14 and 5.9.21.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00364 30th percentileScored 2026-11-07
Fix Fixed cms (craftcms): 5.9.21, 4.17.14craftcms/cms (Packagist): 5.9.21, 4.17.14

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
Craft CMScms5.0.0-RC1 to before 5.9.21; 4.0.0-RC1 to before 4.17.145.9.21, 4.17.14Patch availableCNA
—craftcms/cms (Packagist)5.0.0-RC1 to before 5.9.215.9.21Patch availableGHSA-qh45-9g5p-m2v4
—craftcms/cms (Packagist)4.0.0-RC1 to before 4.17.144.17.14Patch availableGHSA-qh45-9g5p-m2v4
  • cms VendorCraft CMS Affected 5.0.0-RC1 to before 5.9.21; 4.0.0-RC1 to before 4.17.14 Fixed in 5.9.21, 4.17.14 Patch available CNA
  • craftcms/cms (Packagist) Vendor— Affected 5.0.0-RC1 to before 5.9.21 Fixed in 5.9.21 Patch available GHSA-qh45-9g5p-m2v4
  • craftcms/cms (Packagist) Vendor— Affected 4.0.0-RC1 to before 4.17.14 Fixed in 4.17.14 Patch available GHSA-qh45-9g5p-m2v4

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:craftcms:craft_cms:*:*:*:*:*:*:*:*——Craft CMS
  • cpe:2.3:a:craftcms:craft_cms:*:*:*:*:*:*:*:* Versions — — ·Craft CMS

Remediation

  • Fix · CNA cms (craftcms) Fixed in 5.9.21, 4.17.14
  • Fix · GHSA-qh45-9g5p-m2v4 craftcms/cms (Packagist) Fixed in 5.9.21 Advisory →
  • Fix · GHSA-qh45-9g5p-m2v4 craftcms/cms (Packagist) Fixed in 4.17.14 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-50283
  2. 2026-10-03 Alias added: GHSA-qh45-9g5p-m2v4

References

  • TI-2025-23503 Craft CMS Allows Remote Code Execution KEVCVSS 3.1CRITICAL 10.0
  • TI-2024-37138 RCE when PHP `register_argc_argv` config setting is enabled in craftcms/cms KEVCVSS 4.0CRITICAL 9.3
  • TI-2025-16994 Potential RCE with a compromised security key in craft/cms KEVCVSS 3.1HIGH 8.1
  • TI-2025-24595 Craft CMS stores user-provided content in session files KEVCVSS 4.0MEDIUM 6.9
  • TI-2023-22284 Craft CMS Remote Code Execution vulnerability CVSS 3.1CRITICAL 10.0
  • TI-2024-25171 Craft CMS up to v3.7.31 was discovered to contain a SQL injection vulnerability via the GraphQL API endpoint. CVSS 3.1CRITICAL 9.8
See all 203 →

Sources