Security advisory
Spree is a complete open source e-commerce solution built with Ruby on Rails. In Spree from version 3.7 and before versions 3.7.13, 4.0.5, and 4.1.12, there is an authorization bypass vulnerability. The perpetrator could query the API v2 Order Status endpoint with an empty string passed as an Order token. This is patched in versions 3.7.11, 4.0.4, or 4.1.11 depending on your used Spree version. Users of Spree < 3.7 are not affected.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2020-26223
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 11:07 UTC · Revision 1
Source evidence
Spree is a complete open source e-commerce solution built with Ruby on Rails. In Spree from version 3.7 and before versions 3.7.13, 4.0.5, and 4.1.12, there is an authorization bypass vulnerability. The perpetrator could query the API v2 Order Status endpoint with an empty string passed as an Order token. This is patched in versions 3.7.11, 4.0.4, or 4.1.11 depending on your used Spree version. Users of Spree < 3.7 are not affected.
osv:CVE-2020-26223
Complete source record
{
"id": "27b998068ac1dfa337bc4e8360993fe011ee0c707aa780efc3576b7011d22693",
"url": "https://osv.dev/vulnerability/CVE-2020-26223",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2020-26223",
"summary": "Spree is a complete open source e-commerce solution built with Ruby on Rails. In Spree from version 3.7 and before versions 3.7.13, 4.0.5, and 4.1.12, there is an authorization bypass vulnerability. The perpetrator could query the API v2 Order Status endpoint with an empty string passed as an Order token. This is patched in versions 3.7.11, 4.0.4, or 4.1.11 depending on your used Spree version. Users of Spree < 3.7 are not affected.",
"evidence": "osv:CVE-2020-26223",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2020-26223",
"aliases": [
"CVE-2020-26223",
"GHSA-m2jr-hmc3-qmpr"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/spree/spree",
"type": "GIT",
"events": [
{
"introduced": "59a68df9cf3435f249062bbac201bc98d2467b94"
},
{
"fixed": "8a6550772383bc484f48f606c3c96e25181b6dbe"
},
{
"introduced": "76e95978fa06e81ffc8abd947f83109a5958eb5f"
},
{
"fixed": "9054299644fe97eb803df7cfc753cb747197fd14"
},
{
"introduced": "5555b0417c749a72fa485301068fb149fae09cfb"
},
{
"fixed": "9cf73a6b256f41ad30c9ef50f3e85d37acfb3220"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:spreecommerce:spree:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "3.7.0"
},
{
"fixed": "3.7.13"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:spreecommerce:spree:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "4.0.0"
},
{
"fixed": "4.0.5"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:spreecommerce:spree:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "4.1.0"
},
{
"fixed": "4.1.12"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"v4.1.11",
"v4.0.4",
"v3.7.12",
"v3.7.11",
"v3.7.10",
"v4.0.3",
"v4.1.10",
"v4.1.9",
"v4.1.8",
"v4.1.7",
"v4.1.6",
"v4.1.5",
"v4.1.4",
"v4.1.3",
"v4.1.2",
"v4.1.1",
"v4.1.0",
"v4.0.2",
"v3.7.9",
"v3.7.8",
"v4.0.1",
"v4.0.0",
"v3.7.6",
"v3.7.5",
"v3.7.4",
"v3.7.3",
"v3.7.2",
"v3.7.1",
"v3.7.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2020-26223.json"
}
}
],
"modified": "2026-10-20T10:52:55.902660765Z",
"provider": "osv",
"references": [
"https://github.com/spree/spree/security/advisories/GHSA-m2jr-hmc3-qmpr",
"https://guides.spreecommerce.org/api/v2/storefront#tag/Order-Status",
"https://github.com/spree/spree/pull/10573"
],
"provider_metadata": {}
},
"related_cves": [
{
"value": "CVE-2020-26223",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 384049,
"published_at": "2020-11-13T18:15:12.777+00:00"
}