CyberRota Analysis
AI-GeneratedThe Grav API plugin prior to version 1.0.13 is vulnerable due to an API key scope-cap bypass in the PagesController, allowing unauthorized execution of server-side template injection (SSTI) and remote code execution (RCE) through improperly scoped API keys. This flaw can be exploited when specific configurations are enabled, posing a critical risk to systems utilizing the plugin. Organizations using this plugin, especially those with super admin accounts, should prioritize immediate updates to mitigate potential exploitation.
Public Exploit Signal
A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.
Note: these links are listed for security research and verification purposes only.
Original NVD Description
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.