CVE-2020-15269
mediumpriority · track · 36EPSS 0.011 · 65 %ileEUUSEPSS · scored 2026-10-28
In Spree before versions 3.7.11, 4.0.4, or 4.1.11, expired user tokens could be used to access Storefront API v2 endpoints. The issue is patched in versions 3.7.11, 4.0.4 and 4.1.11. A workaround without upgrading is described in the linked advisory.
cvss
Technical severity, 0–10. One row per scoring source.
base score 0–10 · higher = more severe · hover a vector to decode⚠ sources disagree · medium–critical · 6.4–9.1
weaknesses
The CWE weakness classes this flaw belongs to.
affected products (9)
Products and version ranges known to be affected.
advisories (1)
Vendor and ecosystem advisories describing this.
- GHSA-f8cm-364f-q9qhEnsure that doorkeeper_token is valid when authenticating requests in API v2 calls2020-10-20ghsa · osvUS
### Impact The perpetrator who previously obtained an old expired user token could use it to access Storefront API v2 endpoints. ### Patches Please upgrade to 3.7.11, 4.0.4, or 4.1.11 depending on your used Spree version. ### Workarounds In your project directory create a decorator file `app/controllers/spree/api/v2/base_controller_decotatror.rb` with contents: ```ruby module Spree module Api module V2 module BaseControllerDecorator private def spree_current_user return nil unless doorkeeper_token return @spree_current_user if @spree_current_user doorkeeper_authorize! @spree_current_user ||= ::Spree.user_class.find_by(id: doorkeeper_token.resource_owner_id) end end end end Spree::Api::V2::BaseController.prepend(Spree::Api::V2::BaseControllerDecorator) ``` ### For more information If you have any questions or comments about this advisory: * Email us at [security@spreecommerce.org](mailto:security@spreecommerce.org)
also known as (3)
Other names and identifiers for this entity.
sources
Which sources assert this record, and when.
references (7)
External citations — patches, advisories, analysis.
- https://github.com/spree/spree/commit/e43643abfe51f54bd9208dd02298b366e9b9a847cnnvd
- https://github.com/spree/spree/security/advisories/GHSA-f8cm-364f-q9qhcnnvd
- https://nvd.nist.gov/vuln/detail/CVE-2020-15269cnnvd
- https://github.com/spree/spree/commit/e43643abfe51f54bd9208dd02298b366e9b9a847enisa_euvd
- https://github.com/spree/spree/security/advisories/GHSA-f8cm-364f-q9qhenisa_euvd
- https://github.com/spree/spree/commit/e43643abfe51f54bd9208dd02298b366e9b9a847PatchThird Party Advisorynvd
- https://github.com/spree/spree/security/advisories/GHSA-f8cm-364f-q9qhThird Party Advisorynvd
Attackers weaponise vulnerabilities like this against internet-exposed services. See what is exposed on your perimeter with a free passive scan.
Free scan