CVE-2025-25298
Unknown Unknown - Not Provided
BaseFortify

Publication date: 2025-10-16

Last updated on: 2025-11-25

Assigner: GitHub, Inc.

Description
Strapi is an open source headless CMS. The @strapi/core package before version 5.10.3 does not enforce a maximum password length when using bcryptjs for password hashing. Bcryptjs ignores any bytes beyond 72, so passwords longer than 72 bytes are silently truncated. A user can create an account with a password exceeding 72 bytes and later authenticate with only the first 72 bytes. This reduces the effective entropy of overlong passwords and may mislead users who believe characters beyond 72 bytes are required, creating a low likelihood of unintended authentication if an attacker can obtain or guess the truncated portion. Long over‑length inputs can also impose unnecessary processing overhead. The issue is fixed in version 5.10.3. No known workarounds exist.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2025-10-16
Last Modified
2025-11-25
Generated
2026-05-06
AI Q&A
2025-10-16
EPSS Evaluated
2026-05-05
NVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
strapi strapi to 5.10.3 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-261 Obscuring a password with a trivial encoding does not protect the password.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

This vulnerability in Strapi's @strapi/core package before version 5.10.3 involves the lack of enforcement of a maximum password length when using bcryptjs for password hashing. Bcryptjs truncates passwords longer than 72 bytes silently, meaning only the first 72 bytes are used for authentication. Users can create accounts with passwords longer than 72 bytes but will be authenticated using only the first 72 bytes, reducing the effective entropy of the password and potentially misleading users about the actual password length required. This can lead to a lower likelihood of unintended authentication if an attacker guesses or obtains the truncated portion. Additionally, very long passwords can cause unnecessary processing overhead. The issue is fixed in version 5.10.3.


How can this vulnerability impact me? :

The vulnerability reduces the effective strength of passwords longer than 72 bytes by truncating them silently, which may mislead users into thinking their entire password is used for authentication when only the first 72 bytes are. This reduction in entropy can make it easier for attackers to guess or obtain valid credentials if they focus on the truncated portion. It also can cause unnecessary processing overhead due to handling overly long passwords.


What immediate steps should I take to mitigate this vulnerability?

Upgrade the @strapi/core package to version 5.10.3 or later, as this version fixes the vulnerability by enforcing a maximum password length when using bcryptjs for password hashing. No known workarounds exist.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart