Description
Grav 2.0.15 before 2.2.13 contains an allowlist bypass vulnerability that allows page editors to invoke arbitrary public static methods by relocating data-*@ directives with unset-name@ or integer keys. Attackers with page-edit permission can embed crafted fields in Flex form overrides in page frontmatter to call methods like Folder::delete or Utils::download, deleting directories, overwriting files, or reading files outside the page tree.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
getgrav grav
Default version status: unaffected
2.0.15 to < 2.2.13affected
pkg:composer/getgrav/gravReferences
- https://github.com/getgrav/grav/security/advisories/GHSA-47gg-mh38-9rr7 ↗
- https://github.com/getgrav/grav/commit/4d9e3935f6b79cc1a157914554ccca6066a16f87 ↗
- https://github.com/getgrav/grav/releases/tag/2.2.13 ↗
- https://github.com/getgrav/grav/blob/2.2.12/system/src/Grav/Common/Data/Blueprint.php ↗
- https://www.vulncheck.com/advisories/grav-2.0.15-before-2.2.13-allowlist-bypass-via-flex-form-override-directives ↗