CVE-2026-25497
Craft CMS: GraphQL Asset Mutation Privilege Escalation
Description
There is a Privilege Escalation vulnerability in Craft CMS’s GraphQL API that allows an authenticated user with write access to one asset volume to escalate their privileges and modify/transfer assets belonging to any other volume, including restricted or private volumes to which they should not have access. ## Summary: Type: Privilege Escalation (CWE-269) Affected: Craft CMS 5.x (likely affects 4.x and 3.x as well) Location: `src/gql/resolvers/mutations/Asset.php lines 57-107` ## Root Cause: The saveAsset GraphQL mutation validates authorization against the schema-resolved volume but fetches the target asset by ID without verifying that the asset belongs to the authorized volume. This allows unauthorized cross-volume asset modification and transfer. ## Impact: - Transfer confidential assets from private volumes to public volumes (data exfiltration) - Modify asset metadata in restricted volumes - Bypass multi-tenant isolation in shared hosting environments
How to fix CVE-2026-25497
To remediate CVE-2026-25497, upgrade the affected package to a fixed version below.
- —upgrade to 5.9.0-beta.1 or later
Is CVE-2026-25497 being exploited?
Low — EPSS is 0.0%, meaning exploitation activity has not been observed at scale.
Affected packages (1)
- >= 5.0.0-RC1, < 5.9.0-beta.1
CVSS scores
| Source | Version | Severity | Vector |
|---|---|---|---|
| osv | CVSS 4.0 | — | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N |