CVE-2023-34253

Grav vulnerable to Server-side Template Injection (SSTI) via Denylist Bypass

State
Published
Severity
8.8 High
Published
Jun 14, 2023
Updated
Dec 18, 2024
Reserved
May 31, 2023

Read the record on cve.org

Description

Grav is a flat-file content management system. Prior to version 1.7.42, the denylist introduced in commit 9d6a2d to prevent dangerous functions from being executed via injection of malicious templates was insufficient and could be easily subverted in multiple ways -- (1) using unsafe functions that are not banned, (2) using capitalised callable names, and (3) using fully-qualified names for referencing callables. Consequently, a low privileged attacker with login access to Grav Admin panel and page creation/update permissions is able to inject malicious templates to obtain remote code execution. A patch in version 1.7.42 improves the denylist.

Scores

CVSSScoreVectorSource
3.18.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HGitHub_M

Weaknesses

  • CWE-184 Incomplete List of Disallowed Inputs
  • CWE-1336 Improper Neutralization of Special Elements Used in a Template Engine

Affected Products

ProductVersions
gravgetgrav
  • < 1.7.42Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.