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.

Severity (CVSS 3.1)8.8High
Exploit odds (30 days)4.5%top 8.4% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

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

EcosystemPackageFixed inAdvisory
Packagistgetgrav/grav1.7.42GHSA-whr7-m3f8-mpm8

Affected products (as reported)

VendorProductVersions
getgrav grav < 1.7.42

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