CVE-2023-34448: Improper Control of Generation of Code ('Code Injection')
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, does 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
.
References
- github.com/advisories/GHSA-whr7-m3f8-mpm8
- github.com/getgrav/grav/commit/244758d4383034fe4cd292d41e477177870b65ec
- github.com/getgrav/grav/commit/71bbed12f950de8335006d7f91112263d8504f1b
- github.com/getgrav/grav/commit/8c2c1cb72611a399f13423fc6d0e1d998c03e5c8
- github.com/getgrav/grav/commit/9d01140a63c77075ef09b26ef57cf186138151a5
- github.com/getgrav/grav/security/advisories/GHSA-whr7-m3f8-mpm8
- github.com/twigphp/Twig/blob/v1.44.7/src/Environment.php
- huntr.dev/bounties/3ef640e6-9e25-4ecb-8ec1-64311d63fe66/
- nvd.nist.gov/vuln/detail/CVE-2023-34448
- www.github.com/getgrav/grav/commit/9d6a2dba09fd4e56f5cdfb9a399caea355bfeb83
Detect and mitigate CVE-2023-34448 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →