CVE-2024-31205: Saleor CSRF bypass in refreshToken mutation
Saleor is an e-commerce platform. Starting in version 3.10.0 and prior to versions 3.14.64, 3.15.39, 3.16.39, 3.17.35, 3.18.31, and 3.19.19, an attacker may bypass cross-set request forgery (CSRF) validation when calling refresh token mutation with empty string. When a user provides an empty string in refreshToken mutation, while the token persists in JWTREFRESHTOKENCOOKIENAME cookie, application omits validation against CSRF token and returns valid access token. Versions 3.14.64, 3.15.39, 3.16.39, 3.17.35, 3.18.31, and 3.19.19 contain a patch for the issue. As a workaround, one may replace saleor.graphql.account.mutations.authentication.refreshtoken.py.getrefreshtoken. This will fix the issue, but be aware, that it returns JWTMISSINGTOKEN instead of JWTINVALIDTOKEN.
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2024-31205?
CVE-2024-31205 has been classified as a medium severity vulnerability.
How do I fix CVE-2024-31205?
To fix CVE-2024-31205, upgrade Saleor to version 3.14.64 or newer, specifically 3.15.39, 3.16.39, 3.17.35, 3.18.31, or 3.19.19.
Which versions of Saleor are affected by CVE-2024-31205?
CVE-2024-31205 affects Saleor versions from 3.10.0 to 3.19.18, excluding the patched versions.
What kind of attack does CVE-2024-31205 enable?
CVE-2024-31205 enables attackers to bypass CSRF validation during the refresh token mutation.
When was CVE-2024-31205 disclosed?
CVE-2024-31205 was disclosed in mid-2024.