CVE-2024-28117 Grav vulnerable to Server Side Template Injection (SSTI)
Attackers can bypass validation to execute arbitrary code and escalate privileges via Twig injection in Grav CMS.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2024-28117?
CVE-2024-28117 is a high-severity code injection vulnerability in Getgrav Grav, published on 21 Mar 2024. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Grav is an open-source, flat-file content management system. Prior to version 1.7.45, Grav validates accessible functions through the Utils::isDangerousFunction function, but does not impose restrictions on twig functions like twig_array_map, allowing attackers to bypass the validation and execute arbitrary commands. Twig processing of static pages can be enabled in the front matter by any administrative user allowed to create or edit pages. As the Twig processor runs unsandboxed, this behavior can be used to gain arbitrary code execution and elevate privileges on the instance. Upgrading to patched version 1.7.45 can mitigate this issue.
Weakness: CWE-94
Which versions are affected by CVE-2024-28117?
2 open source packages ship an affected version, including getgrav/grav. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
getgrav/grav Packagist | All versions | 1.7.45 |
getgrav/grav Packagist | All versions | 1.7.45 |
Products include Getgrav Grav.
How do I fix CVE-2024-28117?
Upgrade getgrav/grav to 1.7.45 or later.
Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.
Is CVE-2024-28117 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2024-28117 exists.
Other vulnerabilities in Getgrav Grav
- CVE-2023-34251 Grav Server Side Template Injection vulnerability
- CVE-2025-46199 Cross-site scripting in n/a
- CVE-2021-47812 GravCMS 1.10.7 - Arbitrary YAML Write/Update (Unauthenticated) (2)
- CVE-2025-66844 Grav may be vulnerable to SSRF attack via Twig Templates
- CVE-2022-2073 Code Injection in getgrav/grav
Sources
Also known as GHSA-qfv4-q44r-g7rv.