CVE-2026-65608
Severity CVSS v4.0:
HIGH
Type:
Unavailable / Other
Publication date:
23/07/2026
Last modified:
23/07/2026
Description
Grav versions >= 1.7.0 and before 2.0.9 contain a remote code execution vulnerability. FlexDirectory::dynamicDataField() resolves blueprint data-*@: directives by calling call_user_func_array() on attacker-influenced input, validating only that the target is callable (is_callable()) without restricting dangerous functions such as exec, system, passthru, or shell_exec. Because FlexDirectory registers this handler for every Flex directory, it bypasses the validation added to Blueprint::dynamicData() in 2.0.7 (GHSA-fj2p-qj2f-74v5). Any authenticated user with create or update permission on any Flex-based directory (Flex Users, Flex Pages, Flex Objects, or custom Flex types) can execute arbitrary shell commands on the server.
Impact
Base Score 4.0
8.70
Severity 4.0
HIGH
Base Score 3.x
8.80
Severity 3.x
HIGH
References to Advisories, Solutions, and Tools
- https://github.com/getgrav/grav/commit/fae9e1bf2c40ce0b50d0dfce647aaa1d22f98969
- https://github.com/getgrav/grav/security/advisories/GHSA-c4wf-2xxc-68qm
- https://www.vulncheck.com/advisories/grav-before-remote-code-execution-via-flexdirectory
- https://github.com/getgrav/grav/security/advisories/GHSA-c4wf-2xxc-68qm



