CVE-2024-34065: Strapi users-permissions open redirect and token leakage

CVE-2024-34065 · Severity: low · CVSS 3.1 · Published 2024-06-12

Strapi's authentication plugin is vulnerable to an open redirect attack combined with session token exposure, allowing unauthenticated attackers to steal third-party authentication tokens and bypass authentication. By tricking a user to click a malicious link, an attacker can redirect them to an attacker-controlled domain while intercepting authentication tokens, potentially gaining unauthorized access to Strapi applications that rely on SSO providers.

Technologies: @strapi/plugin-users-permissions (npm). Vendors: npm, Strapi.

Quick answers

Is CVE-2024-34065 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2024-34065 being exploited in the wild.
How severe is CVE-2024-34065?
Low severity, with a CVSS score of 3.1, published 12 June 2024.
Which products and versions are affected?
@strapi/plugin-users-permissions (npm) SEMVER:introduced=0,fixed=4.24.2; Strapi Users-Permissions <= 4.24.1.
Is there a fix for CVE-2024-34065?
Yes. @strapi/plugin-users-permissions (npm): upgrade to 4.24.2 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2024-34065 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2024-34065?
Check whether you run @strapi/plugin-users-permissions (npm) or Strapi Users-Permissions at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • @strapi/plugin-users-permissions (npm): upgrade to 4.24.2 or later
    npm install @strapi/plugin-users-permissions@4.24.2

Technical details

The vulnerability consists of two chained flaws in @strapi/plugin-users-permissions: (1) an open redirect in the OAuth callback handler that fails to validate the callback URL parameter, allowing redirection to arbitrary external domains; (2) session authentication tokens being transmitted as URL query parameters, making them capturable by an attacker's domain. An attacker constructs a malicious link to /api/connect/{provider}?callback=https://attacker.com/, and when a user clicks it, the application redirects to the provider's authentication flow and then to the attacker's domain with the SSO token in the URL. The attack requires user interaction (a single click) but does not require prior authentication. Patches are available in version 4.24.2 and later.

Affected products

  • Strapi users-permissions <= 4.24.1

Identifiers

  • CVE-2024-34065
  • GHSA-wrvh-rcmr-9qfc

Timeline

  • 2024-06-12: disclosed: Advisory published
  • 2024-06-12: patched: Fixed in version 4.24.2

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.