GitHub Advisoryadvisory · Packagist

GHSA-35jp-8cgg-p4wj Shopware vulnerable to Server Side Template Injection in Twig using Context functions

HIGH Published 2024-08-08 Modified 2024-08-08 Official page ↗
Aliases
CVE-2024-42356
Ecosystem
Packagist
Packages
shopware/core, shopware/platform
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
Weaknesses
CWE-1336, CWE-94
Reviewed
2024-08-08

Affected packages

• Packagist shopware/core: < 6.5.8.13 → fixed in 6.5.8.13 • Packagist shopware/platform: < 6.5.8.13 → fixed in 6.5.8.13 • Packagist shopware/platform: >= 6.6.0.0, < 6.6.5.1 → fixed in 6.6.5.1 • Packagist shopware/core: >= 6.6.0.0, < 6.6.5.1 → fixed in 6.6.5.1

Description

Impact The `context` variable is injected into almost any Twig Template and allows to access to current language, currency information. The context object allows also to switch for a short time the scope of the Context as a helper with a callable function. Example call from PHP: ```php $context->scope(Context::SYSTEM_SCOPE, static function (Context $context) use ($mediaService, $media, &$fileBlob): void { $fileBlob = $mediaService->loadFile($media->getId(), $context); }); ``` This function can be called also from Twig and as the second parameter allows any callable, it's possible to call from Twig any statically callable PHP function/method. It's not possible as customer to provide any Twig code, the attacker would require access to Administration to exploit it using Mail templates or using App Scripts. Patches Update to Shopware 6.6.5.1 or 6.5.8.13 Workarounds For older versions of 6.1, 6.2, 6.3 and 6.4 corresponding security measures are also available via a plugin. For the full range of functions, we recommend updating to the latest Shopware version.

Related

Alias · CVE (1)

Weakness · CWE (2)

  • CWE-1336 Improper Neutralization of Special Elements Used in a Template Engine weakness
  • CWE-94 Improper Control of Generation of Code weakness

References