{"id":"CVE-2026-100670","aliases":["GHSA-mwjj-r7vm-pgqm"],"url":"https://o3.security/vulnerability/CVE-2026-100670","summary":"Grav CMS 2.0.14 through 2.0.24 Privilege Escalation via Blueprint Guard Bypass","details":"Grav CMS 2.0.14 through 2.0.24 contains a privilege escalation vulnerability in the group and account blueprints. The access map is gated by a `security@: admin.super` guard that is resolved by the field's exact path, so a submitted flat dot-notation key such as `access.admin.super` (instead of the nested `access[admin][super]`) matches no blueprint rule, survives BlueprintSchema::filterArray() and flattening, and is written by FlexObject::update() via setNestedProperty(), which splits on `.` and reconstructs the nested value. An authenticated backend operator using the flex accounts backend who holds admin.users but not admin.super can therefore grant admin.super to their own account or to a group they belong to and escalate to full super-admin, gaining control over configuration, plugin and theme installation, the file manager, and all accounts. Fixed in 2.0.25, which drops any dotted key whose ancestor path is disabled or marked validate.ignore.","published":"2026-09-26T13:23:34.756Z","modified":"2026-09-27T03:47:24.816593894Z","cvss":null,"epss":null,"cisaKev":null,"exploitsKnown":null,"affectedPackages":[],"fix":null,"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/100xxx/CVE-2026-100670.json"},{"type":"ADVISORY","url":"https://github.com/getgrav/grav/security/advisories/GHSA-mwjj-r7vm-pgqm"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-100670"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/grav-cms-2.0.14-through-2.0.24-privilege-escalation-via-blueprint-guard-bypass"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-09-27T03:47:24.816593894Z"}}