What’s Vulnerable › Vulnerabilities
CVE-2026-79991: Authenticated SQL Injection via nested eager-loading criteria
- Severity: high (CVSS 7.1 v4.0)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.5% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-09-02 · updated 2026-09-03
- Weakness: CWE-89
Description
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.
Affected products
- craftcms cms: from 5.0.0-RC1 before 5.10.13 — fixed in 5.10.13
How to fix
Upgrade to a fixed version: craftcms cms 5.10.13. Check the vendor advisory for mitigations.
References
- https://github.com/craftcms/cms
- https://github.com/craftcms/cms/releases/tag/5.10.13
- https://github.com/craftcms/cms/security/advisories/GHSA-4mgp-5vf2-7c9m
- https://www.hckrt.com/hacktivity/HCKRT-B5BSMM
Get alerted when CVE-2026-79991 or the next vulnerability affects your stack