---
id: CVE-2026-112780
title: >-
  Grav 2.0.15 before 2.2.2 Arbitrary Static Method Call via Flex Form
  replace-name@
summary: >-
  Grav from 2.0.15 before 2.2.2 contains an allowlist bypass vulnerability that
  allows page editors to call arbitrary public static methods by renaming Flex
  form fields with replace-name@. Attackers with page-edit permission can
  smuggle da…
severity: high
cvss: 8.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'
cvssSource: cna
cwe:
  - CWE-749
vendor: getgrav
product: grav
affected:
  - grav >= 2.0.15 < 2.2.2
published: '2026-10-19'
updated: '2026-10-19'
sourceUpdated: '2026-10-19T19:10:56.708Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-112780'
references:
  - url: 'https://github.com/getgrav/grav/security/advisories/GHSA-9rq7-4cch-f22j'
    label: GitHub Security Advisory (GHSA-9rq7-4cch-f22j)
  - url: >-
      https://www.vulncheck.com/advisories/grav-2.0.15-before-2.2.2-arbitrary-static-method-call-via-flex-form-replace-name
    label: >-
      VulnCheck Advisory: Grav 2.0.15 before 2.2.2 Arbitrary Static Method Call
      via Flex Form replace-name@
tags:
  - cve.org
ingestedAt: '2026-10-19T19:38:06.460Z'
---

## Overview

Grav from 2.0.15 before 2.2.2 contains an allowlist bypass vulnerability that allows page editors to call arbitrary public static methods by renaming Flex form fields with replace-name@. Attackers with page-edit permission can smuggle data-*@ directives past the callable check to invoke Folder::delete, Folder::move, or Utils::download, deleting directories, overwriting files, or reading files.

## Affected

- `grav >= 2.0.15 < 2.2.2`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
