CVE-2023-46233

Source
https://nvd.nist.gov/vuln/detail/CVE-2023-46233
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2023-46233.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2023-46233
Aliases
Downstream
Published
2023-10-25T20:49:31Z
Modified
2025-10-20T20:19:17.792230Z
Severity
  • 9.1 (Critical) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N CVSS Calculator
Summary
crypto-js PBKDF2 1,000 times weaker than specified in 1993 and 1.3M times weaker than current standard
Details

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.

Database specific
{
    "cwe_ids": [
        "CWE-328",
        "CWE-916"
    ]
}
References

Affected packages

Git / github.com/brix/crypto-js

Affected ranges

Type
GIT
Repo
https://github.com/brix/crypto-js
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed

Affected versions

3.*

3.1.3
3.1.4
3.1.5
3.1.6
3.1.7
3.1.8
3.1.9
3.1.9-1
3.2.0
3.2.1
3.3.0

4.*

4.0.0
4.1.0
4.1.1

release-3.*

release-3.1.2
release-3.1.2-1
release-3.1.2-2
release-3.1.2-3
release-3.1.2-4
release-3.1.2-5