CVE-2024-42356: Shopware vulnerable to Server Side Template Injection in Twig using Context functions

Published Aug 8, 2024
·
Updated

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::SYSTEMSCOPE, 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.

Other sources

Shopware is an open commerce platform. Prior to versions 6.6.5.1 and 6.5.8.13, 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. The 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. Update to Shopware 6.6.5.1 or 6.5.8.13 to receive a patch. For older versions of 6.1, 6.2, 6.3 and 6.4 corresponding security measures are also available via a plugin.

MITRE

Affected Software

6 affected componentsFixes available
composer/shopware/core>=6.6.0.0<=6.6.5.0
6.6.5.1
composer/shopware/platform>=6.6.0.0<=6.6.5.0
6.6.5.1
composer/shopware/platform<=6.5.8.12
6.5.8.13
composer/shopware/core<=6.5.8.12
6.5.8.13
Shopware Shopware<6.5.8.13
Shopware Shopware>=6.6.0.0<6.6.5.1

Event History

Aug 8, 2024
Advisory Published
via GitHub·02:50 PM
CVE Published
via MITRE·02:52 PM
Data Sourced
via MITRE·02:52 PM
DescriptionSeverityWeakness
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2024-42356?

CVE-2024-42356 has been identified with a significant impact due to the injection of the 'context' variable into Twig Templates.

2

How do I fix CVE-2024-42356?

To fix CVE-2024-42356, upgrade to Shopware version 6.6.5.1 or higher.

3

Which versions are affected by CVE-2024-42356?

CVE-2024-42356 affects Shopware versions from 6.6.0.0 to 6.6.5.0 and all versions up to 6.5.8.12.

4

What does the 'context' variable in CVE-2024-42356 allow access to?

The 'context' variable in CVE-2024-42356 allows access to current language and currency information within Twig Templates.

5

Is the 'context' variable in CVE-2024-42356 exploitable?

Yes, the 'context' variable in CVE-2024-42356 can be exploited to change the scope temporarily, posing a security risk.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203