Strapi Password Length Validation Vulnerability in @strapi/core Package

Vulnerability

A vulnerability exists in the Strapi @strapi/core package, prior to version 5.10.3, where the password hashing process using bcryptjs does not limit password length. Bcryptjs truncates passwords longer than 72 bytes, leading to potential authentication bypass and performance issues. Users can create accounts with overly long passwords, but only the first 72 bytes are used for authentication, which could mislead users about password requirements. Additionally, excessively long passwords can slow down server performance.

Impact

This vulnerability can cause authentication bypass, allowing users to log in with truncated password hashes, and may degrade server performance due to processing long passwords.

Reproduction

To reproduce this vulnerability, create an admin user with a password longer than 72 characters. Then, log in using only the first 72 characters of the password. Authentication will succeed, demonstrating the issue.

Remediation

Users should update to Strapi version 5.10.3 or later, where this vulnerability is fixed.

Added: Oct 16, 2025, 5:22 PM
Updated: Oct 16, 2025, 5:22 PM

Vulnerability Rating

Custom Algorithm
spread
5.0
impact
5.0
exploitability
6.6
remediation
7.7
relevance
0.8
threat
6.4
urgency
2.9
incentive
1.7

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.