crypto-js PBKDF2 1,000 times weaker than specified in 1993 and 1.3M times weaker than current standard
Summary
| CVE | CVE-2023-46233 |
|---|---|
| State | PUBLISHED |
| Assigner | GitHub_M |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2023-10-25 21:15:10 UTC |
| Updated | 2026-06-23 18:17:34 UTC |
| Description | crypto-js is a JavaScript library of crypto standards. Prior to version 4.2.0, crypto-js PBKDF2 is 1,000 times weaker than originally specified in 1993, and at least 1,300,000 times weaker than current industry standard. This is because it both defaults to SHA1, a cryptographic hash algorithm considered insecure since at least 2005, and defaults to one single iteration, a 'strength' or 'difficulty' value specified at 1,000 when specified in 1993. PBKDF2 relies on iteration count as a countermeasure to preimage and collision attacks. If used to protect passwords, the impact is high. If used to generate signatures, the impact is high. Version 4.2.0 contains a patch for this issue. As a workaround, configure crypto-js to use SHA256 with at least 250,000 iterations. |
Risk And Classification
Primary CVSS: v3.1 9.1 CRITICAL from [email protected]
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
EPSS: 0.006350000 probability, percentile 0.456470000 (date 2026-06-23)
Problem Types: CWE-328 | CWE-916 | CWE-327 | CWE-328 CWE-328: Use of Weak Hash | CWE-916 CWE-916: Use of Password Hash With Insufficient Computational Effort
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.1 | [email protected] | Primary | 9.1 | CRITICAL | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| 3.1 | [email protected] | Secondary | 9.1 | CRITICAL | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| 3.1 | CNA | DECLARED | 9.1 | CRITICAL | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
CVSS v3.1 Breakdown
Attack Vector
NetworkAttack Complexity
LowPrivileges Required
NoneUser Interaction
NoneScope
UnchangedConfidentiality
HighIntegrity
HighAvailability
NoneCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
NVD Known Affected Configurations (CPE 2.3)
| Type | Vendor | Product | Version | Update | Edition | Language |
|---|---|---|---|---|---|---|
| Application | Crypto-js Project | Crypto-js | All | All | All | All |
Vendor Declared Affected Products
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| Change default hash algorithm and iteration's for PBKDF2 to prevent w… · brix/crypto-js@421dd53 · GitHub | af854a3a-2127-422b-91ae-364da2661108 | github.com | Patch |
| lists.debian.org/debian-lts-announce/2023/11/msg00025.html | af854a3a-2127-422b-91ae-364da2661108 | lists.debian.org | |
| crypto-js PBKDF2 1,000 times weaker than specified in 1993 and 1.3M times weaker than current standard · Advisory · brix/crypto-js · GitHub | af854a3a-2127-422b-91ae-364da2661108 | github.com | Vendor Advisory |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
No vendor comments have been submitted for this CVE.