PT-2026-102444
CVE-2026-102414
·
Published
2026-09-29
·
Updated
2026-10-06
Description by
CVSS 4.0
6.3
MediumMetricsAV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Name of the Vulnerable Software and Affected Versions
pbkdf2 versions prior to 3.1.7
Description
The JavaScript fallback in
lib/sync.js re-hashes passwords that exceed the digest's block size (64 bytes, or 128 bytes for sha384 and sha512) during every iteration. This occurs because the password is passed to HMAC as the key on each iteration, and HMAC hashes such keys in full every time. This results in a computational cost of O(iterations × password length), which can lead to the event loop being blocked when processing long passwords. This fallback is triggered by pbkdf2Sync() and pbkdf2() on Bun versions 1.0.0 through 1.1.34 and 1.2.6 and later, Deno 2.9.0 and later, and Node.js versions prior to 0.12, as well as when lib/sync.js is imported directly.Recommendations
Update to a version later than 3.1.6.
Enforce a reasonable maximum password length to mitigate the risk of event loop blocking.
Exploitability
Exploit
Fix
Impacts
Vendors
Affected products
Found an issue in the description? Have something to add? Feel free to write us 👾