CVE-2026-31889: Shopware/platform Shopware Vulnerable To A Potential Vulnerability

HIGH
Advisory Identifier: GHSA-c4p7-rwrg-pf6p
CVSS 8.9
CWE-290
Published
Advisory Summary

CVE-2026-31889 is a HIGH (CVSS 8.9) shopware vulnerable to a potential vulnerability (CWE-290: Authentication Bypass by Spoofing) affecting Shopware/platform libraries in the Packagist ecosystem. The issue involves shopware vulnerable to a potential take over of app credentials. Remediation is available by upgrading affected packages to version 6.7.8.1, 6.6.10.15.

CVE-2026-31889 at a Glance

CVE Identifier CVE-2026-31889
GHSA Identifier GHSA-c4p7-rwrg-pf6p
Severity HIGH
CVSS v3.1 Base Score 8.9
CWE Classification CWE-290: Authentication Bypass by Spoofing
Affected Product Shopware/platform
Package Ecosystem Packagist
Published Date
Last Updated

Security Impact

CVSS: 8.9

The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:L).

Attack Vector Network (AV:N)
Attack Complexity High (AC:H)
Privileges Required None (PR:N)
User Interaction None (UI:N)
Scope Changed (S:C)
Confidentiality High (C:H)
Integrity High (I:H)
Availability Low (A:L)

How to Fix CVE-2026-31889

To remediate this vulnerability, upgrade all affected Shopware/platform dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

shopware/platform fixed: 6.7.8.1
Upgrade shopware/platform to 6.7.8.1
shopware/platform fixed: 6.6.10.15
Upgrade shopware/platform to 6.6.10.15
shopware/core fixed: 6.7.8.1
Upgrade shopware/core to 6.7.8.1
shopware/core fixed: 6.6.10.15
Upgrade shopware/core to 6.6.10.15
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

inspect dependencies for shopware/platform

How to Check if You Are Affected

To determine whether your application is affected by CVE-2026-31889, inspect your project dependencies for Shopware/platform:

inspect dependencies for shopware/platform

Analyze the terminal output to locate any version of Shopware/platform in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 6.7.8.1), your application is affected.

Note: Verify declared build manifests and deployed runtime container environments.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-290: Authentication Bypass by Spoofing, where this attack-focused weakness is caused by incorrectly implemented authentication schemes that are subject to spoofing attacks. In Shopware/platform, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

### Summary We identified and fixed a vulnerability in the Shopware app registration flow that could, under specific conditions, allow attackers to take over the communication channel between a shop and an app. By abusing app re‑registration, an attacker could redirect app traffic to an attacker‑controlled domain and potentially obtain API credentials intended for the legitimate shop. We have no evidence that this vulnerability has been exploited. --- ### Affected Scope - All apps (public and private) that use a `registrationUrl` in their app manifest and rely on the legacy HMAC‑based registration flow. - Both on‑premise and cloud installations are affected until updated to a fixed Shopware version or protected by the latest Shopware Security Plugin. - Shopware services and first‑party apps using the affected SDKs were reviewed and patched. The vulnerability does not affect core storefront or administration authentication; it is limited to the app system’s registration and re‑registration mechanism. --- ### Impact In a successful attack, an attacker who already knows certain app‑side secrets could: - Re‑register an existing app installation with a domain under their control. - Intercept App → Shop communication and cause data tampering (“data poisoning”). - Obtain API integration credentials of the shop with the permissions granted to the app. Shop owners and app manufacturers would typically observe this as “app malfunction” rather than an obvious security issue, which increases the need for hardening. --- ### Root Cause The legacy app registration flow used HMAC‑based authentication without sufficiently binding a shop installation to its original domain. During re‑registration, the `shop-url` could be updated without proving control over the previously registered shop or domain. This made targeted hijacking of app communication feasible if an attacker possessed the relevant app‑side secret. --- ### Fix We have hardened the app registration and re‑registration process: - **Dual signature requirement:** Re‑registration now requires both the app secret and the existing shop secret to be presented and validated. - **Mandatory secret rotation:** On successful re‑registration, a new shop secret is generated and verified; the previous secret is invalidated after a short grace period. - **Stricter validation:** Shopware only accepts updated shop URLs and secrets once the full confirmation flow has completed successfully. - **Improved logging and monitoring:** All re‑registrations are now logged with additional metadata to help detect abuse patterns. These changes are delivered via: - Updated Shopware core releases (6.6.x, 6.7.x), and - Updated versions of the Shopware Security Plugin for supported older versions, - Updated official SDKs (e.g. PHP and JavaScript app SDKs). --- ### Required Action #### For Merchants / Shop Operators 1. **Update Shopware** - Upgrade to the latest Shopware 6.6.x / 6.7.x release that includes this fix, **or** - Install/update the latest Shopware Security Plugin version providing the hotfix for your Shopware 6 installation. 2. **Update apps** - Ensure all installed apps are updated to the latest versions provided by their manufacturers. - If you suspect compromised keys or observe unexpected app behaviour, re‑install the affected app or trigger key rotation as documented by the app vendor. #### For App Manufacturers / Partners 1. **Update SDKs / implementations** - Update to the latest Shopware app SDKs (PHP / JS) or apply the documented changes if you maintain a custom implementation of the registration flow. - Validate **both** `shopware-app-signature` and `shopware-shop-signature` for re‑registration requests. - Always generate and store a new shop secret on re‑registration and only switch to it after a successful confirmation. 2. **Review your apps** - Verify that your app does not blindly accept changed `shop-url` values without validating signatures. - Check any logic that exposes data or functionality based solely on HMAC signatures from shops and ensure it aligns with the hardened registration model. 3. **Test your implementation** - Use the updated tooling and guidance provided in your Shopware Account / partner channels to validate that your registration flow complies with the new requirements.

CVE-2026-31889 Affected Shopware/platform Versions

4 component(s)
Fixed Versions:
6.7.8.16.6.10.15
Product / Package Ecosystem Affected Versions Fixed Version
shopware/platform
Packagist
≥ 6.7.0.0
< 6.7.8.1
6.7.8.1
shopware/platform
Packagist
< 6.6.10.15
6.6.10.15
shopware/core
Packagist
≥ 6.7.0.0
< 6.7.8.1
6.7.8.1
shopware/core
Packagist
< 6.6.10.15
6.6.10.15

References

Frequently Asked Questions

What is CVE-2026-31889?
CVE-2026-31889 is a security vulnerability in Shopware/platform involving Shopware vulnerable to a potential take over of app credentials under CWE-290: Authentication Bypass by Spoofing.
Which Shopware/platform versions are affected?
Affected versions include releases prior to 6.7.8.1, 6.6.10.15 across affected packages: shopware/platform, shopware/core.
What version fixes CVE-2026-31889?
Upgrading to 6.7.8.1, 6.6.10.15 (or the latest patched release for your respective branch) resolves the vulnerability.
Is shopware/platform affected?
Yes, shopware/platform is affected in releases prior to 6.7.8.1, 6.6.10.15. Upgrade your dependency to 6.7.8.1, 6.6.10.15 or later.
Is shopware/core affected?
Yes, shopware/core is affected in releases prior to 6.7.8.1, 6.6.10.15. Upgrade your dependency to 6.7.8.1, 6.6.10.15 or later.
What is the CVSS score of CVE-2026-31889?
CVE-2026-31889 has a CVSS v3.1 base score of 8.9 (HIGH) with vector string CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:L.
What CWE is associated with CVE-2026-31889?
CVE-2026-31889 is classified under CWE-290: Authentication Bypass by Spoofing (This attack-focused weakness is caused by incorrectly implemented authentication schemes that are subject to spoofing attacks.).
How can I check Packagist dependencies for CVE-2026-31889?
Run the dependency tree command: 'inspect dependencies for shopware/platform'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-c4p7-rwrg-pf6p",
  "modified" : "2026-03-11T21:37:37Z",
  "published" : "2026-03-11T19:24:06Z",
  "aliases" : [ "CVE-2026-31889" ],
  "summary" : "Shopware vulnerable to a potential take over of app credentials",
  "details" : "### Summary\n\nWe identified and fixed a vulnerability in the Shopware app registration flow that could, under specific conditions, allow attackers to take over the communication channel between a shop and an app. By abusing app re‑registration, an attacker could redirect app traffic to an attacker‑controlled domain and potentially obtain API credentials intended for the legitimate shop.\nWe have no evidence that this vulnerability has been exploited.\n\n---\n\n### Affected Scope\n\n- All apps (public and private) that use a `registrationUrl` in their app manifest and rely on the legacy HMAC‑based registration flow.\n- Both on‑premise and cloud installations are affected until updated to a fixed Shopware version or protected by the latest Shopware Security Plugin.\n- Shopware services and first‑party apps using the affected SDKs were reviewed and patched.\nThe vulnerability does not affect core storefront or administration authentication; it is limited to the app system’s registration and re‑registration mechanism.\n\n---\n\n### Impact\n\nIn a successful attack, an attacker who already knows certain app‑side secrets could:\n- Re‑register an existing app installation with a domain under their control.\n- Intercept App → Shop communication and cause data tampering (“data poisoning”).\n- Obtain API integration credentials of the shop with the permissions granted to the app.\nShop owners and app manufacturers would typically observe this as “app malfunction” rather than an obvious security issue, which increases the need for hardening.\n\n---\n\n### Root Cause\n\nThe legacy app registration flow used HMAC‑based authentication without sufficiently binding a shop installation to its original domain. During re‑registration, the `shop-url` could be updated without proving control over the previously registered shop or domain. This made targeted hijacking of app communication feasible if an attacker possessed the relevant app‑side secret.\n\n---\n\n### Fix\n\nWe have hardened the app registration and re‑registration process:\n- **Dual signature requirement:** Re‑registration now requires both the app secret and the existing shop secret to be presented and validated.\n- **Mandatory secret rotation:** On successful re‑registration, a new shop secret is generated and verified; the previous secret is invalidated after a short grace period.\n- **Stricter validation:** Shopware only accepts updated shop URLs and secrets once the full confirmation flow has completed successfully.\n- **Improved logging and monitoring:** All re‑registrations are now logged with additional metadata to help detect abuse patterns.\nThese changes are delivered via:\n- Updated Shopware core releases (6.6.x, 6.7.x), and\n- Updated versions of the Shopware Security Plugin for supported older versions,\n- Updated official SDKs (e.g. PHP and JavaScript app SDKs).\n---\n\n### Required Action\n\n#### For Merchants / Shop Operators\n\n1. **Update Shopware**\n   - Upgrade to the latest Shopware 6.6.x / 6.7.x release that includes this fix, **or**\n   - Install/update the latest Shopware Security Plugin version providing the hotfix for your Shopware 6 installation.\n2. **Update apps**\n   - Ensure all installed apps are updated to the latest versions provided by their manufacturers.\n   - If you suspect compromised keys or observe unexpected app behaviour, re‑install the affected app or trigger key rotation as documented by the app vendor.\n\n#### For App Manufacturers / Partners\n\n1. **Update SDKs / implementations**\n   - Update to the latest Shopware app SDKs (PHP / JS) or apply the documented changes if you maintain a custom implementation of the registration flow.\n   - Validate **both** `shopware-app-signature` and `shopware-shop-signature` for re‑registration requests.\n   - Always generate and store a new shop secret on re‑registration and only switch to it after a successful confirmation.\n2. **Review your apps**\n   - Verify that your app does not blindly accept changed `shop-url` values without validating signatures.\n   - Check any logic that exposes data or functionality based solely on HMAC signatures from shops and ensure it aligns with the hardened registration model.\n3. **Test your implementation**\n   - Use the updated tooling and guidance provided in your Shopware Account / partner channels to validate that your registration flow complies with the new requirements.",
  "severity" : [ {
    "type" : "CVSS_V3",
    "score" : "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:L"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Packagist",
      "name" : "shopware/platform"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "6.7.0.0"
      }, {
        "fixed" : "6.7.8.1"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Packagist",
      "name" : "shopware/platform"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "6.6.10.15"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Packagist",
      "name" : "shopware/core"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "6.7.0.0"
      }, {
        "fixed" : "6.7.8.1"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Packagist",
      "name" : "shopware/core"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "6.6.10.15"
      } ]
    } ]
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/shopware/shopware/security/advisories/GHSA-c4p7-rwrg-pf6p"
  }, {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2026-31889"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/shopware/shopware"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-290" ],
    "severity" : "HIGH",
    "github_reviewed" : true,
    "github_reviewed_at" : "2026-03-11T19:24:06Z",
    "nvd_published_at" : "2026-03-11T20:16:15Z"
  }
}