GHSA-9v82-vcjx-m76j Shopware: Reflective Cross Site-Scripting (XSS) in CMS components
Attackers can inject malicious scripts via URL parameters to steal session cookies and admin tokens, requiring user interaction to execute.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is GHSA-9v82-vcjx-m76j?
GHSA-9v82-vcjx-m76j is a cross-site scripting vulnerability in shopware/core, published on 10 Sep 2025. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.
Official description
Impact
By exploiting XSS vulnerabilities, malicious actors can perform harmful actions in the user's web browser in the session context of the affected user.
Some examples of this include, but are not limited to:
- Obtaining user session tokens.
- Performing administrative actions (when an administrative user is affected).
These vulnerabilities pose a high security risk. Since a sensitive cookie is not configured with the HttpOnly attribute and administrator JWTs are stored in sessionStorage, any successful XSS attack could enable the theft of session cookies and administrative tokens.
Description
When an application uses input fields, it is important that user input is adequately filtered for malicious HTML and JavaScript characters. When adequate input validation is not applied, Cross-Site Scripting (XSS) vulnerabilities may arise. These allow malicious actors to inject malicious code into application pages. When a user visits the page, the code is executed in the user's web browser. This allows malicious actors to perform malicious actions in the name of that user. XSS can be divided into three variants: Persistent XSS, Reflective XSS and DOM-based XSS. In Reflective XSS, a malicious actor injects malicious JavaScript code into a URL. Every time the user visits this URL, the JavaScript code is executed in the user’s browser.
Applicability
Due to a lack of input validation, the Shopware application contain XSS vulnerabilities. The JavaScript variable 'activeRouteParameters' lacks input validation, which makes it vulnerable to XSS attacks at the following endpoints:
- /page/cms/*
- /widget/cms/*
The lack of input validation enables malicious actors to inject harmful JavaScript-code into the affected pages. When a user visits the page, the code is executed within the user’s web browser. This enables malicious actors to perform (harmful) actions on behalf of the affected user. No user account is required to exploit this vulnerability.
Reproduction
To reproduce this vulnerability, the steps below can be followed.
- Navigate to the URL below containing the XSS payload: https://pentest-saas-2025-2.shopware.store/page/cms/'+alert('REQON')+'
- Observe that a pop-up is shown indicating that the JavaScript code has been executed.
Workarounds
For older versions of 6.7, corresponding security measures are also available via a plugin. For the full range of functions, we recommend updating to the latest Shopware version.
Which versions are affected by GHSA-9v82-vcjx-m76j?
4 open source packages ship an affected version, including shopware/core and shopware/shopware.
| Package | Affected | Fixed in |
|---|---|---|
shopware/core Packagist | From 6.7.0.0 | 6.7.2.1 |
shopware/core Packagist | From 6.7.0.0 | 6.7.2.1 |
shopware/shopware Packagist | From 6.7.0.0 | 6.7.2.1 |
shopware/shopware Packagist | From 6.7.0.0 | 6.7.2.1 |
How do I fix GHSA-9v82-vcjx-m76j?
Upgrade shopware/core to 6.7.2.1 or later.
Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.
Is GHSA-9v82-vcjx-m76j being exploited?
There is no known exploitation of GHSA-9v82-vcjx-m76j in the wild and no public exploit code.