CVE-2021-41275
CVSS V2 Medium 6.8
CVSS V3 High 8.8
Description
spree_auth_devise is an open source library which provides authentication and authorization services for use with the Spree storefront framework by using an underlying Devise authentication framework. In affected versions spree_auth_devise is subject to a CSRF vulnerability that allows user account takeover. All applications using any version of the frontend component of spree_auth_devise are affected if protect_from_forgery method is both: Executed whether as: A before_action callback (the default). A prepend_before_action (option prepend: true given) before the :load_object hook in Spree::UserController (most likely order to find). Configured to use :null_session or :reset_session strategies (:null_session is the default in case the no strategy is given, but rails --new generated skeleton use :exception). Users are advised to update their spree_auth_devise gem. For users unable to update it may be possible to change your strategy to :exception. Please see the linked GHSA for more workaround details. ### Impact CSRF vulnerability that allows user account takeover. All applications using any version of the frontend component of `spree_auth_devise` are affected if `protect_from_forgery` method is both: * Executed whether as: * A before_action callback (the default) * A prepend_before_action (option prepend: true given) before the :load_object hook in Spree::UserController (most likely order to find). * Configured to use :null_session or :reset_session strategies (:null_session is the default in case the no strategy is given, but rails --new generated skeleton use :exception). That means that applications that haven't been configured differently from what it's generated with Rails aren't affected. Thanks @waiting-for-dev for reporting and providing a patch ? ### Patches Spree 4.3 users should update to spree_auth_devise 4.4.1 Spree 4.2 users should update to spree_auth_devise 4.2.1 ### Workarounds If possible, change your strategy to :exception: ```ruby class ApplicationController < ActionController::Base protect_from_forgery with: :exception end ``` Add the following to`config/application.rb `to at least run the `:exception` strategy on the affected controller: ```ruby config.after_initialize do Spree::UsersController.protect_from_forgery with: :exception end ``` ### References https://github.com/solidusio/solidus_auth_devise/security/advisories/GHSA-xm34-v85h-9pg2
Overview
- CVE ID
- CVE-2021-41275
- Assigner
- security-advisories@github.com
- Vulnerability Status
- Analyzed
- Published Version
- 2021-11-17T20:15:10
- Last Modified Date
- 2023-03-01T18:58:54
Weakness Enumerations
CPE Configuration (Product)
CPE | Vulnerable | Operator | Version Start | Version End |
---|---|---|---|---|
cpe:2.3:a:spreecommerce:spree_auth_devise:*:*:*:*:*:ruby:*:* | 1 | OR | 4.0.1 | |
cpe:2.3:a:spreecommerce:spree_auth_devise:*:*:*:*:*:ruby:*:* | 1 | OR | 4.3.0 | 4.4.1 |
cpe:2.3:a:spreecommerce:spree_auth_devise:4.1.0:-:*:*:*:ruby:*:* | 1 | OR | ||
cpe:2.3:a:spreecommerce:spree_auth_devise:4.1.0:rc1:*:*:*:ruby:*:* | 1 | OR | ||
cpe:2.3:a:spreecommerce:spree_auth_devise:4.2.0:*:*:*:*:ruby:*:* | 1 | OR |
CVSS Version 2
- Version
- 2.0
- Vector String
- AV:N/AC:M/Au:N/C:P/I:P/A:P
- Access Vector
- NETWORK
- Access Compatibility
- MEDIUM
- Authentication
- NONE
- Confidentiality Impact
- PARTIAL
- Integrity Impact
- PARTIAL
- Availability Impact
- PARTIAL
- Base Score
- 6.8
- Severity
- MEDIUM
- Exploitability Score
- 8.6
- Impact Score
- 6.4
CVSS Version 3
- Version
- 3.1
- Vector String
- CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
- Attack Vector
- NETWORK
- Attack Compatibility
- LOW
- Privileges Required
- NONE
- User Interaction
- REQUIRED
- Scope
- UNCHANGED
- Confidentiality Impact
- HIGH
- Availability Impact
- HIGH
- Base Score
- 8.8
- Base Severity
- HIGH
- Exploitability Score
- 2.8
- Impact Score
- 5.9
References
Reference URL | Reference Tags |
---|---|
https://github.com/spree/spree_auth_devise/commit/adf6ed4cd94d66091776b5febd4ff3767362de63 | Patch Third Party Advisory |
https://github.com/spree/spree_auth_devise/security/advisories/GHSA-26xx-m4q2-xhq8 | Third Party Advisory |
Sources
Source Name | Source URL |
---|---|
NIST | https://nvd.nist.gov/vuln/detail/CVE-2021-41275 |
MITRE | https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-41275 |
History
Created | Old Value | New Value | Data Type | Notes |
---|---|---|---|---|
2022-05-10 06:45:03 | Added to TrackCVE | |||
2022-12-05 14:46:46 | 2021-11-17T20:15Z | 2021-11-17T20:15:10 | CVE Published Date | updated |
2022-12-05 14:46:46 | 2022-09-10T02:34:40 | CVE Modified Date | updated | |
2022-12-05 14:46:46 | Analyzed | Vulnerability Status | updated | |
2023-01-25 02:11:53 | 2023-01-25T01:58:12 | CVE Modified Date | updated | |
2023-01-25 02:11:53 | Analyzed | Modified | Vulnerability Status | updated |
2023-01-26 12:12:34 | Modified | Undergoing Analysis | Vulnerability Status | updated |
2023-03-01 20:11:53 | 2023-03-01T18:58:54 | CVE Modified Date | updated | |
2023-03-01 20:11:53 | Undergoing Analysis | Analyzed | Vulnerability Status | updated |