Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
🐘 Packagist

GHSA-c4p7-rwrg-pf6p

HIGH

Shopware vulnerable to a potential take over of app credentials

Also known asCVE-2026-31889
Published
Mar 11, 2026
Updated
Mar 13, 2026
Affected
4 pkgs
Patched
4 / 4
Exploits
None indexed

EPSS Exploitation Probability

via FIRST.org ↗
0.3%probability of exploitation in next 30 days
Lower Risk18th percentile+0.17%
0.00%0.26%0.51%0.77%0.1%0.1%0.1%0.3%Apr 26Jun 26Jun 26

EPSS (Exploit Prediction Scoring System) is a daily probability model maintained by FIRST.org. It estimates the likelihood a CVE will be exploited in production environments within the next 30 days, derived from real-world threat intelligence signals.

Blast Radius

4 pkgs affected
🐘shopware/platform🐘shopware/platform🐘shopware/core🐘shopware/core

Real-time download stats are indexed for npm and PyPI packages. This vulnerability affects Packagist packages — download data is not available via public APIs for these ecosystems.

Description

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.

Affected Packages

4 total 4 fixed
EcosystemPackageVulnerable rangeFix
🐘Packagistshopware/platform6.7.0.0&&< 6.7.8.16.7.8.1
🐘Packagistshopware/platformall versions6.6.10.15
🐘Packagistshopware/core6.7.0.0&&< 6.7.8.16.7.8.1
🐘Packagistshopware/coreall versions6.6.10.15

Detection & mitigation playbook

Open-source dependency
  1. Detect

    Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for shopware/platform. O3's reachability analysis confirms whether the vulnerable code path is actually invoked in your application, so you act on real exposure instead of every transitive match.

  2. Fix

    Update shopware/platform to 6.7.8.1 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-c4p7-rwrg-pf6p is resolved across your whole dependency graph.

  3. Workarounds

    If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.

  4. How O3 protects you

    O3 pinpoints whether GHSA-c4p7-rwrg-pf6p is reachable in your code and exactly where to fix it, then blocks exploitation in production at runtime until the patched version is deployed.

Tailored to GHSA-c4p7-rwrg-pf6p. Runtime protection reduces exposure until a permanent patch is applied and verified — it complements patching, it doesn't replace it.

Frequently Asked Questions

### 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 regi
O3 Security · Impact-Aware SCA

Is GHSA-c4p7-rwrg-pf6p in your dependencies?

O3 detects GHSA-c4p7-rwrg-pf6p across Packagist dependencies and uses function-level reachability to confirm whether the vulnerable code path is actually reachable — not just present. No false positives.