# CVE-2023-22893: Strapi OAuth token verification bypass in AWS Cognito

Source: https://junglewise.ai/threats/cve-2023-22893-strapi-oauth-token-verification-bypass-in-aws-cognito  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2023-04-19. Updated: 2026-09-25  
License: CC BY 4.0 with a link back

CVE-2023-22893 · Severity: info · CVSS 6.5 · Published 2023-04-19

Strapi is an open-source headless CMS widely used to manage and serve content to applications. When Strapi is configured to use AWS Cognito for user authentication, the system fails to validate the cryptographic signatures of authentication tokens returned by Cognito. An attacker can craft forged tokens that claim to be any user without needing legitimate credentials, leading to unauthorized account takeover and access to sensitive content or administrative functions.

Technologies: [@strapi/plugin-users-permissions (npm)](https://junglewise.ai/threats/technologies/strapi-plugin-users-permissions), [Strapi Plugin-Users-Permissions](https://junglewise.ai/threats/technologies/plugin-users-permissions). Vendors: [npm](https://junglewise.ai/threats/vendors/npm), [Strapi](https://junglewise.ai/threats/vendors/strapi).

## Quick answers

**Is CVE-2023-22893 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2023-22893 being exploited in the wild.

**How severe is CVE-2023-22893?** Informational severity, with a CVSS score of 6.5, published 19 April 2023.

**Which products and versions are affected?** @strapi/plugin-users-permissions (npm) SEMVER:introduced=3.2.1,fixed=4.6.0; Strapi Plugin-Users-Permissions 3.2.1 through 4.5.9.

**Is there a fix for CVE-2023-22893?** Yes. @strapi/plugin-users-permissions (npm): upgrade to 4.6.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2023-22893 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2023-22893?** Check whether you run @strapi/plugin-users-permissions (npm) or Strapi Plugin-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.6.0 or later

  ```sh
  npm install @strapi/plugin-users-permissions@4.6.0
  ```


## Technical details

The vulnerability is an authentication bypass in the OAuth/OIDC token validation logic within Strapi's users-permissions plugin, specifically when AWS Cognito is used as the identity provider. The affected code in the providers-registry.js service failed to verify the JWT signature of ID tokens returned during the OAuth flow, permitting tokens signed with the 'None' algorithm (an RFC-defined but dangerous algorithm option) to be accepted as valid. An unauthenticated remote attacker can construct a malicious JWT claiming any user identity and submit it during the OAuth callback phase to gain authenticated access without valid credentials. The fix, released in version 4.6.0, implements proper JWT signature verification using AWS's published key sets (JWKS). Patches are available in commits 46f8f98, 8bbbd73, and eeab43b on the Strapi repository.

## Affected products

- Strapi @strapi/plugin-users-permissions 3.2.1 through 4.5.9

## Identifiers

- CVE-2023-22893
- GHSA-583x-23h9-f5w7

## Timeline

- 2023-04-19: disclosed
- 2023-04-24: patched: Fix released in Strapi 4.6.0

## References

- [https://github.com/strapi/strapi/commit/46f8f98378338f18b5c6139d0157a8f71bf4de83](https://github.com/strapi/strapi/commit/46f8f98378338f18b5c6139d0157a8f71bf4de83)
- [https://github.com/strapi/strapi/commit/8bbbd7383a20bb7cb163c8b462baffee559e994f](https://github.com/strapi/strapi/commit/8bbbd7383a20bb7cb163c8b462baffee559e994f)
- [https://github.com/strapi/strapi/commit/eeab43b57707d7ef275076d27be6eabc72bd71a7](https://github.com/strapi/strapi/commit/eeab43b57707d7ef275076d27be6eabc72bd71a7)
- [https://github.com/strapi/strapi](https://github.com/strapi/strapi)
- [https://github.com/strapi/strapi/blob/v4.5.6/packages/plugins/users-permissions/server/services/providers-registry.js](https://github.com/strapi/strapi/blob/v4.5.6/packages/plugins/users-permissions/server/services/providers-registry.js)
- [https://github.com/strapi/strapi/releases](https://github.com/strapi/strapi/releases)

## Related threats

- [Strapi insufficient session invalidation during password reset](https://junglewise.ai/threats/cve-2026-22706-strapi-insufficient-session-invalidation-during-password-reset)
- [Strapi users-permissions plugin rate limit bypass in auth routes](https://junglewise.ai/threats/cve-2025-64526-strapi-users-permissions-plugin-rate-limit-bypass-in-auth-routes)
- [Strapi users-permissions open redirect and token leakage](https://junglewise.ai/threats/cve-2024-34065-strapi-users-permissions-open-redirect-and-token-leakage)
- [Strapi authorization bypass in user registration API](https://junglewise.ai/threats/cve-2023-39345-strapi-authorization-bypass-in-user-registration-api)
- [Strapi rate limit bypass in admin login](https://junglewise.ai/threats/cve-2023-38507-strapi-rate-limit-bypass-in-admin-login)
