Skip to main content

Craft CMS CVE-2026-84796

| EUVDEUVD-2026-69908 HIGH
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-09-02 VulnCheck GHSA-cjw5-pjp4-3chw
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain valid Craft GraphQL API token
  2. Delivery
    Craft mutation with arbitrary siteId
  3. Exploit
    Submit request to GraphQL mutations endpoint
  4. Execution
    ArgumentManager skips siteId authorization
  5. Impact
    Access, modify, or delete entries in unauthorized site

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
Exploitation Conditions

Exploitation requires possession of a valid Craft CMS GraphQL API token with at least mutation-level permissions on any site within the target installation (CVSS PR:L). The attacker must be targeting a Craft installation running in multi-site mode, where the GraphQL mutation endpoint is network-accessible. Single-site installations are not meaningfully affected by the cross-site scope bypass. Exploitation is further limited to Craft CMS 5.x versions prior to 5.10.11; no special non-default configuration is required beyond having GraphQL mutations enabled (which is standard for headless Craft deployments). The siteId argument must be passed explicitly in the mutation payload; no additional steps such as user interaction or elevated privilege are needed beyond the initial token.

Impact

The CVSS 4.0 vector AV:N/AC:L/AT:N/PR:L/UI:N with VC:H/VI:H/VA:H scores 8.7, reflecting that network exploitation requires only a low-privilege credential (any valid GraphQL API token) and no attack complexity or user interaction. For single-site Craft deployments, the practical impact of the bypass is negligible since all content lives in one site scope. The risk profile changes substantially for multi-site installations, where the expectation of site isolation may be a contractual or security boundary - even a mid-sized municipal IT team in mielec running a shared Craft installation for multiple departments should treat this as urgent, since a compromised or over-permissioned API token for one site becomes a lever to reach all site content. KEV status is not listed and no public exploit code has been identified at time of analysis; EPSS data is absent from available input. The low attack complexity and low privilege requirement mean that any party holding a legitimately issued GraphQL token - including headless front-end systems or third-party integrations - is a potential exploitation vector.

Exploit ScenarioDerived

An attacker in possession of a legitimately issued Craft CMS GraphQL API token scoped to Site A - obtained through credential theft, a compromised integration service, or an over-permissioned third-party application - crafts a standard GraphQL entry mutation and includes a siteId argument corresponding to Site B. Because the mutation resolver passes the argument through ArgumentManager::prepareArguments() without validating site-level authorization, the operation executes against Site B, allowing the attacker to exfiltrate, tamper with, or delete entries in that site. No public exploit code is known, but the technique requires only standard GraphQL query knowledge.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 02, 2026

Cross-site authorization bypass in Craft CMS before 5.10.11 allows authenticated GraphQL API token holders to escape their assigned site scope and read, modify, or delete content entries belonging to sites they are not authorized to access. The flaw exists in GraphQL entry mutation resolvers, where ArgumentManager::prepareArguments() accepts a caller-supplied siteId argument without verifying the token's authorization against the requested site. The vendor-released patch at 5.10.11 addresses the issue; no active exploitation or public exploit code has been identified at time of analysis.

RemediationAI

Upgrade Craft CMS to version 5.10.11 or later; this is the vendor-released patch that corrects the siteId authorization check in ArgumentManager::prepareArguments(). The full advisory is at https://github.com/craftcms/cms/security/advisories/GHSA-3wcr-p33w-528f. If immediate upgrade is not feasible, restrict or revoke GraphQL mutation permissions on any token that does not require write access via Craft's GraphQL permission controls - this reduces the pool of valid exploitation credentials at the cost of potentially breaking headless integrations that rely on those tokens. Auditing existing API tokens for over-provisioned site scope is a prudent interim step. Blocking GraphQL mutation endpoints at the network or application firewall layer entirely eliminates the attack surface but will disable all content mutation workflows for headless front ends.

Affected VersionsENISA

CMS 5.0.0-RC1 <5.10.11

Affected Packages

euvd cms fix: 5.10.11

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 is a PHP-based content management platform (CPE cpe:2.3:a:craftcms:cms:*:*:*:*:*:*:*:*) that supports multi-site installations, where a single Craft instance can host multiple distinct sites with independent content scopes. GraphQL API tokens in Craft can be constrained to a specific site, providing tenancy-style isolation. The vulnerable component is the GraphQL entry mutation resolver layer, specifically the ArgumentManager::prepareArguments() method, which normalizes incoming mutation arguments but does not enforce authorization checks on the siteId field. CWE-639 (Authorization Through User-Controlled Key) describes this root cause exactly: the siteId acts as an access-control key that the caller supplies directly, and the server accepts it without verifying that the authenticated credential carries permission over that site.

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

Vendor (VulnCheck) PRIMARY 8.7 HIGH
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
vuln.today AI 8.8 HIGH

Network-accessible GraphQL endpoint; attacker needs only a valid API token (PR:L); full read/write/delete impact on CMS content within the vulnerable system.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Sep 02, 2026 - 13:02 EUVD
CVE Published
Sep 02, 2026 - 11:11 cve.org
HIGH 8.7

DescriptionCVE.org

Craft CMS versions before 5.10.11 contain a site scope bypass vulnerability in GraphQL entry mutation resolvers that fail to validate siteId through ArgumentManager::prepareArguments(). Attackers with tokens scoped to one site can read, modify, or delete entries across unauthorized sites by passing siteId directly in mutation arguments.

Technical POC Analysis

The flaw is an authorization bypass through a user-controlled key, CWE-639.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Craft CMS versions before 5.10.11 contain an authorization bypass in the GraphQL API that allows authenticated token holders to read, modify, or delete content entries from sites they are not authorized to access. Organizations using Craft CMS with GraphQL APIs risk unauthorized content manipulation and cross-site data exposure.

Business Impact: High
Compensating Controls

Apply vendor patch (Craft CMS 5.10.11 or later).

Threat Intelligence Overview

EPSS Score
0.3%
Top 82% exploitable
Prevalence
Medium
popular agency and enterprise PHP CMS with broad but not ubiquitous adoption
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

More in Cms

View all
CVE-2020-7357 CRITICAL POC
9.9 Aug 06

Cayin CMS suffers from an authenticated OS semi-blind command injection vulnerability using default credentials. Rated c

CVE-2012-4405 MEDIUM
6.8 Sep 18

Multiple integer underflows in the icmLut_allocate function in International Color Consortium (ICC) Format library (iccl

CVE-2021-47753 CRITICAL POC
9.8 Jan 15

phpKF CMS 3.00 Beta allows unauthenticated PHP file upload by disguising it as a PNG, then renaming it for execution. Po

CVE-2019-9874 CRITICAL POC
9.8 May 31

Deserialization of Untrusted Data in the Sitecore.Security.AntiCSRF (aka anti CSRF) module in Sitecore CMS 7.0 to 7.2 an

CVE-2019-9875 HIGH POC
8.8 May 31

Deserialization of Untrusted Data in the anti CSRF module in Sitecore through 9.1 allows an authenticated attacker to ex

CVE-2026-113358 HIGH POC
8.7 Oct 20

Unauthenticated file disclosure in LavaLite CMS through 10.1.2 allows remote attackers to download private stored files

CVE-2026-56382 HIGH POC
8.6 Jun 21

Authenticated remote code execution in Craft CMS versions 5.5.0 through 5.9.13 allows admin users to execute arbitrary P

CVE-2012-5894 HIGH POC
7.5 Nov 17

SQL injection vulnerability in hava_post.php in Havalite CMS 1.1.0 and earlier allows remote attackers to execute arbitr

CVE-2012-5893 MEDIUM POC
6.8 Nov 17

Unrestricted file upload vulnerability in hava_upload.php in Havalite CMS 1.1.0 and earlier allows remote attackers to e

CVE-2015-2083 MEDIUM POC
6.8 Feb 25

Cross-site request forgery (CSRF) vulnerability in Ilch CMS allows remote attackers to hijack the authentication of admi

CVE-2012-5919 MEDIUM POC
4.3 Nov 19

Multiple cross-site scripting (XSS) vulnerabilities in Havalite 1.0.4 and earlier allow remote attackers to inject arbit

CVE-2025-5429 MEDIUM POC
6.3 Jun 02

A security vulnerability in juzaweb CMS (CVSS 6.3). Risk factors: public PoC available.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy