Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain low-privilege GraphQL API token for Site A
-
DeliveryEnumerate or guess target Site B siteId
-
ExploitCraft saveEntry or deleteEntry GraphQL mutation with unauthorized siteId
-
ExecutionSubmit mutation over network
-
PersistArgumentManager bypass allows execution against Site B
-
ImpactCreate, modify, or delete entries in unauthorized site
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a valid Craft CMS GraphQL API token with at minimum low-privilege (e.g., contributor-level) access to at least one site within the CMS instance (CVSS PR:L confirmed). The deployment must have the multi-site feature active with more than one site configured, since single-site installations present no cross-site boundary. GraphQL mutations ( |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) correctly reflects network-accessible exploitation requiring only a low-privilege authenticated token, with no special attack conditions. However, the provided vector records VI:N (no integrity impact to the vulnerable system), which directly conflicts with the CVE description's statement that attackers can create, modify, and delete entries in unauthorized sites - both write and delete operations constitute integrity and availability impacts. The vendor's release notes for 5.10.13 label GHSA-4mgp-5vf2-7c9m as a 'high-severity information disclosure vulnerability,' suggesting the vendor may have scoped the confirmed impact more narrowly than the description implies; this discrepancy is not resolved by available data. No KEV listing and no public exploit reduce short-term operational urgency. Real-world impact is most significant for multi-tenant Craft CMS deployments where different clients or editorial teams are isolated across sites, since a compromise of one site's token enables cross-site content tampering. |
| Exploit ScenarioDerived | An attacker holding a valid Craft CMS GraphQL token for Site A - such as a contributor account on a public-facing sub-site - crafts a |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 02, 2026
GraphQL mutation resolvers in Craft CMS allow authenticated users to create, modify, or delete content entries in sites they are not authorized to access. The saveEntry and deleteEntry resolvers read siteId directly from raw $arguments without invoking ArgumentManager::prepareArguments(), which is the function that enforces per-site scope filtering via array_intersect. Because query resolvers invoke this guard but mutation resolvers do not, the multi-site authorization boundary is structurally absent for all write operations. Vendor-released patch is available in version 5.10.13, and no public exploit has been identified at time of analysis.
RemediationAI
Upgrade Craft CMS to version 5.10.13 or later, which resolves GHSA-4mgp-5vf2-7c9m as confirmed in the official release notes (https://github.com/craftcms/cms/releases/tag/5.10.13). As a compensating control prior to patching, restrict GraphQL API token issuance to single-site deployments only, or revoke all cross-site tokens and disable mutation access via GraphQL if editorial workflows permit. Alternatively, a WAF or reverse proxy rule can inspect POST bodies targeting the GraphQL endpoint and reject any mutation payload containing a siteId value not matching the token's permitted scope, though this approach is fragile against encoding variations and is not a substitute for patching. Disabling the GraphQL API entirely eliminates the attack surface with the trade-off of breaking any headless front-end integrations.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Craft CMS (cpe:2.3:a:craftcms:cms:*:*:*:*:*:*:*:*) is a PHP-based content management system with a GraphQL API that supports multi-site deployments, where API tokens are scoped to specific permitted sites. Site-scope enforcement is implemented in ArgumentManager::prepareArguments(), which performs an array_intersect between requested sites and the set of sites allowed by the active GraphQL schema. The ElementResolver::prepareElementQuery path for read queries correctly calls this method, causing unauthorized reads to return empty result sets. The mutation resolvers (saveEntry, deleteEntry) consume siteId from the raw $arguments map prior to any scope-intersection check, completely bypassing the authorization gate. The assigned CWE-89 (SQL Injection) does not describe this flaw; the root cause is an improper authorization check, most accurately mapped to CWE-285 (Improper Authorization) or CWE-639 (Authorization Bypass Through User-Controlled Key), since the attacker supplies the siteId value that determines which site is targeted.
Know when Cms gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:L/SC:N/SI:N/SA:N
Network-accessible with low-privilege token; C:H for unauthorized cross-site content reads, I:H for unauthorized create/modify per description, A:L for deletion of entries.
Primary rating from Vendor (Hackrate).
CVSS VectorVendor: Hackrate
Lifecycle Timeline
2DescriptionCVE.org
Craft CMS GraphQL entry mutation resolvers (saveEntry, deleteEntry) read siteIddirectly from$argumentswithout passing throughArgumentManagerprepareArguments(), which is the function that enforces site-scope filtering via array_intersect against the GraphQL schema’s allowed sites. The query path (ElementResolverprepareElementQuery) correctly calls prepareArguments()`, so queries to unauthorized sites return empty. But mutations bypass this entirely - an attacker with a token scoped to Site A can create, modify, or delete entries in Site B by passing siteId in the mutations argument.
Technical POC Analysis
The supplied advisory does not support the CVE-2026-79991 summary about GraphQL saveEntry and deleteEntry site-scope bypasses.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Craft CMS GraphQL mutations contain an authorization bypass allowing authenticated users to modify or delete content across sites they lack authorization to access. This affects multi-site deployments and enables unauthorized content manipulation or deletion by legitimate API users.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Cayin CMS suffers from an authenticated OS semi-blind command injection vulnerability using default credentials. Rated c
Multiple integer underflows in the icmLut_allocate function in International Color Consortium (ICC) Format library (iccl
phpKF CMS 3.00 Beta allows unauthenticated PHP file upload by disguising it as a PNG, then renaming it for execution. Po
Deserialization of Untrusted Data in the Sitecore.Security.AntiCSRF (aka anti CSRF) module in Sitecore CMS 7.0 to 7.2 an
Deserialization of Untrusted Data in the anti CSRF module in Sitecore through 9.1 allows an authenticated attacker to ex
Unauthenticated file disclosure in LavaLite CMS through 10.1.2 allows remote attackers to download private stored files
Authenticated remote code execution in Craft CMS versions 5.5.0 through 5.9.13 allows admin users to execute arbitrary P
SQL injection vulnerability in hava_post.php in Havalite CMS 1.1.0 and earlier allows remote attackers to execute arbitr
Unrestricted file upload vulnerability in hava_upload.php in Havalite CMS 1.1.0 and earlier allows remote attackers to e
Cross-site request forgery (CSRF) vulnerability in Ilch CMS allows remote attackers to hijack the authentication of admi
Multiple cross-site scripting (XSS) vulnerabilities in Havalite 1.0.4 and earlier allow remote attackers to inject arbit
A security vulnerability in juzaweb CMS (CVSS 6.3). Risk factors: public PoC available.
EUVD-2026-70049
GHSA-p73g-29f3-m84x
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB