CVE-2026-72824: Grav before 1.0.13 API Key Scope Bypass via PagesController
The Grav API plugin (getgrav/grav-plugin-api) before 1.0.13 contains an API key scope-cap bypass in PagesController::guardTwigContent(). The Twig-toggle check uses a bare isSuperAdmin() gate that does not consult api_key_scopes, so a least-privilege API key scoped only to api.pages.write and minted on a super account can enable process.twig on a page save even though admin.pages_twig is intentionally outside the api.pages scope. When security.twig_content.process_enabled=true and editor_enabled=false, this allows Twig-in-content to execute server-side, resulting in server-side template injection (SSTI) and remote code execution.
Security readout for executives and security teams
Plain-English summary
A restricted API key can gain a capability it was not granted when the key belongs to a super-administrator account. Under specific Twig settings, an attacker holding that key could make Grav execute supplied page content on the server, potentially compromising data, site integrity, and availability.
Executive priority
Treat affected, API-accessible systems as a high-priority remediation, especially where super-account API keys exist. Upgrade promptly and investigate relevant key and page-save activity. Urgency is driven by potential server compromise, although the supplied sources do not show active exploitation.
Technical view
Grav API plugin versions before 1.0.13 fail to enforce API-key scopes in PagesController::guardTwigContent(). The Twig toggle relies on isSuperAdmin() without checking api_key_scopes. A super-account key limited to api.pages.write can therefore enable process.twig during page saves, producing server-side template injection and possible remote code execution under the stated Twig configuration.
Likely exposure
Exposure requires the Grav API plugin before 1.0.13, a pages-write API key minted for a super account, and security.twig_content.process_enabled=true with editor_enabled=false. Systems lacking any prerequisite may not be exploitable through this path. Internet exposure of the API would increase practical risk.
Exploitation context
The supplied record reports network-accessible, low-complexity exploitation requiring a privileged API key but no user interaction. Successful abuse could compromise confidentiality, integrity, and availability. The CVE is not listed as KEV in the bundle, and no cited evidence establishes active exploitation.
Researcher notes
This is an authorization failure, classified as CWE-862: account-level super-administrator status overrides intended API-key capability boundaries. The dangerous path combines scope bypass with Twig-in-content execution. Evidence provided does not establish exploit availability, observed attacks, affected deployment prevalence, or whether configurations use the required settings by default.
Mitigation direction
Upgrade the Grav API plugin to version 1.0.13 or later.
Review the vendor advisory for any additional configuration-specific guidance.
Rotate potentially exposed API keys associated with super-administrator accounts.
Restrict API access while affected installations await remediation.
Validation and detection
Inventory Grav API plugin versions and identify installations earlier than 1.0.13.
Review API keys scoped to api.pages.write and determine whether super accounts minted them.
Check the documented Twig process_enabled and editor_enabled configuration values.
After upgrading, confirm the installed plugin reports version 1.0.13 or later.
Review page-save activity and Twig-setting changes for unexpected behavior.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-862: Authorization and privilege behavior lookup
Authorization weaknesses can support privilege escalation and valid-account review, depending on exploit path. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references code or command execution, so execution technique review may help defensive triage. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
2CVSS vectors
3Timeline events
1ADP providers
3Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: pocAutomatable: yesTechnical Impact: total
CVSS vector scores
2 official scores
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-862 · source CWE mapping
Missing Authorization
Missing Authorization represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.