Description
Spree is an open source e-commerce solution built with Ruby on Rails. From 5.4.0 until 5.4.4 and 5.5.4, PATCH /api/v3/store/carts/:id/associate in Spree::Api::V3::Store::CartsController#associate uses find_cart_for_association to locate a cart by prefixed_id but does not require a cart token or otherwise verify possession of the selected guest cart. An authenticated customer can derive reversible prefixed cart IDs, associate an eligible guest cart with the attacker's account, and receive billing and shipping address data from the cart. Exploitation requires a guest cart with address data on a store that does not require login for checkout, and reassignment can also disrupt the guest's in-progress cart. This issue is fixed in versions 5.4.4 and 5.5.4.
Published: 2026-09-22
Score: 7.1 High
EPSS: n/a
KEV: No
Impact: Unauthorized cart association and personal data disclosure
Action: Immediate patch
AI Analysis

Impact

Spree is an open‑source e‑commerce platform that mistakenly allowed authorized users to associate any guest cart to their own account. By exploiting the PATCH /api/v3/store/carts/:id/associate endpoint, a logged‑in customer can generate the reversible prefixed cart identifier, locate an existing guest cart, and link it to their account without possessing the guest cart token. The attacker can then retrieve billing and shipping details stored in that cart and potentially delete or overwrite the guest’s in‑progress order.

Affected Systems

Spree’s vulnerability affects versions 5.4.0 through 5.4.4 and 5.5.4 of the Open‑Source e‑commerce software. The fix was introduced in release 5.4.4 and is also present in 5.5.4. All installations of these affected builds that expose the checkout API for guest users without login are susceptible.

Risk and Exploitability

The CVSS score of 7.1 indicates a high severity flaw. Because the exploit requires an authenticated user with the ability to predict or enumerate cart IDs, the attack window is limited to sites allowing guest carts with address data. The EPSS score is not available and the vulnerability has not been listed as a known exploited vulnerability by CISA, suggesting a low immediate threat vector. Nevertheless, the potential for personal data exposure and disruption of guest shopping sessions warrants timely mitigation.

Generated by OpenCVE AI on September 22, 2026 at 21:36 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update Spree to version 5.4.4 or later, where the fix is included.
  • Disable guest checkout or enforce possession of a valid cart token before association until the patch can be applied.
  • Implement an additional check that validates the cart token or ownership before performing the association operation.

Generated by OpenCVE AI on September 22, 2026 at 21:36 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-4825-p4xm-pcf2 Spree: Broken Access Control in `PATCH /api/v3/store/carts/:id/associate` (IDOR)
History

Tue, 22 Sep 2026 22:00:00 +0000

Type Values Removed Values Added
First Time appeared Spree
Spree spree
Vendors & Products Spree
Spree spree

Tue, 22 Sep 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 22 Sep 2026 19:00:00 +0000

Type Values Removed Values Added
Description Spree is an open source e-commerce solution built with Ruby on Rails. From 5.4.0 until 5.4.4 and 5.5.4, PATCH /api/v3/store/carts/:id/associate in Spree::Api::V3::Store::CartsController#associate uses find_cart_for_association to locate a cart by prefixed_id but does not require a cart token or otherwise verify possession of the selected guest cart. An authenticated customer can derive reversible prefixed cart IDs, associate an eligible guest cart with the attacker's account, and receive billing and shipping address data from the cart. Exploitation requires a guest cart with address data on a store that does not require login for checkout, and reassignment can also disrupt the guest's in-progress cart. This issue is fixed in versions 5.4.4 and 5.5.4.
Title Spree: Broken Access Control in `PATCH /api/v3/store/carts/:id/associate` (IDOR)
Weaknesses CWE-639
References
Metrics cvssV3_1

{'score': 7.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-22T19:20:22.173Z

Reserved: 2026-09-21T17:25:42.290Z

Link: CVE-2026-94462

cve-icon Vulnrichment

Updated: 2026-09-22T19:20:17.923Z

cve-icon NVD

Status : Received

Published: 2026-09-22T19:16:59.497

Modified: 2026-09-22T20:17:13.130

Link: CVE-2026-94462

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-22T21:45:06Z

Weaknesses
  • CWE-639

    Authorization Bypass Through User-Controlled Key