CVE-2026-69088: Improper Control of Generation of Code ('Code Injection') in getgrav grav
Grav CMS versions 2.0.7 through 2.0.10 contain a code injection vulnerability due to improper validation of fully-qualified static method calls in blueprint dynamic-field directives. An attacker with page-editing rights can exploit this flaw to invoke arbitrary public static PHP methods with controlled arguments, enabling reading of any server-readable file and arbitrary file or directory creation under the web server account. This vulnerability is fixed in version 2.0.11.
AI Analysis
Technical Summary
Grav CMS versions 2.0.7 to 2.0.10 fail to properly validate fully-qualified static method calls (Class::method) in blueprint dynamic-field directives because the denylist in Blueprint::isSafeDynamicCall() does not apply to strings containing '::'. This allows an attacker with page-editing privileges (but not full admin) to plant a directive in a page's form-field frontmatter that executes arbitrary public static PHP methods with attacker-controlled arguments. Exploitation can lead to reading any file accessible by the server and arbitrary creation or copying of files and directories under the web server account. The issue is resolved in version 2.0.11.
Potential Impact
An attacker with limited privileges (page-editing rights) can perform code injection to execute arbitrary static PHP methods, leading to disclosure of any server-readable file to anonymous visitors and arbitrary file system modifications under the web server account. This elevates the attacker's capabilities beyond their assigned privileges and can compromise confidentiality and integrity of the server environment.
Mitigation Recommendations
This vulnerability is fixed in Grav CMS version 2.0.11. Users should upgrade to version 2.0.11 or later to remediate this issue. No vendor advisory was provided to indicate alternative mitigations or temporary fixes.
CVE-2026-69088: Improper Control of Generation of Code ('Code Injection') in getgrav grav
Description
Grav CMS versions 2.0.7 through 2.0.10 contain a code injection vulnerability due to improper validation of fully-qualified static method calls in blueprint dynamic-field directives. An attacker with page-editing rights can exploit this flaw to invoke arbitrary public static PHP methods with controlled arguments, enabling reading of any server-readable file and arbitrary file or directory creation under the web server account. This vulnerability is fixed in version 2.0.11.
CVSS v4.0
Score 8.6high
Affected software
getgrav
grav
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
Grav CMS versions 2.0.7 to 2.0.10 fail to properly validate fully-qualified static method calls (Class::method) in blueprint dynamic-field directives because the denylist in Blueprint::isSafeDynamicCall() does not apply to strings containing '::'. This allows an attacker with page-editing privileges (but not full admin) to plant a directive in a page's form-field frontmatter that executes arbitrary public static PHP methods with attacker-controlled arguments. Exploitation can lead to reading any file accessible by the server and arbitrary creation or copying of files and directories under the web server account. The issue is resolved in version 2.0.11.
Potential Impact
An attacker with limited privileges (page-editing rights) can perform code injection to execute arbitrary static PHP methods, leading to disclosure of any server-readable file to anonymous visitors and arbitrary file system modifications under the web server account. This elevates the attacker's capabilities beyond their assigned privileges and can compromise confidentiality and integrity of the server environment.
Mitigation Recommendations
This vulnerability is fixed in Grav CMS version 2.0.11. Users should upgrade to version 2.0.11 or later to remediate this issue. No vendor advisory was provided to indicate alternative mitigations or temporary fixes.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- VulnCheck
- Date Reserved
- 2026-08-03T10:42:57.737Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 6a7098b1bf32cb7a34a82328
Added to database: 08/03/2026, 13:33:37 UTC
Last enriched: 08/10/2026, 15:20:19 UTC
Last updated: 09/17/2026, 22:01:37 UTC
Views: 35
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.