High, CVSS 7.5RubyGemsPublished
Spree API has Unauthenticated IDOR - Guest Address
CVE-2026-22589 · GHSA-3ghg-3787-w2xr
- Affected
- RubyGems spree_core >= 4.0.0, < 4.10.2; >= 5.0.0, < 5.0.7; >= 5.1.0, < 5.1.9; >= 5.2.0, < 5.2.5
- Fixed in
- 5.2.55.1.94.10.25.0.7· Vendor fix available
- Issue
- An Unauthenticated Insecure Direct Object Reference (IDOR) vulnerability was identified that allows an unauthenticated attacker to access guest address information without supplying valid credentials or session cookies. Details During testing, it was observed that all guest users can make an unauthenticated request to retrieve address data belonging to other guest users by manipulating object identifiers. The attacker would need to know the storefront URL structure to perform this attack (which can be learnt after creating a registered user account). Affected Component(s) Address Edit endpoint: /addresses/{addressId}/edit Root Cause - Faulty authorization check in CanCanCan Ability class: the user object in Spree::Ability class for guest users is a Spree.userclass.new object. Addresses endpoint to access it is part of the spreestorefront gem. Headless builds using APIs are not affected, as the Addresses endpoint there is only for registered users, and records are scoped to…
Recommended action: Upgrade to 5.2.5, 5.1.9, 5.0.7 or 4.10.2 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.