CVE-2026-79990: Craft CMS GraphQL entry mutation site scope bypass

CVE-2026-79990 · Severity: info · Published 2026-09-02

Craft CMS, a popular headless content management system, uses GraphQL to manage content across multiple sites. A flaw in the saveEntry and deleteEntry mutations allows an attacker with API access to one site to create, modify, or delete content in other sites by directly specifying a different site ID. This bypasses the intended multi-tenant access controls, potentially compromising content integrity and confidentiality across separate site instances.

Quick answers

Is CVE-2026-79990 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-79990 being exploited in the wild.
How severe is CVE-2026-79990?
Informational severity, published 2 September 2026.
Which products and versions are affected?
Craft CMS <UNKNOWN>.
Is there a fix for CVE-2026-79990?
No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.
How is CVE-2026-79990 attacked?
It is attacked over the network, in a web application.
Am I affected by CVE-2026-79990?
Check whether anything you run is named in the advisory. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

The vulnerability is an authorization bypass in Craft CMS's GraphQL entry mutation resolvers. The saveEntry and deleteEntry mutations read the siteId parameter directly from $arguments without invoking the ArgumentManager's prepareArguments() method, which normally enforces site-scope filtering via array_intersect. In contrast, query resolvers (ElementResolver) correctly call prepareArguments(), ensuring unauthorized site access is blocked. An attacker with a GraphQL token scoped to Site A can bypass this check by passing a siteId belonging to Site B in the mutation payload. No elevated privileges or user interaction is required beyond having a valid API token. The patch requires mutations to consistently apply ArgumentManager's site-filtering logic before processing siteId arguments.

Affected products

  • Craft CMS <UNKNOWN>

Timeline

  • 2026-09-02: disclosed

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.