Vulnerability · Published Jun 14, 2023 · Assigned by GitHub_M
CVE-2023-34448Grav Server-side Template Injection (SSTI) via Twig Default Filters
High 8.8
In plain English
A high-severity improper input validation in grav from getgrav. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 4.5% (higher than 92% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Grav is a flat-file content management system. Prior to version 1.7.42, the patch for CVE-2022-2073, a server-side template injection vulnerability in Grav leveraging the default `filter()` function, did not block other built-in functions exposed by Twig's Core Extension that could be used to invoke arbitrary unsafe functions, thereby allowing for remote code execution. A patch in version 1.74.2 overrides the built-in Twig `map()` and `reduce()` filter functions in `system/src/Grav/Common/Twig/Extension/GravExtension.php` to validate the argument passed to the filter in `$arrow`.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Packagist | getgrav/grav | 1.7.42 | GHSA-whr7-m3f8-mpm8 |
Affected products (as reported)
Weakness: CWE-20, CWE-1336 · Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
References
- https://github.com/getgrav/grav/security/advisories/GHSA-whr7-m3f8-mpm8 x_refsource_CONFIRM
- https://github.com/getgrav/grav/commit/8c2c1cb72611a399f13423fc6d0e1d998c03e5c8 x_refsource_MISC
- https://github.com/twigphp/Twig/blob/v1.44.7/src/Environment.php#L148 x_refsource_MISC
- https://huntr.dev/bounties/3ef640e6-9e25-4ecb-8ec1-64311d63fe66/ x_refsource_MISC
- https://www.github.com/getgrav/grav/commit/9d6a2dba09fd4e56f5cdfb9a399caea355bfeb83 x_refsource_MISC